Skip to main content
POST
Create a conversion job

Authorizations

Authorization
string
header
required

Create a key under Settings → API Keys and send it as Authorization: Bearer amd_live_…. See https://docs.anythingmd.com/authentication.

Headers

Idempotency-Key
string

If reused within the retention window, replay the original result instead of a second mutation

Minimum string length: 1

Body

application/json
operation
enum<string>
default:convert
required

Work to perform

Available options:
convert
capabilityVersion
string
default:1
required

Capability version to invoke; defaults to 1

Minimum string length: 1
source
object
required

Where the input document comes from

includeImages
boolean
default:false
required

If true, save image artifacts with download URLs; if false, skip image bodies

force_refresh
boolean

If true, bypass document cache and perform a full conversion

forceRefresh
boolean

Alias for force_refresh

allowPartial
boolean

If true and the workspace cannot pay for the whole document, convert as many pages as its credits cover instead of returning 402. The job reports partial: true and nextStartPage.

startPage
integer

First page to convert (1-based). Use nextStartPage from a partial job to convert the rest.

Required range: 1 <= x <= 100000
content_hash
string

Optional SHA-256 payload checksum (e.g. sha256:)

Minimum string length: 1
contentHash
string

Alias for content_hash

Minimum string length: 1
idempotencyKey
string

If the same key is reused within the idempotency window, return the original job instead of creating a duplicate

Minimum string length: 1
webhookUrl
string<uri>

Optional callback URL when the job reaches a terminal status (future; polling remains required)

Response

Existing job returned for a replayed idempotency key

id
string
required

Id of an async job

Minimum string length: 1
operation
enum<string>
required
Available options:
convert
capabilityVersion
string
required

Pinned version of this capability. Quotes, receipts, rate cards, and Skills key off operation + version.

Minimum string length: 1
status
enum<string>
required
Available options:
queued,
running,
input_required,
succeeded,
failed,
canceled,
expired
source
object
required
createdAt
string<date-time>
required

ISO-8601 creation time

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
updatedAt
string<date-time>
required

ISO-8601 last status change

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
fileSource
enum<string>
Available options:
managed,
external
includeImages
boolean
cached
boolean

True when results were returned from content-hash cache

pageRange
object

Pages this job converted (1-based, inclusive), when known

partial
boolean

True when the job stopped at the pages its credits covered; convert the rest with startPage = nextStartPage

nextStartPage
integer

Present on partial jobs: the first page not yet converted

Required range: 2 <= x <= 9007199254740991
estimatedTotalPages
integer

Page count read from the file before converting, when it could be read

Required range: -9007199254740991 <= x <= 9007199254740991
startedAt
string<date-time>
Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
finishedAt
string<date-time>
Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
error
string

Present when status is failed

errorCode
string

Stable machine code when status is failed. stranded_running means the worker or client disappeared; it is not a conversion failure.

idempotencyKey
string
usage
object

Natural usage units for this job; never credits or currency

stage
enum<string>

Fine-grained phase within the current status

Available options:
preparing,
converting,
finalizing,
complete,
error
stageProgress
number

0–100 progress within the current stage

Required range: 0 <= x <= 100
message
string

Human-readable status for display