Workflows
Step-by-step API call sequences that demonstrate common end-to-end tasks in the FM API. Each workflow chains multiple endpoints together and shows the expected request/response at every stage.
▶Use cases
- Learning the API — follow a workflow from start to finish to understand how endpoints relate to each other
- Integration blueprints — use workflows as templates when building your own supply chain data pipelines
- Testing and validation — replay a workflow against a development environment to verify your setup
▶Available workflows
Each workflow's own page carries a full endpoint map — every step, its method and path, and the variable it threads to the next step. The table below is the index; open a workflow for the complete call-order map, the required scopes, and the upload file format.
| Workflow | Endpoints in call order (see the workflow page for the full map) |
|---|---|
| First-Mile Discovery | POST /discovery/source → GET /discovery/source/:id/status → GET /discovery/source/:id/results (or POST /discovery/validate) → POST /ingestions/assets |
| EUDR Compliance | POST /ingestions/assets → poll → POST /regulations/eudr/audit-trail → poll → GET …/report → POST …/authorisations → POST /regulations/eudr/dds/:id/submit → poll |
| Plot Ingestion | POST /ingestions/assets → PUT {upload_url} → GET /ingestions/:id → PUT /ingestions/assets (assessments) → GET /ingestions/assets/:id → PUT /ingestions/assets (metrics) → GET /metrics/plots/deforestation |
| Facility / Supplier Ingestion | POST /ingestions/assets → PUT {upload_url} → GET /ingestions/:id/summary → GET /ingestions/assets/:id → PUT /ingestions/assets (metrics) → GET /locations/* + GET /metrics/sheds/* |
| Quick Ingestion | POST /ingestions/assets (with metrics) → PUT {upload_url} → GET /ingestions/:id/summary → GET /ingestions/assets/:id |
| Shed Ingestion | POST /ingestions/assets (location_type: shed) → PUT {upload_url} → GET /ingestions/:id/summary → GET /metrics/sheds/* |
| Parcel Search | POST /cadastral/parcels/search → GET /cadastral/tasks/:id (poll) → GET /cadastral/parcels/results/:id → POST /cadastral/parcels/results/:id/ingest → GET /locations/plots |
| Artifacts | POST /artifacts → GET /artifacts/:id (poll) → POST /artifacts/:id/signed-urls (mint) — or the ingestion fast path (create_artifact:true) |
▶Prerequisites
- Valid API key in the
x-api-keyheader - Familiarity with the core Endpoints documentation