Partner API
Run a Morphic workflow from your own systems over HTTPS.
The Partner API starts a Morphic workflow from your own software. You read a workflow's input contract, start a run with your inputs, then follow the run — by polling it or by receiving a webhook — until it hands back its finished assets.
Early access. v1 is live. Field names and limits can still change — build against it and tell us what does not fit.
What a workflow is
A workflow is a recipe your team authors in Morphic Studio: a sequence of generation steps that takes named inputs and produces finished assets. This API starts one from your systems and collects its output. It does not author workflows — that stays in Studio, where the people who own the creative decisions work.
The shape of an integration
sequenceDiagram
participant You as Your system
participant M as Morphic API
You->>M: GET workflow inputs
M-->>You: the inputs to collect
You->>M: POST workflow run
M-->>You: 202 + run id
loop until terminal
You->>M: GET workflow run
M-->>You: status, then assets
end
What you need before you start
| Value | Where it comes from |
|---|---|
| API key | an admin of your Morphic organization creates it in Studio; the key is shown once |
| Base URL | https://api.morphic.com/v1/partner — also shown on the API keys page in Studio; see Environments for staging |
org_id | your Morphic organization — shown, with a Copy button, on the API keys page in Studio |
project_id | the canvas the runs land in: open it in Studio and copy the id from its URL, …/editor/<project_id>/canvas (the id in a /projects/… URL is a different one) |
workflow_id | the workflow you were asked to run |
There is no file upload
You never upload bytes to us. Every file input is a public HTTPS link that we fetch and verify — see Passing files by URL. That keeps one contract for images, video, audio and documents, and it means your CDN stays the origin of your own content.
Read next
Authentication
Keys, scopes and environments
Conventions
Ids, timestamps, errors, retries
Get a workflow's inputs
The input contract to collect against
Passing files by URL
The link rules we enforce
Start a workflow run
Starting work
Read a workflow run
Statuses and assets
Webhooks
Being told instead of asking
Errors & limits
Every error code and every cap