Skip to content

Agent Jobs Endpoints

Agent Jobs API endpoints.


Overview

Method Endpoint Description
POST /api/v1/agent-jobs Create Agent Job
GET /api/v1/agent-jobs List Agent Jobs
GET /api/v1/agent-jobs/{job_id} Get Agent Job
POST /api/v1/agent-jobs/{job_id}/claim Claim Agent Job
POST /api/v1/agent-jobs/{job_id}/complete Complete Agent Job
POST /api/v1/agent-jobs/{job_id}/events Append Agent Job Event
POST /api/v1/agent-jobs/{job_id}/fail Fail Agent Job
POST /api/v1/agent-jobs/{job_id}/location/commands/add-reference-url Location Add Reference Url
POST /api/v1/agent-jobs/{job_id}/location/commands/attachments-as-references Location Attachments As References
POST /api/v1/agent-jobs/{job_id}/location/commands/remove-reference Location Remove Reference
POST /api/v1/agent-jobs/{job_id}/location/commands/replace-models Location Replace Models
POST /api/v1/agent-jobs/{job_id}/location/commands/update-products Location Update Products
GET /api/v1/agent-jobs/{job_id}/location/context Get Location Conversation Context
POST /api/v1/agent-jobs/{job_id}/location/reply Post Location Conversation Reply
POST /api/v1/agent-jobs/{job_id}/revise Revise Agent Job

API Reference

Sartiq Backend Server - Agent Jobs 0.1.0

agent-jobs


POST /api/v1/agent-jobs

Create Agent Job

Description

Create a QUEUED agent job.

Operator/superuser only (via OrganizationDep, which does the active-org lookup + membership check). SAR-1830 hardening: a capture-session (phone) token is NOT accepted here — the phone is presign-only, its drop becomes exactly ONE job via close -> seal-on-close, never by submitting a manifest.

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
organization_id query No

Request body

{
    "type": "product_ingest",
    "manifest": [
        {
            "object_key": "string",
            "rel_path": "string",
            "size": null,
            "content_type": null
        }
    ],
    "payload": null,
    "note": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "type": {
            "$ref": "#/components/schemas/AgentJobType",
            "default": "product_ingest"
        },
        "manifest": {
            "items": {
                "$ref": "#/components/schemas/ManifestObject"
            },
            "type": "array",
            "maxItems": 1000,
            "title": "Manifest",
            "default": []
        },
        "payload": {
            "anyOf": [
                {
                    "$ref": "#/components/schemas/GuidelinesDocumentExtractionPayload"
                },
                {
                    "$ref": "#/components/schemas/GuidelinesExtractionPayload"
                },
                {
                    "$ref": "#/components/schemas/LocationConversationTurnPayload"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Payload"
        },
        "note": {
            "anyOf": [
                {
                    "type": "string",
                    "maxLength": 2000
                },
                {
                    "type": "null"
                }
            ],
            "title": "Note"
        }
    },
    "type": "object",
    "title": "AgentJobCreate",
    "description": "Create body, one shape per type (plan 008 / 011, SAR-1927).\n\nproduct_ingest (default) requires a manifest and forbids a payload;\nguidelines_extraction requires a URL payload and forbids a manifest;\nguidelines_document_extraction requires BOTH a document payload and a\nbounded manifest of supported sources;\nlocation_conversation_turn requires a conversation payload and forbids a\nmanifest."
}

Responses

{
    "id": "ddfe712f-fcd3-48a8-af40-4cc8331bdb1d",
    "organization_id": "5990df47-738b-4317-a35c-7ce88d6568a1",
    "requested_by": "4473f24f-1ba0-479b-9f12-b42b50c83804",
    "status": "QUEUED",
    "type": "product_ingest",
    "payload": {},
    "scope_key": null,
    "sequence": null,
    "dedupe_key": null,
    "manifest": [
        {
            "object_key": "string",
            "rel_path": "string",
            "size": null,
            "content_type": null
        }
    ],
    "note": null,
    "claimed_by": null,
    "claimed_at": null,
    "heartbeat_at": null,
    "error": null,
    "summary": null,
    "reasoning": null,
    "revision_feedback": null,
    "events": [
        {
            "ts": "2022-04-13T15:42:05.901Z",
            "message": "string"
        }
    ],
    "created_at": "2022-04-13T15:42:05.901Z",
    "updated_at": "2022-04-13T15:42:05.901Z"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "id": {
            "type": "string",
            "format": "uuid",
            "title": "Id"
        },
        "organization_id": {
            "type": "string",
            "format": "uuid",
            "title": "Organization Id"
        },
        "requested_by": {
            "type": "string",
            "format": "uuid",
            "title": "Requested By"
        },
        "status": {
            "$ref": "#/components/schemas/AgentJobStatus"
        },
        "type": {
            "$ref": "#/components/schemas/AgentJobType",
            "default": "product_ingest"
        },
        "payload": {
            "additionalProperties": true,
            "type": "object",
            "title": "Payload",
            "default": {}
        },
        "scope_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Scope Key"
        },
        "sequence": {
            "anyOf": [
                {
                    "type": "integer"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Sequence"
        },
        "dedupe_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Dedupe Key"
        },
        "manifest": {
            "items": {
                "$ref": "#/components/schemas/ManifestObject"
            },
            "type": "array",
            "title": "Manifest"
        },
        "note": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Note"
        },
        "claimed_by": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "uuid"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed By"
        },
        "claimed_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed At"
        },
        "heartbeat_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Heartbeat At"
        },
        "error": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Error"
        },
        "summary": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Summary"
        },
        "reasoning": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Reasoning"
        },
        "revision_feedback": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Revision Feedback"
        },
        "events": {
            "items": {
                "$ref": "#/components/schemas/AgentJobEventPublic"
            },
            "type": "array",
            "title": "Events",
            "default": []
        },
        "created_at": {
            "type": "string",
            "format": "date-time",
            "title": "Created At"
        },
        "updated_at": {
            "type": "string",
            "format": "date-time",
            "title": "Updated At"
        }
    },
    "type": "object",
    "required": [
        "id",
        "organization_id",
        "requested_by",
        "status",
        "manifest",
        "created_at",
        "updated_at"
    ],
    "title": "AgentJobPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

