Skip to content

Info

For new integrations, use the v2 API. The v2 use-case API returns a job_id immediately; the completed result is delivered via webhook or optional polling with GET /v2/jobs/{job_id}. See API Overview and POST /v2/use-case/analyze.

Legacy API (v1)

The Legacy API (v1) is a job-based, condition-specific API for wellness, cognitive, and anemia analysis. For new integrations, prefer the v2 API: use-case bundles with multipart upload and a job flow (job_id, webhooks, optional job polling) — see POST /v2/use-case/analyze.

Authentication

HeaderDescription
X-Account-IDYour account identifier
X-Secret-KeyYour secret key

Note: v1 uses X-Secret-Key. The v2 API uses X-API-Key instead — see API Overview.

See Getting Started for credential setup.

When to use v1

  • Existing v1 integrations — Continue using v1 until you migrate to v2.
  • Condition-specific workflows — Wellness, cognitive, or anemia conditions with a job + webhook flow.
  • Job-based flow — Submit audio, receive a job_id, then poll job detail or configure a webhook to receive results when the job completes.

For use-case bundles, use POST /v2/use-case/analyze. For a single condition, use POST /v2/condition/analyze. Both use multipart/form-data and are async by default.

Endpoint groups

GroupPurposeReference
AccountWebhook configuration, credits, job list and detailWebhook, Credits, Jobs, Job Detail
WellnessWellness condition: analyze audio (upload or URL), with optional diarizationConditions
CognitiveCognitive condition: analyze audio (upload or URL), with optional diarizationConditions
AnemiaAnemia condition: analyze audio (upload or URL), with optional diarizationConditions

Audio and errors


Account Endpoints

POST /api/v1/account/webhook

POST/api/v1/account/webhook
Set the webhook URL and secret for the account. Once configured, your webhook is called when an audio analysis job completes.

Request Body

API Parameters
FieldTypeRequiredDescription
urlstringRequiredHTTPS URL where webhooks are sent. Must be publicly accessible.
secret_keystringRequiredSecret used to sign webhook payloads. Store securely and use only for signature verification on your server.

Example

curl -X POST "https://api.amplifierhealth.com/api/v1/account/webhook" \
-H "X-Account-ID: your-account-id" \
-H "X-Secret-Key: your-secret-key" \
-H "Content-Type: application/json" \
-d '{"url":"https://your-server.com/webhooks/amplifier","secret_key":"your-webhook-secret"}'

The webhook format, signature verification process, and best practices are the same across v1 and v2. See Webhooks (v2 Account) for the full implementation guide, including the signature verification code example.

Response

FieldTypeDescription
successbooleanWhether the webhook was configured.
messagestringConfirmation message.

Errors

Validation errors return 422 with a detail array. For authentication (401), rate limiting (429), and other codes, see Error Reference.

GET /api/v1/account/credits

GET/api/v1/account/credits
Check remaining credits for the account.

Response

FieldTypeDescription
creditsintegerRemaining credits for the account.

If the account has no remaining credits, analyze endpoints return 402 Payment Required. Check this endpoint before submitting jobs.

Example

curl -X GET "https://api.amplifierhealth.com/api/v1/account/credits" \
-H "X-Account-ID: your-account-id" \
-H "X-Secret-Key: your-secret-key"

Errors

For 401 and other codes, see Error Reference.

GET /api/v1/account/jobs

GET/api/v1/account/jobs
Get the list of job IDs for the account.

Response

FieldTypeDescription
jobsarray of objectsList of job objects for the current page. Each object contains job_id (string), status (string), and created_at (string, ISO 8601). Use each job_id with job detail to retrieve full results.
pageintegerCurrent page number (0-based).
total_pagesintegerTotal number of pages available.

Example

curl -X GET "https://api.amplifierhealth.com/api/v1/account/jobs" \
-H "X-Account-ID: your-account-id" \
-H "X-Secret-Key: your-secret-key"

Errors

For 401 and other codes, see Error Reference.

GET /api/v1/account/jobs/[job_id]

GET/api/v1/account/jobs/{job_id}
Return the status, result (when completed), and metadata for a job.

Path Parameters

ParameterTypeDescription
job_idstringJob identifier returned from an analyze endpoint.

Response

FieldTypeDescription
job_idstringUnique job identifier.
statusstringJob status (e.g. pending, done).
created_atstring or nullISO timestamp when the job was created.
completed_atstring or nullISO timestamp when the job completed.
resultobject or nullFull analysis result when the job has completed; null otherwise.
audio_content_typestringMIME type of submitted audio.
audio_size_bytesintegerSize of submitted audio in bytes.
audio_duration_secondsnumberDuration of submitted audio in seconds.
pipeline_typestringCondition type (e.g. wellness).

Poll this endpoint until status is done to retrieve the result, or configure a webhook to receive the result when the job completes.

For the expected fields in each condition's result, see Legacy API (v1) — Conditions.

Example

curl -X GET "https://api.amplifierhealth.com/api/v1/account/jobs/{job_id}" \
-H "X-Account-ID: your-account-id" \
-H "X-Secret-Key: your-secret-key"

Errors

422 is returned for invalid job_id. For 401, 404, and other codes, see Error Reference.