Where this job goes when it finishes, by destination id. Register the destination first; credentials are never sent here. A webhook fires on success, failure and cancellation. Storage only carries a result, so it fires on success alone - and a storage delivery that gives up raises `render.delivery.failed` on the webhook destination, which is how you find out that a bucket stopped accepting uploads.
The object key, relative to the destination's prefix. Fixed text plus `{job_id}`, `{external_id}` and `{date}` (`YYYY/MM/DD`) - no other field, and nothing evaluated. Segments may hold letters, digits
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/ironfang/main/json-schema/ironfang-job-delivery-schema.json",
"title": "JobDelivery",
"description": "Where this job goes when it finishes, by destination id. Register the\ndestination first; credentials are never sent here.\n\nA webhook fires on success, failure and cancellation. Storage only\ncarries a result, so it fires on success alone - and a storage\ndelivery that gives up raises `render.delivery.failed` on the webhook\ndestination, which is how you find out that a bucket stopped\naccepting uploads.\n",
"x-generated": "2026-09-28",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/ironfang-batches-api-openapi.yml#/components/schemas/JobDelivery",
"type": "object",
"properties": {
"webhook_destination": {
"type": "string",
"description": "Id of a `webhook` destination."
},
"storage_destination": {
"type": "string",
"description": "Id of an `s3` destination."
},
"storage_key": {
"type": "string",
"maxLength": 700,
"description": "The object key, relative to the destination's prefix. Fixed text\nplus `{job_id}`, `{external_id}` and `{date}` (`YYYY/MM/DD`) -\nno other field, and nothing evaluated. Segments may hold letters,\ndigits, dot, dash and underscore; anything that would climb out\nof the prefix is refused when the job is submitted, not quietly\nrewritten. Defaults to `renderwolf/{date}/{job_id}`.\n"
}
}
}
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.