GET /api/v1/agent-jobs

List Agent Jobs

Description

List agent jobs across the caller's organizations (agent or operator).

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
limit query integer 100 No
organization_id query No
shooting_id query No Restrict to jobs whose payload names this shooting (either guideline job type); lets each brief poll only its own run.
skip query integer 0 No
status query No
type query product_ingest No Job type filter; defaults to product_ingest so existing ingest surfaces never see other capabilities' jobs. The hermes host polls once per capability type with an explicit value.

Responses

{
    "data": [
        {
            "id": "7463f9b0-df27-46a8-9aae-53c2e860e2f5",
            "organization_id": "19cabbd5-5510-473b-a9ec-028f9d6405e3",
            "requested_by": "e9777a18-c115-4649-90ea-6c551d889537",
            "status": "QUEUED",
            "type": "product_ingest",
            "payload": {},
            "scope_key": null,
            "sequence": null,
            "dedupe_key": null,
            "manifest": [
                {
                    "object_key": "string",
                    "rel_path": "string",
                    "size": null,
                    "content_type": null
                }
            ],
            "note": null,
            "claimed_by": null,
            "claimed_at": null,
            "heartbeat_at": null,
            "error": null,
            "summary": null,
            "reasoning": null,
            "revision_feedback": null,
            "events": [
                {
                    "ts": "2022-04-13T15:42:05.901Z",
                    "message": "string"
                }
            ],
            "created_at": "2022-04-13T15:42:05.901Z",
            "updated_at": "2022-04-13T15:42:05.901Z"
        }
    ],
    "count": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/AgentJobPublic"
            },
            "type": "array",
            "title": "Data"
        },
        "count": {
            "type": "integer",
            "title": "Count"
        }
    },
    "type": "object",
    "required": [
        "data",
        "count"
    ],
    "title": "AgentJobsPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

GET /api/v1/agent-jobs/{job_id}

Get Agent Job

Description

Fetch one agent job (status + event log) for the operator that owns its org.

Powers the webapp's live "reading your drop" / "reading your site" states while a job is processed. Membership-scoped; superusers bypass.

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Responses

{
    "id": "34e5d6cd-44b7-473a-a0f4-a9eef28dca30",
    "organization_id": "57bb29f3-bc60-4bd2-960d-8f80ec254b8a",
    "requested_by": "5ff10b14-e131-4db4-a746-23485fbc9094",
    "status": "QUEUED",
    "type": "product_ingest",
    "payload": {},
    "scope_key": null,
    "sequence": null,
    "dedupe_key": null,
    "manifest": [
        {
            "object_key": "string",
            "rel_path": "string",
            "size": null,
            "content_type": null
        }
    ],
    "note": null,
    "claimed_by": null,
    "claimed_at": null,
    "heartbeat_at": null,
    "error": null,
    "summary": null,
    "reasoning": null,
    "revision_feedback": null,
    "events": [
        {
            "ts": "2022-04-13T15:42:05.901Z",
            "message": "string"
        }
    ],
    "created_at": "2022-04-13T15:42:05.901Z",
    "updated_at": "2022-04-13T15:42:05.901Z"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "id": {
            "type": "string",
            "format": "uuid",
            "title": "Id"
        },
        "organization_id": {
            "type": "string",
            "format": "uuid",
            "title": "Organization Id"
        },
        "requested_by": {
            "type": "string",
            "format": "uuid",
            "title": "Requested By"
        },
        "status": {
            "$ref": "#/components/schemas/AgentJobStatus"
        },
        "type": {
            "$ref": "#/components/schemas/AgentJobType",
            "default": "product_ingest"
        },
        "payload": {
            "additionalProperties": true,
            "type": "object",
            "title": "Payload",
            "default": {}
        },
        "scope_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Scope Key"
        },
        "sequence": {
            "anyOf": [
                {
                    "type": "integer"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Sequence"
        },
        "dedupe_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Dedupe Key"
        },
        "manifest": {
            "items": {
                "$ref": "#/components/schemas/ManifestObject"
            },
            "type": "array",
            "title": "Manifest"
        },
        "note": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Note"
        },
        "claimed_by": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "uuid"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed By"
        },
        "claimed_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed At"
        },
        "heartbeat_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Heartbeat At"
        },
        "error": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Error"
        },
        "summary": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Summary"
        },
        "reasoning": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Reasoning"
        },
        "revision_feedback": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Revision Feedback"
        },
        "events": {
            "items": {
                "$ref": "#/components/schemas/AgentJobEventPublic"
            },
            "type": "array",
            "title": "Events",
            "default": []
        },
        "created_at": {
            "type": "string",
            "format": "date-time",
            "title": "Created At"
        },
        "updated_at": {
            "type": "string",
            "format": "date-time",
            "title": "Updated At"
        }
    },
    "type": "object",
    "required": [
        "id",
        "organization_id",
        "requested_by",
        "status",
        "manifest",
        "created_at",
        "updated_at"
    ],
    "title": "AgentJobPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/revise

Revise Agent Job

Description

Operator correction → re-read the whole drop (membership-scoped).

Supersedes the drop's un-reviewed drafts and re-queues the job with the feedback as a hard directive for the agent. Powers the "tell the agent what it misread" loop on the draft page.

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Request body

{
    "feedback": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "feedback": {
            "type": "string",
            "maxLength": 2000,
            "minLength": 1,
            "title": "Feedback"
        }
    },
    "type": "object",
    "required": [
        "feedback"
    ],
    "title": "AgentJobReviseRequest",
    "description": "Operator's plain-language correction that triggers a re-read of the drop."
}

Responses

