{ "opencollection": "1.0.0", "info": { "name": "Amigo Account Intake API", "version": "0.1.0" }, "request": { "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "items": [ { "info": { "name": "Intake", "type": "folder" }, "items": [ { "info": { "name": "Receive Intake File", "type": "http" }, "http": { "method": "POST", "url": "https://api.amigo.ai/v1/:workspace_id/intake/files/external", "headers": [ { "name": "x-amigo-intake-sha256", "value": "" }, { "name": "x-amigo-intake-timestamp", "value": "" }, { "name": "x-amigo-intake-signature", "value": "" }, { "name": "x-amigo-intake-customer-slug", "value": "" }, { "name": "x-amigo-intake-filename", "value": "" }, { "name": "x-amigo-intake-content-type", "value": "" } ], "params": [ { "name": "workspace_id", "value": "", "type": "path" } ] }, "docs": "Receive Intake File" }, { "info": { "name": "List Intake Files", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/files", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query" }, { "name": "continuation_token", "value": "", "type": "query" }, { "name": "sort_by", "value": "", "type": "query" }, { "name": "status", "value": "", "type": "query" }, { "name": "search", "value": "", "type": "query" }, { "name": "include_withdrawn", "value": "", "type": "query" } ] }, "docs": "List Intake Files" }, { "info": { "name": "Upload Intake File", "type": "http" }, "http": { "method": "POST", "url": "https://api.amigo.ai/v1/:workspace_id/intake/files", "params": [ { "name": "workspace_id", "value": "", "type": "path" } ], "body": { "type": "multipart-form", "data": [] } }, "docs": "Upload Intake File" }, { "info": { "name": "Download Intake File", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/files/:file_id/download", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "file_id", "value": "", "type": "path" } ] }, "docs": "Download Intake File" }, { "info": { "name": "List Intake Datasets", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/datasets", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query" }, { "name": "continuation_token", "value": "", "type": "query" }, { "name": "sort_by", "value": "", "type": "query" }, { "name": "search", "value": "", "type": "query" } ] }, "docs": "List Intake Datasets" }, { "info": { "name": "List Intake Sources", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/sources", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query" }, { "name": "continuation_token", "value": "", "type": "query" }, { "name": "sort_by", "value": "", "type": "query" } ] }, "docs": "List Intake Sources" }, { "info": { "name": "Register Intake Source", "type": "http" }, "http": { "method": "POST", "url": "https://api.amigo.ai/v1/:workspace_id/intake/sources", "params": [ { "name": "workspace_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Register Intake Source" }, { "info": { "name": "Sync Intake Source", "type": "http" }, "http": { "method": "POST", "url": "https://api.amigo.ai/v1/:workspace_id/intake/sources/:source_id/sync", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "source_id", "value": "", "type": "path" } ] }, "docs": "Sync Intake Source" }, { "info": { "name": "Register Intake Schema", "type": "http" }, "http": { "method": "POST", "url": "https://api.amigo.ai/v1/:workspace_id/intake/schema/register", "params": [ { "name": "workspace_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Register Intake Schema" }, { "info": { "name": "List Intake Batches", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/batches", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query" }, { "name": "continuation_token", "value": "", "type": "query" }, { "name": "sort_by", "value": "", "type": "query" }, { "name": "source_id", "value": "", "type": "query" } ] }, "docs": "List Intake Batches" }, { "info": { "name": "Get Intake Batch", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/batches/:batch_id", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "batch_id", "value": "", "type": "path" } ] }, "docs": "Get Intake Batch" }, { "info": { "name": "Get Batch Processing Manifest", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/batches/:batch_id/processing-manifest", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "batch_id", "value": "", "type": "path" } ] }, "docs": "The per-file params the batch-extract job needs to process every still-\n``received`` file in one run. Same workspace-scoped auth as the write-back\n(the job holds the batch's agent-session token). Documents only — snapshot/CSV\nbatches process in version order via the chained per-file path, not here." }, { "info": { "name": "Process Intake Batch", "type": "http" }, "http": { "method": "POST", "url": "https://api.amigo.ai/v1/:workspace_id/intake/batches/:batch_id/process", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "batch_id", "value": "", "type": "path" } ] }, "docs": "Process Intake Batch" }, { "info": { "name": "Materialize Intake", "type": "http" }, "http": { "method": "POST", "url": "https://api.amigo.ai/v1/:workspace_id/intake/materialize", "params": [ { "name": "workspace_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Trigger the intake → customer-data materializer for this workspace.\n\nFires the materializer Databricks job (run-now); it rescans the workspace's\ncurated intake files and (re)materializes each snapshot dataset into\n``customer_data_..``. Every write is an idempotent\nkeyed MERGE / full overwrite, so a re-click is safe. Optionally scope to one\n``dataset``; omit for all curated snapshot datasets. Returns ``202`` with the\njob ``run_id`` (``null`` when the job is not configu" }, { "info": { "name": "Update Intake Dataset", "type": "http" }, "http": { "method": "POST", "url": "https://api.amigo.ai/v1/:workspace_id/intake/datasets/:dataset/update", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "dataset", "value": "", "type": "path" } ] }, "docs": "Run the customer-facing dataset update flow.\n\nThis is the one-click orchestration path for the console: check mapped Drive\nfolders, prepare any newly landed files, and publish immediately when no\npreparation is needed. If preparation is async, the run remains durable and\nis advanced by file write-backs or by refresh." }, { "info": { "name": "Get Intake Update Run", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/update-runs/:run_id", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "run_id", "value": "", "type": "path" } ] }, "docs": "Get Intake Update Run" }, { "info": { "name": "List Intake Materializations", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/materializations", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query" }, { "name": "continuation_token", "value": "", "type": "query" }, { "name": "sort_by", "value": "", "type": "query" }, { "name": "search", "value": "", "type": "query" } ] }, "docs": "Per-dataset materialization status for the workspace's Destinations tab.\n\nLists each registered dataset alongside its customer-data destination table's\nstatus — ``materialized`` (with row count + last-write time) or\n``not_materialized`` (no table yet). The dataset list + pagination mirror\n``GET /datasets`` (the contracts registry); the destination status is read\nfrom the ``customer_data_`` catalog via the SQL warehouse. Member read." }, { "info": { "name": "Write Back Intake File Status", "type": "http" }, "http": { "method": "POST", "url": "https://api.amigo.ai/v1/:workspace_id/intake/files/:file_id/status", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "file_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Advance a file's status from the async CDC/extraction job (P4).\n\nThe job authenticates with the workspace's API key (Bearer) — the same\nDatabricks→platform-api path launch_dpc uses — so RLS scopes the update to\nthat workspace. Moves the row to its terminal verdict and records the\ncurated/cdc paths. For a batch-sourced file, advances its batch (chain the\nnext snapshot version + roll up) once the verdict is terminal." }, { "info": { "name": "List upload links", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/links", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "include_expired", "value": "", "type": "query" }, { "name": "limit", "value": "", "type": "query" }, { "name": "offset", "value": "", "type": "query" } ] }, "docs": "List upload links" }, { "info": { "name": "Generate upload link", "type": "http" }, "http": { "method": "POST", "url": "https://api.amigo.ai/v1/:workspace_id/intake/links", "params": [ { "name": "workspace_id", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Create a shareable upload link for a customer." }, { "info": { "name": "Revoke upload link", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.amigo.ai/v1/:workspace_id/intake/links/:link_id", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "link_id", "value": "", "type": "path" } ] }, "docs": "Revoke upload link" }, { "info": { "name": "List uploads for a link", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/links/:link_id/uploads", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "link_id", "value": "", "type": "path" }, { "name": "limit", "value": "", "type": "query" }, { "name": "offset", "value": "", "type": "query" } ] }, "docs": "List uploads for a link" }, { "info": { "name": "Download an uploaded file", "type": "http" }, "http": { "method": "GET", "url": "https://api.amigo.ai/v1/:workspace_id/intake/links/:link_id/uploads/:upload_id/download", "params": [ { "name": "workspace_id", "value": "", "type": "path" }, { "name": "link_id", "value": "", "type": "path" }, { "name": "upload_id", "value": "", "type": "path" } ] }, "docs": "Proxy the raw file bytes from the UC Volume back to the caller." } ] } ], "bundled": true }