Tross
Demo dataBook a demo
EZDERM

Generate custom report

Generate a filtered CSV report.

POSThttps://preview.ontross.com/api/integrations/ezderm/generate-custom-report

Appointment report quick start

Date range

start_date is inclusive and end_date is exclusive. To report Sep 9–15, send an end timestamp of Sep 16 at midnight.

All New Patient complaints

Send chief_complaint_names: ["New Patient"]. The API resolves and includes each provider-specific complaint ID; you do not need to collect those IDs from the UI.

Additional filters

Use the full API schema for provider, clinic, payer, appointment-type, status, resource, patient-age, and grouping filters. Any newly introduced EZDerm filter can be supplied through additional_filter_information.

Request Fields
input.filters
object
required
Date range and appointment filters
input.filters.start_date
string
required
Inclusive start timestamp
Example
"2026-09-09T00:00:00+05:30"
input.filters.end_date
string
required
Exclusive end timestamp
Example
"2026-09-16T00:00:00+05:30"
input.filters.time_zone_id
string
required
IANA time-zone ID
Example
"Asia/Calcutta"
input.filters.provider_type
string
Provider relationship used for the report
Default
"ATTENDING_PROVIDER"
input.filters.chief_complaint_names
array
Names to resolve for every relevant provider
Example
["New Patient"]
input.columns
array
required
CSV columns, in output order
Example
["patientName","phone","apptTime","apptDate","provider"]
input.report_type
string
EZDerm report type
Default
"APPOINTMENTS"
auth_id
string
required
Saved EZDerm authentication ID
Output Fields
report_type
string
Which EZDerm report to run, APPOINTMENTS when omitted.
Example
"APPOINTMENTS"
columns
array
CSV column keys to return, named the way EZDerm names them.
csv_base64
string
The report CSV, base64 encoded, so decode before reading.
Example
"YXBwdERhdGUKMjAyNi0wOC0wNgo="
Code
curl --request POST \
  --url https://preview.ontross.com/api/integrations/ezderm/generate-custom-report \
  --header 'X-API-Key: REPLACE_KEY_VALUE' \
  --header 'content-type: application/json' \
  --data '{"auth_id":"auth_uuid_here","input":{"report_type":"APPOINTMENTS","filters":{"start_date":"2026-09-09T00:00:00+05:30","end_date":"2026-09-16T00:00:00+05:30","time_zone_id":"Asia/Calcutta","provider_type":"ATTENDING_PROVIDER","chief_complaint_names":["New Patient"]},"columns":["patientName","phone","apptTime","apptDate","provider"]}}'
Request BODY
{
  "auth_id": "auth_uuid_here",
  "input": {
    "report_type": "APPOINTMENTS",
    "filters": {
      "start_date": "2026-09-09T00:00:00+05:30",
      "end_date": "2026-09-16T00:00:00+05:30",
      "time_zone_id": "Asia/Calcutta",
      "provider_type": "ATTENDING_PROVIDER",
      "chief_complaint_names": [
        "New Patient"
      ]
    },
    "columns": [
      "patientName",
      "phone",
      "apptTime",
      "apptDate",
      "provider"
    ]
  }
}
Response BODY
{
  "id": "string",
  "workflow_id": "string",
  "auth_id": "string",
  "status": "string",
  "input": {},
  "output": {
    "report_type": "APPOINTMENTS",
    "columns": [
      "string"
    ],
    "csv_base64": "YXBwdERhdGUKMjAyNi0wOC0wNgo="
  },
  "files": null,
  "created_at": "2019-08-24T14:15:22Z",
  "started_at": "2019-08-24T14:15:22Z",
  "completed_at": "2019-08-24T14:15:22Z"
}