{
    "id": "e3302a1d-2822-4dfb-aef4-f8fabc7a4621",
    "organization_id": "da78c562-b325-482e-859a-e4e83a1db614",
    "requested_by": "756d7b1b-edb6-4069-889a-ea8e2f4c1973",
    "status": "QUEUED",
    "type": "product_ingest",
    "payload": {},
    "scope_key": null,
    "sequence": null,
    "dedupe_key": null,
    "manifest": [
        {
            "object_key": "string",
            "rel_path": "string",
            "size": null,
            "content_type": null
        }
    ],
    "note": null,
    "claimed_by": null,
    "claimed_at": null,
    "heartbeat_at": null,
    "error": null,
    "summary": null,
    "reasoning": null,
    "revision_feedback": null,
    "events": [
        {
            "ts": "2022-04-13T15:42:05.901Z",
            "message": "string"
        }
    ],
    "created_at": "2022-04-13T15:42:05.901Z",
    "updated_at": "2022-04-13T15:42:05.901Z"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "id": {
            "type": "string",
            "format": "uuid",
            "title": "Id"
        },
        "organization_id": {
            "type": "string",
            "format": "uuid",
            "title": "Organization Id"
        },
        "requested_by": {
            "type": "string",
            "format": "uuid",
            "title": "Requested By"
        },
        "status": {
            "$ref": "#/components/schemas/AgentJobStatus"
        },
        "type": {
            "$ref": "#/components/schemas/AgentJobType",
            "default": "product_ingest"
        },
        "payload": {
            "additionalProperties": true,
            "type": "object",
            "title": "Payload",
            "default": {}
        },
        "scope_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Scope Key"
        },
        "sequence": {
            "anyOf": [
                {
                    "type": "integer"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Sequence"
        },
        "dedupe_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Dedupe Key"
        },
        "manifest": {
            "items": {
                "$ref": "#/components/schemas/ManifestObject"
            },
            "type": "array",
            "title": "Manifest"
        },
        "note": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Note"
        },
        "claimed_by": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "uuid"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed By"
        },
        "claimed_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed At"
        },
        "heartbeat_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Heartbeat At"
        },
        "error": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Error"
        },
        "summary": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Summary"
        },
        "reasoning": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Reasoning"
        },
        "revision_feedback": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Revision Feedback"
        },
        "events": {
            "items": {
                "$ref": "#/components/schemas/AgentJobEventPublic"
            },
            "type": "array",
            "title": "Events",
            "default": []
        },
        "created_at": {
            "type": "string",
            "format": "date-time",
            "title": "Created At"
        },
        "updated_at": {
            "type": "string",
            "format": "date-time",
            "title": "Updated At"
        }
    },
    "type": "object",
    "required": [
        "id",
        "organization_id",
        "requested_by",
        "status",
        "manifest",
        "created_at",
        "updated_at"
    ],
    "title": "AgentJobPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/claim

Claim Agent Job

Description

Atomically start a queued job and return its job-scoped credential.

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Responses

{
    "token": "string",
    "organization_id": "82bfb610-77ba-403e-9096-72da2f4fbea0",
    "organization_name": "string",
    "job": {
        "id": "ef0ba357-bfc4-467f-9e05-bb7f3241969e",
        "organization_id": "ec164c03-907f-4e02-a8a0-c6d271587adb",
        "requested_by": "38edc58c-0dc9-4ead-a95b-f1020e0f7ada",
        "status": "QUEUED",
        "type": "product_ingest",
        "payload": {},
        "scope_key": null,
        "sequence": null,
        "dedupe_key": null,
        "manifest": [
            {
                "object_key": "string",
                "rel_path": "string",
                "size": null,
                "content_type": null
            }
        ],
        "note": null,
        "claimed_by": null,
        "claimed_at": null,
        "heartbeat_at": null,
        "error": null,
        "summary": null,
        "reasoning": null,
        "revision_feedback": null,
        "events": [
            {
                "ts": "2022-04-13T15:42:05.901Z",
                "message": "string"
            }
        ],
        "created_at": "2022-04-13T15:42:05.901Z",
        "updated_at": "2022-04-13T15:42:05.901Z"
    },
    "manifest": [
        {
            "object_key": "string",
            "rel_path": "string",
            "size": null,
            "content_type": null,
            "download_url": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "token": {
            "type": "string",
            "title": "Token"
        },
        "organization_id": {
            "type": "string",
            "format": "uuid",
            "title": "Organization Id"
        },
        "organization_name": {
            "type": "string",
            "title": "Organization Name"
        },
        "job": {
            "$ref": "#/components/schemas/AgentJobPublic"
        },
        "manifest": {
            "items": {
                "$ref": "#/components/schemas/ClaimedManifestObject"
            },
            "type": "array",
            "title": "Manifest"
        }
    },
    "type": "object",
    "required": [
        "token",
        "organization_id",
        "organization_name",
        "job",
        "manifest"
    ],
    "title": "AgentJobClaimPublic",
    "description": "Claim result: the job-scoped token plus everything the agent needs."
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

GET /api/v1/agent-jobs/{job_id}/location/context

Get Location Conversation Context

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Responses

{
    "agent_job_id": "0fb51671-8c3a-432b-95ce-ea86b8bcfebb",
    "source_message_id": "342275ef-0b2e-441b-a2c4-191cbfcc3719",
    "source_message": {
        "id": "186ef73a-f3b1-4c20-828f-241f133896a2",
        "role": "user",
        "text": "string",
        "attachment_ids": [
            "05918e4c-57c7-48b6-87e1-a761fe87f75f"
        ],
        "presentation_type": null,
        "created_at": "2022-04-13T15:42:05.901Z"
    },
    "history": null,
    "snapshot": {
        "set_design_id": "e659999e-fdca-4a0c-ba29-5c36ba4139a0",
        "revision": "string",
        "phase": "setup",
        "setup_complete": true,
        "ready_to_start": true,
        "references": [
            {
                "kind": "image",
                "id": null,
                "url": null
            }
        ],
        "models": [
            {
                "id": "1c9b6c04-3153-4db1-981d-cea25ecb3dc2",
                "name": "string"
            }
        ],
        "product_responsibility": null,
        "products": null,
        "can_edit_references": true,
        "can_edit_models": true,
        "can_edit_products": true,
        "can_present_version_one_contract": true
    }
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "agent_job_id": {
            "type": "string",
            "format": "uuid",
            "title": "Agent Job Id"
        },
        "source_message_id": {
            "type": "string",
            "format": "uuid",
            "title": "Source Message Id"
        },
        "source_message": {
            "$ref": "#/components/schemas/LocationConversationHistoryMessage"
        },
        "history": {
            "items": {
                "$ref": "#/components/schemas/LocationConversationHistoryMessage"
            },
            "type": "array",
            "title": "History"
        },
        "snapshot": {
            "$ref": "#/components/schemas/LocationConversationSnapshot"
        }
    },
    "type": "object",
    "required": [
        "agent_job_id",
        "source_message_id",
        "source_message",
        "history",
        "snapshot"
    ],
    "title": "LocationConversationContext"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/location/commands/attachments-as-references

Location Attachments As References

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Request body

{
    "expected_revision": "string",
    "idempotency_key": "string",
    "source_message_id": "080956c4-4867-4ce8-a843-3d5761892464"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "expected_revision": {
            "type": "string",
            "maxLength": 64,
            "minLength": 64,
            "title": "Expected Revision"
        },
        "idempotency_key": {
            "type": "string",
            "maxLength": 200,
            "minLength": 1,
            "title": "Idempotency Key"
        },
        "source_message_id": {
            "type": "string",
            "format": "uuid",
            "title": "Source Message Id"
        }
    },
    "additionalProperties": false,
    "type": "object",
    "required": [
        "expected_revision",
        "idempotency_key",
        "source_message_id"
    ],
    "title": "LocationAttachmentsAsReferencesCommand"
}

Responses

{
    "command": "string",
    "replayed": true,
    "changed": true,
    "snapshot": {
        "set_design_id": "6dc35166-9e5b-4f18-8433-72f8c62f7cef",
        "revision": "string",
        "phase": "setup",
        "setup_complete": true,
        "ready_to_start": true,
        "references": [
            {
                "kind": "image",
                "id": null,
                "url": null
            }
        ],
        "models": [
            {
                "id": "f30f8073-d91b-4f20-a5ce-7f8df626ece1",
                "name": "string"
            }
        ],
        "product_responsibility": null,
        "products": null,
        "can_edit_references": true,
        "can_edit_models": true,
        "can_edit_products": true,
        "can_present_version_one_contract": true
    }
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "command": {
            "type": "string",
            "title": "Command"
        },
        "replayed": {
            "type": "boolean",
            "title": "Replayed",
            "default": false
        },
        "changed": {
            "type": "boolean",
            "title": "Changed"
        },
        "snapshot": {
            "$ref": "#/components/schemas/LocationConversationSnapshot"
        }
    },
    "type": "object",
    "required": [
        "command",
        "changed",
        "snapshot"
    ],
    "title": "LocationConversationCommandResult"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/location/commands/add-reference-url

Location Add Reference Url

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Request body

{
    "expected_revision": "string",
    "idempotency_key": "string",
    "reference_url": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "expected_revision": {
            "type": "string",
            "maxLength": 64,
            "minLength": 64,
            "title": "Expected Revision"
        },
        "idempotency_key": {
            "type": "string",
            "maxLength": 200,
            "minLength": 1,
            "title": "Idempotency Key"
        },
        "reference_url": {
            "type": "string",
            "maxLength": 2048,
            "title": "Reference Url"
        }
    },
    "additionalProperties": false,
    "type": "object",
    "required": [
        "expected_revision",
        "idempotency_key",
        "reference_url"
    ],
    "title": "LocationAddReferenceUrlCommand"
}

Responses

{
    "command": "string",
    "replayed": true,
    "changed": true,
    "snapshot": {
        "set_design_id": "757bf5e6-dafb-492d-bcf2-d88108eafcfb",
        "revision": "string",
        "phase": "setup",
        "setup_complete": true,
        "ready_to_start": true,
        "references": [
            {
                "kind": "image",
                "id": null,
                "url": null
            }
        ],
        "models": [
            {
                "id": "0a7e9e8f-634e-4e5f-b1eb-49164e2f83ee",
                "name": "string"
            }
        ],
        "product_responsibility": null,
        "products": null,
        "can_edit_references": true,
        "can_edit_models": true,
        "can_edit_products": true,
        "can_present_version_one_contract": true
    }
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "command": {
            "type": "string",
            "title": "Command"
        },
        "replayed": {
            "type": "boolean",
            "title": "Replayed",
            "default": false
        },
        "changed": {
            "type": "boolean",
            "title": "Changed"
        },
        "snapshot": {
            "$ref": "#/components/schemas/LocationConversationSnapshot"
        }
    },
    "type": "object",
    "required": [
        "command",
        "changed",
        "snapshot"
    ],
    "title": "LocationConversationCommandResult"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/location/commands/remove-reference

Location Remove Reference

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Request body

{
    "expected_revision": "string",
    "idempotency_key": "string",
    "media_id": null,
    "reference_url": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "expected_revision": {
            "type": "string",
            "maxLength": 64,
            "minLength": 64,
            "title": "Expected Revision"
        },
        "idempotency_key": {
            "type": "string",
            "maxLength": 200,
            "minLength": 1,
            "title": "Idempotency Key"
        },
        "media_id": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "uuid"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Media Id"
        },
        "reference_url": {
            "anyOf": [
                {
                    "type": "string",
                    "maxLength": 2048
                },
                {
                    "type": "null"
                }
            ],
            "title": "Reference Url"
        }
    },
    "additionalProperties": false,
    "type": "object",
    "required": [
        "expected_revision",
        "idempotency_key"
    ],
    "title": "LocationRemoveReferenceCommand"
}

Responses

{
    "command": "string",
    "replayed": true,
    "changed": true,
    "snapshot": {
        "set_design_id": "ca8687bf-31e4-4c6d-895c-0e3a6c3c4f8d",
        "revision": "string",
        "phase": "setup",
        "setup_complete": true,
        "ready_to_start": true,
        "references": [
            {
                "kind": "image",
                "id": null,
                "url": null
            }
        ],
        "models": [
            {
                "id": "b704cd10-fd84-4f65-b31a-460e45b34959",
                "name": "string"
            }
        ],
        "product_responsibility": null,
        "products": null,
        "can_edit_references": true,
        "can_edit_models": true,
        "can_edit_products": true,
        "can_present_version_one_contract": true
    }
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "command": {
            "type": "string",
            "title": "Command"
        },
        "replayed": {
            "type": "boolean",
            "title": "Replayed",
            "default": false
        },
        "changed": {
            "type": "boolean",
            "title": "Changed"
        },
        "snapshot": {
            "$ref": "#/components/schemas/LocationConversationSnapshot"
        }
    },
    "type": "object",
    "required": [
        "command",
        "changed",
        "snapshot"
    ],
    "title": "LocationConversationCommandResult"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/location/commands/replace-models

Location Replace Models

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Request body

{
    "expected_revision": "string",
    "idempotency_key": "string",
    "subject_ids": [
        "fba035dd-8512-4e82-bd2f-6ba81ce1e914"
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "expected_revision": {
            "type": "string",
            "maxLength": 64,
            "minLength": 64,
            "title": "Expected Revision"
        },
        "idempotency_key": {
            "type": "string",
            "maxLength": 200,
            "minLength": 1,
            "title": "Idempotency Key"
        },
        "subject_ids": {
            "items": {
                "type": "string",
                "format": "uuid"
            },
            "type": "array",
            "minItems": 1,
            "title": "Subject Ids"
        }
    },
    "additionalProperties": false,
    "type": "object",
    "required": [
        "expected_revision",
        "idempotency_key",
        "subject_ids"
    ],
    "title": "LocationReplaceModelsCommand"
}

Responses

{
    "command": "string",
    "replayed": true,
    "changed": true,
    "snapshot": {
        "set_design_id": "4513b40f-f455-46a7-83b3-7dda1f20d5d0",
        "revision": "string",
        "phase": "setup",
        "setup_complete": true,
        "ready_to_start": true,
        "references": [
            {
                "kind": "image",
                "id": null,
                "url": null
            }
        ],
        "models": [
            {
                "id": "3a03303e-83e3-4865-9795-924075ab4d71",
                "name": "string"
            }
        ],
        "product_responsibility": null,
        "products": null,
        "can_edit_references": true,
        "can_edit_models": true,
        "can_edit_products": true,
        "can_present_version_one_contract": true
    }
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "command": {
            "type": "string",
            "title": "Command"
        },
        "replayed": {
            "type": "boolean",
            "title": "Replayed",
            "default": false
        },
        "changed": {
            "type": "boolean",
            "title": "Changed"
        },
        "snapshot": {
            "$ref": "#/components/schemas/LocationConversationSnapshot"
        }
    },
    "type": "object",
    "required": [
        "command",
        "changed",
        "snapshot"
    ],
    "title": "LocationConversationCommandResult"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/location/commands/update-products

Location Update Products

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Request body

{
    "expected_revision": "string",
    "idempotency_key": "string",
    "responsibility": "CLIENT",
    "product_ids": [
        "6c475e14-0f72-4734-ab76-d5886edf7e43"
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "expected_revision": {
            "type": "string",
            "maxLength": 64,
            "minLength": 64,
            "title": "Expected Revision"
        },
        "idempotency_key": {
            "type": "string",
            "maxLength": 200,
            "minLength": 1,
            "title": "Idempotency Key"
        },
        "responsibility": {
            "$ref": "#/components/schemas/SetDesignProductResponsibility"
        },
        "product_ids": {
            "items": {
                "type": "string",
                "format": "uuid"
            },
            "type": "array",
            "title": "Product Ids"
        }
    },
    "additionalProperties": false,
    "type": "object",
    "required": [
        "expected_revision",
        "idempotency_key",
        "responsibility"
    ],
    "title": "LocationUpdateProductsCommand"
}

Responses

{
    "command": "string",
    "replayed": true,
    "changed": true,
    "snapshot": {
        "set_design_id": "2fd28838-41fb-45fb-852a-e105c4ff06fc",
        "revision": "string",
        "phase": "setup",
        "setup_complete": true,
        "ready_to_start": true,
        "references": [
            {
                "kind": "image",
                "id": null,
                "url": null
            }
        ],
        "models": [
            {
                "id": "9274b37c-e45e-403f-8378-5b21928ec87b",
                "name": "string"
            }
        ],
        "product_responsibility": null,
        "products": null,
        "can_edit_references": true,
        "can_edit_models": true,
        "can_edit_products": true,
        "can_present_version_one_contract": true
    }
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "command": {
            "type": "string",
            "title": "Command"
        },
        "replayed": {
            "type": "boolean",
            "title": "Replayed",
            "default": false
        },
        "changed": {
            "type": "boolean",
            "title": "Changed"
        },
        "snapshot": {
            "$ref": "#/components/schemas/LocationConversationSnapshot"
        }
    },
    "type": "object",
    "required": [
        "command",
        "changed",
        "snapshot"
    ],
    "title": "LocationConversationCommandResult"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/location/reply

Post Location Conversation Reply

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Request body

{
    "text": "string",
    "presentation": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "text": {
            "type": "string",
            "maxLength": 8192,
            "minLength": 1,
            "title": "Text"
        },
        "presentation": {
            "anyOf": [
                {
                    "oneOf": [
                        {
                            "$ref": "#/components/schemas/LocationReferencePickerRequest"
                        },
                        {
                            "$ref": "#/components/schemas/LocationModelPickerRequest"
                        },
                        {
                            "$ref": "#/components/schemas/LocationProductPickerRequest"
                        },
                        {
                            "$ref": "#/components/schemas/LocationVersionOneContractRequest"
                        }
                    ],
                    "discriminator": {
                        "propertyName": "type",
                        "mapping": {
                            "location.model_picker": "#/components/schemas/LocationModelPickerRequest",
                            "location.product_picker": "#/components/schemas/LocationProductPickerRequest",
                            "location.reference_picker": "#/components/schemas/LocationReferencePickerRequest",
                            "location.version_one_contract": "#/components/schemas/LocationVersionOneContractRequest"
                        }
                    }
                },
                {
                    "type": "null"
                }
            ],
            "title": "Presentation"
        }
    },
    "additionalProperties": false,
    "type": "object",
    "required": [
        "text"
    ],
    "title": "LocationConversationReplyRequest"
}

Responses

{
    "message": {
        "id": "bd165ff0-837e-4eef-bb0b-150da421f605",
        "chat_id": "e86c3764-5d72-4efc-ac36-3012b35c85c1",
        "owner_id": null,
        "owner": null,
        "text": "string",
        "reply_to_id": null,
        "reply_to": null,
        "attachments": null,
        "options": null,
        "presentation": null,
        "email_notified_at": null,
        "created_at": "2022-04-13T15:42:05.901Z",
        "updated_at": "2022-04-13T15:42:05.901Z"
    },
    "replayed": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "message": {
            "$ref": "#/components/schemas/ChatMessagePublic"
        },
        "replayed": {
            "type": "boolean",
            "title": "Replayed",
            "default": false
        }
    },
    "type": "object",
    "required": [
        "message"
    ],
    "title": "LocationConversationReplyResult"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/events

Append Agent Job Event

Description

Append a progress line (agent job token).

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Request body

{
    "message": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "message": {
            "type": "string",
            "maxLength": 2000,
            "minLength": 1,
            "title": "Message"
        }
    },
    "type": "object",
    "required": [
        "message"
    ],
    "title": "AgentJobEventCreate"
}

Responses

{
    "id": "fd6901ad-75e3-4876-85e0-a484cb31bbcf",
    "organization_id": "14d9f4e2-dad3-434e-b86e-0cebddf2375e",
    "requested_by": "854ab9ff-8d92-420c-87c4-8296b1f9ebe0",
    "status": "QUEUED",
    "type": "product_ingest",
    "payload": {},
    "scope_key": null,
    "sequence": null,
    "dedupe_key": null,
    "manifest": [
        {
            "object_key": "string",
            "rel_path": "string",
            "size": null,
            "content_type": null
        }
    ],
    "note": null,
    "claimed_by": null,
    "claimed_at": null,
    "heartbeat_at": null,
    "error": null,
    "summary": null,
    "reasoning": null,
    "revision_feedback": null,
    "events": [
        {
            "ts": "2022-04-13T15:42:05.901Z",
            "message": "string"
        }
    ],
    "created_at": "2022-04-13T15:42:05.901Z",
    "updated_at": "2022-04-13T15:42:05.901Z"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "id": {
            "type": "string",
            "format": "uuid",
            "title": "Id"
        },
        "organization_id": {
            "type": "string",
            "format": "uuid",
            "title": "Organization Id"
        },
        "requested_by": {
            "type": "string",
            "format": "uuid",
            "title": "Requested By"
        },
        "status": {
            "$ref": "#/components/schemas/AgentJobStatus"
        },
        "type": {
            "$ref": "#/components/schemas/AgentJobType",
            "default": "product_ingest"
        },
        "payload": {
            "additionalProperties": true,
            "type": "object",
            "title": "Payload",
            "default": {}
        },
        "scope_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Scope Key"
        },
        "sequence": {
            "anyOf": [
                {
                    "type": "integer"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Sequence"
        },
        "dedupe_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Dedupe Key"
        },
        "manifest": {
            "items": {
                "$ref": "#/components/schemas/ManifestObject"
            },
            "type": "array",
            "title": "Manifest"
        },
        "note": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Note"
        },
        "claimed_by": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "uuid"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed By"
        },
        "claimed_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed At"
        },
        "heartbeat_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Heartbeat At"
        },
        "error": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Error"
        },
        "summary": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Summary"
        },
        "reasoning": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Reasoning"
        },
        "revision_feedback": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Revision Feedback"
        },
        "events": {
            "items": {
                "$ref": "#/components/schemas/AgentJobEventPublic"
            },
            "type": "array",
            "title": "Events",
            "default": []
        },
        "created_at": {
            "type": "string",
            "format": "date-time",
            "title": "Created At"
        },
        "updated_at": {
            "type": "string",
            "format": "date-time",
            "title": "Updated At"
        }
    },
    "type": "object",
    "required": [
        "id",
        "organization_id",
        "requested_by",
        "status",
        "manifest",
        "created_at",
        "updated_at"
    ],
    "title": "AgentJobPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/complete

Complete Agent Job

Description

Terminal success from the worker that owns this run.

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Request body

{
    "summary": null,
    "reasoning": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "summary": {
            "anyOf": [
                {
                    "type": "string",
                    "maxLength": 2000
                },
                {
                    "type": "null"
                }
            ],
            "title": "Summary"
        },
        "reasoning": {
            "anyOf": [
                {
                    "type": "string",
                    "maxLength": 8000
                },
                {
                    "type": "null"
                }
            ],
            "title": "Reasoning"
        }
    },
    "type": "object",
    "title": "AgentJobCompleteRequest"
}

Responses

{
    "id": "05941375-6ca4-48c8-abfa-027df3a886a1",
    "organization_id": "aeeeaf1b-8526-42de-a35f-6c77bb8a3939",
    "requested_by": "9256dc35-eee8-449c-94ad-e04c86212244",
    "status": "QUEUED",
    "type": "product_ingest",
    "payload": {},
    "scope_key": null,
    "sequence": null,
    "dedupe_key": null,
    "manifest": [
        {
            "object_key": "string",
            "rel_path": "string",
            "size": null,
            "content_type": null
        }
    ],
    "note": null,
    "claimed_by": null,
    "claimed_at": null,
    "heartbeat_at": null,
    "error": null,
    "summary": null,
    "reasoning": null,
    "revision_feedback": null,
    "events": [
        {
            "ts": "2022-04-13T15:42:05.901Z",
            "message": "string"
        }
    ],
    "created_at": "2022-04-13T15:42:05.901Z",
    "updated_at": "2022-04-13T15:42:05.901Z"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "id": {
            "type": "string",
            "format": "uuid",
            "title": "Id"
        },
        "organization_id": {
            "type": "string",
            "format": "uuid",
            "title": "Organization Id"
        },
        "requested_by": {
            "type": "string",
            "format": "uuid",
            "title": "Requested By"
        },
        "status": {
            "$ref": "#/components/schemas/AgentJobStatus"
        },
        "type": {
            "$ref": "#/components/schemas/AgentJobType",
            "default": "product_ingest"
        },
        "payload": {
            "additionalProperties": true,
            "type": "object",
            "title": "Payload",
            "default": {}
        },
        "scope_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Scope Key"
        },
        "sequence": {
            "anyOf": [
                {
                    "type": "integer"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Sequence"
        },
        "dedupe_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Dedupe Key"
        },
        "manifest": {
            "items": {
                "$ref": "#/components/schemas/ManifestObject"
            },
            "type": "array",
            "title": "Manifest"
        },
        "note": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Note"
        },
        "claimed_by": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "uuid"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed By"
        },
        "claimed_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed At"
        },
        "heartbeat_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Heartbeat At"
        },
        "error": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Error"
        },
        "summary": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Summary"
        },
        "reasoning": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Reasoning"
        },
        "revision_feedback": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Revision Feedback"
        },
        "events": {
            "items": {
                "$ref": "#/components/schemas/AgentJobEventPublic"
            },
            "type": "array",
            "title": "Events",
            "default": []
        },
        "created_at": {
            "type": "string",
            "format": "date-time",
            "title": "Created At"
        },
        "updated_at": {
            "type": "string",
            "format": "date-time",
            "title": "Updated At"
        }
    },
    "type": "object",
    "required": [
        "id",
        "organization_id",
        "requested_by",
        "status",
        "manifest",
        "created_at",
        "updated_at"
    ],
    "title": "AgentJobPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

POST /api/v1/agent-jobs/{job_id}/fail

Fail Agent Job

Description

Terminal failure from the worker, or from its owning dispatcher.

The dispatcher uses its regular AGENT token only when no worker is left to report. This closes interrupted jobs instead of re-queuing the same run.

Input parameters

Parameter In Type Default Nullable Description
OAuth2PasswordBearer header string N/A No
job_id path string No

Request body

{
    "error": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "error": {
            "type": "string",
            "maxLength": 2000,
            "minLength": 1,
            "title": "Error"
        }
    },
    "type": "object",
    "required": [
        "error"
    ],
    "title": "AgentJobFailRequest"
}

Responses

{
    "id": "28bae586-99f2-40f4-8abf-41fc3b3c1621",
    "organization_id": "97d83402-8096-49fa-91d7-9ce89d72c215",
    "requested_by": "477435df-2a76-439a-8bbd-c775c99362db",
    "status": "QUEUED",
    "type": "product_ingest",
    "payload": {},
    "scope_key": null,
    "sequence": null,
    "dedupe_key": null,
    "manifest": [
        {
            "object_key": "string",
            "rel_path": "string",
            "size": null,
            "content_type": null
        }
    ],
    "note": null,
    "claimed_by": null,
    "claimed_at": null,
    "heartbeat_at": null,
    "error": null,
    "summary": null,
    "reasoning": null,
    "revision_feedback": null,
    "events": [
        {
            "ts": "2022-04-13T15:42:05.901Z",
            "message": "string"
        }
    ],
    "created_at": "2022-04-13T15:42:05.901Z",
    "updated_at": "2022-04-13T15:42:05.901Z"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "id": {
            "type": "string",
            "format": "uuid",
            "title": "Id"
        },
        "organization_id": {
            "type": "string",
            "format": "uuid",
            "title": "Organization Id"
        },
        "requested_by": {
            "type": "string",
            "format": "uuid",
            "title": "Requested By"
        },
        "status": {
            "$ref": "#/components/schemas/AgentJobStatus"
        },
        "type": {
            "$ref": "#/components/schemas/AgentJobType",
            "default": "product_ingest"
        },
        "payload": {
            "additionalProperties": true,
            "type": "object",
            "title": "Payload",
            "default": {}
        },
        "scope_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Scope Key"
        },
        "sequence": {
            "anyOf": [
                {
                    "type": "integer"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Sequence"
        },
        "dedupe_key": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Dedupe Key"
        },
        "manifest": {
            "items": {
                "$ref": "#/components/schemas/ManifestObject"
            },
            "type": "array",
            "title": "Manifest"
        },
        "note": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Note"
        },
        "claimed_by": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "uuid"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed By"
        },
        "claimed_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Claimed At"
        },
        "heartbeat_at": {
            "anyOf": [
                {
                    "type": "string",
                    "format": "date-time"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Heartbeat At"
        },
        "error": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Error"
        },
        "summary": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Summary"
        },
        "reasoning": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Reasoning"
        },
        "revision_feedback": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "title": "Revision Feedback"
        },
        "events": {
            "items": {
                "$ref": "#/components/schemas/AgentJobEventPublic"
            },
            "type": "array",
            "title": "Events",
            "default": []
        },
        "created_at": {
            "type": "string",
            "format": "date-time",
            "title": "Created At"
        },
        "updated_at": {
            "type": "string",
            "format": "date-time",
            "title": "Updated At"
        }
    },
    "type": "object",
    "required": [
        "id",
        "organization_id",
        "requested_by",
        "status",
        "manifest",
        "created_at",
        "updated_at"
    ],
    "title": "AgentJobPublic"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string",
            "input": null,
            "ctx": {}
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
        }
    },
    "type": "object",
    "title": "HTTPValidationError"
}

Schemas

AgentJobClaimPublic

Name Type Description
job AgentJobPublic
manifest Array<ClaimedManifestObject>
organization_id string(uuid)
organization_name string
token string

AgentJobCompleteRequest

Name Type Description
reasoning
summary

AgentJobCreate

Name Type Description
manifest Array<ManifestObject>
note
payload
type AgentJobType

AgentJobEventCreate

Name Type Description
message string

AgentJobEventPublic

Name Type Description
message string
ts string(date-time)

AgentJobFailRequest

Name Type Description
error string

AgentJobPublic

Name Type Description
claimed_at
claimed_by
created_at string(date-time)
dedupe_key
error
events Array<AgentJobEventPublic>
heartbeat_at
id string(uuid)
manifest Array<ManifestObject>
note
organization_id string(uuid)
payload
reasoning
requested_by string(uuid)
revision_feedback
scope_key
sequence
status AgentJobStatus
summary
type AgentJobType
updated_at string(date-time)

AgentJobReviseRequest

Name Type Description
feedback string

AgentJobsPublic

Name Type Description
count integer
data Array<AgentJobPublic>

AgentJobStatus

Type: string

AgentJobType

Type: string

BodyType

Type: string

ChatMessageAuthor

Name Type Description
full_name
id string(uuid)
role

ChatMessagePublic

Name Type Description
attachments
chat_id string(uuid)
created_at string(date-time)
email_notified_at
id string(uuid)
options
owner
owner_id
presentation
reply_to
reply_to_id
text string
updated_at string(date-time)

ChatMessageReplyPreview

Name Type Description
id string(uuid)
is_restricted boolean
is_unavailable boolean
owner
text

ChatPresentationStatus

Type: string

ClaimedManifestObject

Name Type Description
content_type
download_url string
object_key string
rel_path string
size

Gender

Type: string

GuidelinesDocumentExtractionPayload

Name Type Description
aspects Array<string>
objective
shooting_id string(uuid)

GuidelinesExtractionPayload

Name Type Description
aspects Array<string>
entry_urls Array<string>
max_products integer
objective
shooting_id

HTTPValidationError

Name Type Description
detail Array<ValidationError>

LocationAddReferenceUrlCommand

Name Type Description
expected_revision string
idempotency_key string
reference_url string

LocationAttachmentsAsReferencesCommand

Name Type Description
expected_revision string
idempotency_key string
source_message_id string(uuid)

LocationConversationCommandResult

Name Type Description
changed boolean
command string
replayed boolean
snapshot LocationConversationSnapshot

LocationConversationContext

Name Type Description
agent_job_id string(uuid)
history Array<LocationConversationHistoryMessage>
snapshot LocationConversationSnapshot
source_message LocationConversationHistoryMessage
source_message_id string(uuid)

LocationConversationHistoryMessage

Name Type Description
attachment_ids Array<string(uuid)>
created_at string(date-time)
id string(uuid)
presentation_type
role string
text string

LocationConversationNamedResource

Name Type Description
id string(uuid)
name string

LocationConversationPhase

Type: string

LocationConversationReference

Name Type Description
id
kind string
url

LocationConversationReplyRequest

Name Type Description
presentation
text string

LocationConversationReplyResult

Name Type Description
message ChatMessagePublic
replayed boolean

LocationConversationSnapshot

Name Type Description
can_edit_models boolean
can_edit_products boolean
can_edit_references boolean
can_present_version_one_contract boolean
models Array<LocationConversationNamedResource>
phase LocationConversationPhase
product_responsibility
products Array<LocationConversationNamedResource>
ready_to_start boolean
references Array<LocationConversationReference>
revision string
set_design_id string(uuid)
setup_complete boolean

LocationConversationTurnPayload

Name Type Description
chat_id string(uuid)
conversation_sequence integer
set_design_id string(uuid)
source_message_id string(uuid)

LocationModelPickerParameters

Name Type Description
mode string

LocationModelPickerPresentation

Name Type Description
parameters LocationModelPickerParameters
resource_id string(uuid)
schema_version integer
setup_revision string
status ChatPresentationStatus
type string

LocationModelPickerRequest

Name Type Description
parameters LocationModelPickerParameters
schema_version integer
setup_revision string
type string

LocationProductPickerParameters

Name Type Description
mode string

LocationProductPickerPresentation

Name Type Description
parameters LocationProductPickerParameters
resource_id string(uuid)
schema_version integer
setup_revision string
status ChatPresentationStatus
type string

LocationProductPickerRequest

Name Type Description
parameters LocationProductPickerParameters
schema_version integer
setup_revision string
type string

LocationReferencePickerParameters

Name Type Description
mode string

LocationReferencePickerPresentation

Name Type Description
parameters LocationReferencePickerParameters
resource_id string(uuid)
schema_version integer
setup_revision string
status ChatPresentationStatus
type string

LocationReferencePickerRequest

Name Type Description
parameters LocationReferencePickerParameters
schema_version integer
setup_revision string
type string

LocationRemoveReferenceCommand

Name Type Description
expected_revision string
idempotency_key string
media_id
reference_url

LocationReplaceModelsCommand

Name Type Description
expected_revision string
idempotency_key string
subject_ids Array<string(uuid)>

LocationUpdateProductsCommand

Name Type Description
expected_revision string
idempotency_key string
product_ids Array<string(uuid)>
responsibility SetDesignProductResponsibility

LocationVersionOneContractParameters

LocationVersionOneContractPresentation

Name Type Description
parameters LocationVersionOneContractParameters
resource_id string(uuid)
schema_version integer
setup_revision string
status ChatPresentationStatus
type string

LocationVersionOneContractRequest

Name Type Description
parameters LocationVersionOneContractParameters
schema_version integer
setup_revision string
type string

ManifestObject

Name Type Description
content_type
object_key string
rel_path string
size

MediaResourcePublic

Name Type Description
alt_text
aspect_ratio
caption
color_profile
content_hash string
created_at string(date-time)
dominant_color
duration
extension string
file_size integer
height
id string(uuid)
orientation
protected boolean
resource_type MediaResourceType
url string
width

MediaResourceType

Type: string

MessageOptions

Name Type Description
data SubjectOptions

MessageOptionSelect

Type: string

RoleName

Type: string

RolePublic

Name Type Description
description
id string(uuid)
name RoleName

SetDesignProductResponsibility

Type: string

SubjectAgeClass

Type: string

SubjectOption

Name Type Description
age_class SubjectAgeClass
body_type
cover_image
cover_image_url
gender Gender
label string
subject_type SubjectType
value string(uuid)

SubjectOptions

Name Type Description
casting_link boolean
items Array<SubjectOption>
resolved boolean
select MessageOptionSelect
selected_values Array<string(uuid)>
type string

SubjectType

Type: string

UnsupportedChatPresentation

Name Type Description
schema_version integer
status string
type string

ValidationError

Name Type Description
ctx
input
loc Array<>
msg string
type string

Security schemes

Name Type Scheme Description
OAuth2PasswordBearer oauth2