How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Opply api API

The api API from Opply — 122 operation(s) for api.

Opply api API is one of 47 APIs that Opply publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

The published artifact set on APIs.io includes an OpenAPI specification.

This API exposes 176 operations across 122 paths, and defines 159 schemas. It is described by OpenAPI 3.0.3, at version 0.0.0.

Requests are made against the base URL https://api.opply.com.

176 operations 122 paths 159 schemas 23 DELETE72 GET11 PATCH59 POST11 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
0.0.0
Base URL
https://api.opply.com
Authentication
API Key, API Key
Resource Areas
1

Authentication & Security 2

Opply api API declares 2 security schemes for authenticating requests. An API key is passed in the cookie as sessionid (cookieAuth). An API key is passed in the header as Authorization (tokenAuth).

  • tokenAuth — Token-based authentication with required prefix "Token"

Paths & Operations 176

Across 122 paths, the API surfaces 176 operations — 23 DELETE, 72 GET, 11 PATCH, 59 POST, 11 PUT. Each is listed below with its method, path, parameters, and response codes.

api 176
GET
/api/schema/
OpenApi3 schema for this API. Format can be selected via content negotiation. - YAML: application/vnd.oai.openapi - JSON: application/vnd.oai.openapi+json
api_schema_retrieve 1 param → 200
POST
/api/v1/agents/agent-task-runs/{run_uuid}/claim/
Atomic dispatching → running transition. The agent-side dedup point. Called by the task-runner harness immediately on workflow entry. The first invocation wins (status flips, 200 returned); any dupli…
api_v1_agents_agent_task_runs_claim_create 1 param → 200403404409
POST
/api/v1/agents/agent-task-runs/{run_uuid}/complete/
Agent-only callback to mark an AgentTaskRun terminal.
api_v1_agents_agent_task_runs_complete_create 1 param → 200400403404409
POST
/api/v1/agents/agent-task-runs/{run_uuid}/heartbeat/
Refresh lastheartbeatat on a running run. Agent calls this every ~30s while executing. Single UPDATE — no SELECT, no transaction — at this cadence the cost matters. A 409 response is the agent's sign…
api_v1_agents_agent_task_runs_heartbeat_create 1 param → 204409
POST
/api/v1/agents/buyer-onboarding/invocations/
Streaming proxy for POST /api/v1/agents/buyer-onboarding/invocations/. Body: - prompt: required str. - sessionid: optional; defaults to a fresh opply- . - batchuuid: optional. When present, the proxy…
api_v1_agents_buyer_onboarding_invocations_create → 200
POST
/api/v1/agents/feedback/
Create / upsert one feedback row per (user, agentname, invocationid).
api_v1_agents_feedback_create body → 201200400403
POST
/api/v1/agents/opply-assistant/invocations/
Streaming proxy for POST /api/v1/agents/opply-assistant/invocations/. opply-assistant — orchestrator hosting the buyer-assistant worker. The request's channel field selects the AgentCore version chan…
api_v1_agents_opply_assistant_invocations_create → 200
GET
/api/v1/agents/opply-assistant/sessions/me/
GET / DELETE the opply-assistant session pointer for the current user. See AssistantSessionMeBaseView for the shared contract.
api_v1_agents_opply_assistant_sessions_me_retrieve → 200204400
DELETE
/api/v1/agents/opply-assistant/sessions/me/
GET / DELETE the opply-assistant session pointer for the current user. See AssistantSessionMeBaseView for the shared contract.
api_v1_agents_opply_assistant_sessions_me_destroy → 204400502
GET
/api/v1/agents/opply-assistant/sessions/me/events/
GET the opply-assistant conversation transcript for the active session. See AssistantSessionEventsBaseView for the shared contract.
api_v1_agents_opply_assistant_sessions_me_events_retrieve → 200400
POST
/api/v1/agents/unleashed-invoice-assistant/invocations/
Streaming proxy for POST /api/v1/agents/unleashed-invoice-assistant/invocations/. Body: - sessionid: optional; defaults to a fresh opply- . - prompt: optional; ignored by the agent but forwarded for…
api_v1_agents_unleashed_invoice_assistant_invocations_create → 200
POST
/api/v1/agents/xero-invoice-assistant/invocations/
Streaming proxy for POST /api/v1/agents/xero-invoice-assistant/invocations/. Body: - sessionid: optional; defaults to a fresh opply- . - prompt: optional; ignored by the agent but forwarded for parit…
api_v1_agents_xero_invoice_assistant_invocations_create → 200
GET
/api/v1/agreements/lead-generation-jobs/
GET and POST API endpoint for LeadGenerationJob - isolated feature
api_v1_agreements_lead_generation_jobs_list 2 params → 200
POST
/api/v1/agreements/lead-generation-jobs/
GET and POST API endpoint for LeadGenerationJob - isolated feature
api_v1_agreements_lead_generation_jobs_create body → 201
GET
/api/v1/app-orders/alerts/
GET API endpoint for Alerts - isolated feature
api_v1_app_orders_alerts_list 2 params → 200
GET
/api/v1/app-orders/brand/order-adjustments/
Buyer-side read access to OrderAdjustment. Buyers can list and fetch credit/debit notes that belong to their own company. VOID rows are hidden — they're audit history with no buyer-facing value. Writ…
api_v1_app_orders_brand_order_adjustments_list 2 params → 200
GET
/api/v1/app-orders/brand/order-adjustments/{uuid}/
Buyer-side read access to OrderAdjustment. Buyers can list and fetch credit/debit notes that belong to their own company. VOID rows are hidden — they're audit history with no buyer-facing value. Writ…
api_v1_app_orders_brand_order_adjustments_retrieve 1 param → 200
GET
/api/v1/app-orders/forecasts/
GET API endpoint for Forecast - isolated feature
api_v1_app_orders_forecasts_list 2 params → 200
GET
/api/v1/app-orders/merchant-of-record/order-adjustments/
MoR-facing endpoints for buyer credit/debit notes (OrderAdjustment). Lifecycle: AVAILABLE → APPLIED, AVAILABLE → PENDINGAPPLICATION → APPLIED, or any → VOID. Provider integration (Stripe / Two) is di…
api_v1_app_orders_merchant_of_record_order_adjustments_list 2 params → 200
POST
/api/v1/app-orders/merchant-of-record/order-adjustments/
Create a new OrderAdjustment in AVAILABLE state (multipart upload)
api_v1_app_orders_merchant_of_record_order_adjustments_create body → 201400404
GET
/api/v1/app-orders/merchant-of-record/order-adjustments/{uuid}/
MoR-facing endpoints for buyer credit/debit notes (OrderAdjustment). Lifecycle: AVAILABLE → APPLIED, AVAILABLE → PENDINGAPPLICATION → APPLIED, or any → VOID. Provider integration (Stripe / Two) is di…
api_v1_app_orders_merchant_of_record_order_adjustments_retrieve 1 param → 200
POST
/api/v1/app-orders/merchant-of-record/order-adjustments/{uuid}/apply/
Apply an AVAILABLE adjustment to a target order
api_v1_app_orders_merchant_of_record_order_adjustments_apply_create 1 param body → 200400404409
POST
/api/v1/app-orders/merchant-of-record/order-adjustments/{uuid}/finalise/
Finalise a PENDINGAPPLICATION adjustment now that the target invoice exists
api_v1_app_orders_merchant_of_record_order_adjustments_finalise_create 1 param → 200400409
GET
/api/v1/app-orders/merchant-of-record/order-adjustments/{uuid}/supplier-document/
Download the supplier-uploaded credit/debit note file
api_v1_app_orders_merchant_of_record_order_adjustments_supplier_document_retrieve 1 param → 200404
POST
/api/v1/app-orders/merchant-of-record/order-adjustments/{uuid}/void/
Void an adjustment (idempotent on already-VOID rows)
api_v1_app_orders_merchant_of_record_order_adjustments_void_create 1 param → 200400409
GET
/api/v1/app-orders/trends/
GET API endpoint for Trends - isolated feature
api_v1_app_orders_trends_list 2 params → 200
GET
/api/v1/companies/document-types/
api_v1_companies_document_types_list → 200
GET
/api/v1/companies/document-types/{uuid}/
api_v1_companies_document_types_retrieve 1 param → 200
GET
/api/v1/companies/mor/onboarding-suppliers/{uuid}/notes/
api_v1_companies_mor_onboarding_suppliers_notes_list 1 param → 200
POST
/api/v1/companies/mor/onboarding-suppliers/{uuid}/notes/
api_v1_companies_mor_onboarding_suppliers_notes_create 1 param body → 201
GET
/api/v1/companies/mor/onboarding-suppliers/{uuid}/notes/{note_uuid}/
api_v1_companies_mor_onboarding_suppliers_notes_retrieve 2 params → 200
PUT
/api/v1/companies/mor/onboarding-suppliers/{uuid}/notes/{note_uuid}/
api_v1_companies_mor_onboarding_suppliers_notes_update 2 params body → 200
DELETE
/api/v1/companies/mor/onboarding-suppliers/{uuid}/notes/{note_uuid}/
api_v1_companies_mor_onboarding_suppliers_notes_destroy 2 params → 204
GET
/api/v1/companies/mor/suppliers/{uuid}/notes/
api_v1_companies_mor_suppliers_notes_list 1 param → 200
POST
/api/v1/companies/mor/suppliers/{uuid}/notes/
api_v1_companies_mor_suppliers_notes_create 1 param body → 201
GET
/api/v1/companies/mor/suppliers/{uuid}/notes/{note_uuid}/
api_v1_companies_mor_suppliers_notes_retrieve 2 params → 200
PUT
/api/v1/companies/mor/suppliers/{uuid}/notes/{note_uuid}/
api_v1_companies_mor_suppliers_notes_update 2 params body → 200
DELETE
/api/v1/companies/mor/suppliers/{uuid}/notes/{note_uuid}/
api_v1_companies_mor_suppliers_notes_destroy 2 params → 204
GET
/api/v1/companies/supplier-document-types/
api_v1_companies_supplier_document_types_list → 200
GET
/api/v1/companies/supplier-document-types/{uuid}/
api_v1_companies_supplier_document_types_retrieve 1 param → 200
GET
/api/v1/companies/suppliers/{supplier_uuid}/supplier-documents/
api_v1_companies_suppliers_supplier_documents_list 5 params → 200
POST
/api/v1/companies/suppliers/{supplier_uuid}/supplier-documents/
api_v1_companies_suppliers_supplier_documents_create 1 param body → 201
GET
/api/v1/companies/suppliers/{supplier_uuid}/supplier-documents/{uuid}/
api_v1_companies_suppliers_supplier_documents_retrieve 2 params → 200
PUT
/api/v1/companies/suppliers/{supplier_uuid}/supplier-documents/{uuid}/
api_v1_companies_suppliers_supplier_documents_update 2 params body → 200
PATCH
/api/v1/companies/suppliers/{supplier_uuid}/supplier-documents/{uuid}/
api_v1_companies_suppliers_supplier_documents_partial_update 2 params body → 200
DELETE
/api/v1/companies/suppliers/{supplier_uuid}/supplier-documents/{uuid}/
api_v1_companies_suppliers_supplier_documents_destroy 2 params → 204
GET
/api/v1/companies/suppliers/{supplier_uuid}/supplier-documents/available-sites/
Get available sites for document upload
api_v1_companies_suppliers_supplier_documents_available_sites_retrieve 1 param → 200
GET
/api/v1/companies/suppliers/{supplier_uuid}/supplier-documents/available-types/
api_v1_companies_suppliers_supplier_documents_available_types_retrieve 1 param → 200
GET
/api/v1/companies/suppliers/{supplier_uuid}/supplier-documents/sites/
api_v1_companies_suppliers_supplier_documents_sites_retrieve 1 param → 200
GET
/api/v1/cortex/jobs/
Endpoints: - POST /jobs/ - create job (return UUID only) - PATCH /jobs/ / - update agentname, description, or status - GET /jobs/executing/ - list all jobs where status == EXECUTING
api_v1_cortex_jobs_list 2 params → 200
POST
/api/v1/cortex/jobs/
Endpoints: - POST /jobs/ - create job (return UUID only) - PATCH /jobs/ / - update agentname, description, or status - GET /jobs/executing/ - list all jobs where status == EXECUTING
api_v1_cortex_jobs_create body → 201
GET
/api/v1/cortex/jobs/{uuid}/
Endpoints: - POST /jobs/ - create job (return UUID only) - PATCH /jobs/ / - update agentname, description, or status - GET /jobs/executing/ - list all jobs where status == EXECUTING
api_v1_cortex_jobs_retrieve 1 param → 200
PUT
/api/v1/cortex/jobs/{uuid}/
Endpoints: - POST /jobs/ - create job (return UUID only) - PATCH /jobs/ / - update agentname, description, or status - GET /jobs/executing/ - list all jobs where status == EXECUTING
api_v1_cortex_jobs_update 1 param body → 200
PATCH
/api/v1/cortex/jobs/{uuid}/
Endpoints: - POST /jobs/ - create job (return UUID only) - PATCH /jobs/ / - update agentname, description, or status - GET /jobs/executing/ - list all jobs where status == EXECUTING
api_v1_cortex_jobs_partial_update 1 param body → 200
DELETE
/api/v1/cortex/jobs/{uuid}/
Endpoints: - POST /jobs/ - create job (return UUID only) - PATCH /jobs/ / - update agentname, description, or status - GET /jobs/executing/ - list all jobs where status == EXECUTING
api_v1_cortex_jobs_destroy 1 param → 204
GET
/api/v1/cortex/jobs/executing/
Endpoints: - POST /jobs/ - create job (return UUID only) - PATCH /jobs/ / - update agentname, description, or status - GET /jobs/executing/ - list all jobs where status == EXECUTING
api_v1_cortex_jobs_executing_retrieve → 200
GET
/api/v1/cortex/workflows/
Endpoints: - POST /workflows/ - create workflow (return UUID only) - GET /workflows/ - list workflows, each with associated jobs
api_v1_cortex_workflows_list 2 params → 200
POST
/api/v1/cortex/workflows/
Endpoints: - POST /workflows/ - create workflow (return UUID only) - GET /workflows/ - list workflows, each with associated jobs
api_v1_cortex_workflows_create body → 201
GET
/api/v1/cortex/workflows/{uuid}/
Endpoints: - POST /workflows/ - create workflow (return UUID only) - GET /workflows/ - list workflows, each with associated jobs
api_v1_cortex_workflows_retrieve 1 param → 200
PUT
/api/v1/cortex/workflows/{uuid}/
Endpoints: - POST /workflows/ - create workflow (return UUID only) - GET /workflows/ - list workflows, each with associated jobs
api_v1_cortex_workflows_update 1 param body → 200
PATCH
/api/v1/cortex/workflows/{uuid}/
Endpoints: - POST /workflows/ - create workflow (return UUID only) - GET /workflows/ - list workflows, each with associated jobs
api_v1_cortex_workflows_partial_update 1 param body → 200
DELETE
/api/v1/cortex/workflows/{uuid}/
Endpoints: - POST /workflows/ - create workflow (return UUID only) - GET /workflows/ - list workflows, each with associated jobs
api_v1_cortex_workflows_destroy 1 param → 204
GET
/api/v1/crm/companies/
ViewSet for managing CRM companies, including bulk import with field data.
api_v1_crm_companies_list 36 params → 200
POST
/api/v1/crm/companies/
ViewSet for managing CRM companies, including bulk import with field data.
api_v1_crm_companies_create body → 201
DELETE
/api/v1/crm/companies/{uuid}/
ViewSet for managing CRM companies, including bulk import with field data.
api_v1_crm_companies_destroy 1 param → 204
GET
/api/v1/crm/companies/{uuid}/scoring-debug/
Get ICP scoring breakdown for a company
api_v1_crm_companies_scoring_debug_retrieve 1 param → 200
POST
/api/v1/crm/companies/bulk-import/
Bulk import CRM companies, optionally with flat field data.
api_v1_crm_companies_bulk_import_create body → 200
POST
/api/v1/crm/companies/enrichment-run/{uuid}/callback/
Enrichment callback from the enrichment subsystem
api_v1_crm_companies_enrichment_run_callback_create 1 param → 200
GET
/api/v1/crm/companies/field-values/
Return distinct values for a given CrmCompanyData column, used to populate filter dropdowns.
api_v1_crm_companies_field_values_retrieve → 200
POST
/api/v1/crm/companies/hubspot-create-leads/
Create leads in HubSpot for selected companies
api_v1_crm_companies_hubspot_create_leads_create body → 202
GET
/api/v1/crm/companies/hubspot-create-leads/{run_uuid}/status/
Get HubSpot Create Leads run status
api_v1_crm_companies_hubspot_create_leads_status_retrieve 1 param → 200
GET
/api/v1/crm/companies/hubspot-owners/
List available HubSpot owners
api_v1_crm_companies_hubspot_owners_list 36 params → 200
GET
/api/v1/crm/companies/hubspot-pipelines/
List available HubSpot lead pipelines
api_v1_crm_companies_hubspot_pipelines_list 36 params → 200
POST
/api/v1/crm/companies/import-file/
Upload a JSON file and import companies asynchronously using the matching strategy. Accepts multipart form data with: - file: the JSON file - schema: one of the CrmImportSchema values — determines wh…
api_v1_crm_companies_import_file_create body → 200
GET
/api/v1/crm/companies/import-file/status/{task_id}/
Poll the status of a CRM file import task.
api_v1_crm_companies_import_file_status_retrieve 1 param → 200
GET
/api/v1/crm/contacts/
ViewSet for managing CRM contacts, including bulk import via CSV file upload.
api_v1_crm_contacts_list 12 params → 200
DELETE
/api/v1/crm/contacts/{uuid}/
ViewSet for managing CRM contacts, including bulk import via CSV file upload.
api_v1_crm_contacts_destroy 1 param → 204
POST
/api/v1/crm/contacts/{uuid}/enrich/
Enrich a contact with phone numbers and emails from an external provider. Authenticated via service account token (X-Service-Token header). Upserts phone and email fields in the contact fields table.
api_v1_crm_contacts_enrich_create 1 param body → 200
POST
/api/v1/crm/contacts/{uuid}/request-enrichment/
Forward a contact enrichment request to Clay. Called by the frontend when a user clicks Enrich on a contact card. Validates the payload then fires the Clay webhook asynchronously (fire-and-forget). R…
api_v1_crm_contacts_request_enrichment_create 1 param body → 200
POST
/api/v1/crm/contacts/bulk-import/
Bulk import CRM contacts from a CSV file upload. Accepts multipart/form-data with a 'file' field containing the CSV. Contacts are matched to existing CRM companies via the domain column. Rows with un…
api_v1_crm_contacts_bulk_import_create body → 200
GET
/api/v1/crm/custom-columns/
CRUD for CRM custom column definitions. All MoR users in the same company can list and use columns. Only the column creator can update or delete it.
api_v1_crm_custom_columns_list → 200
POST
/api/v1/crm/custom-columns/
CRUD for CRM custom column definitions. All MoR users in the same company can list and use columns. Only the column creator can update or delete it.
api_v1_crm_custom_columns_create body → 201
GET
/api/v1/crm/custom-columns/{uuid}/
CRUD for CRM custom column definitions. All MoR users in the same company can list and use columns. Only the column creator can update or delete it.
api_v1_crm_custom_columns_retrieve 1 param → 200
PUT
/api/v1/crm/custom-columns/{uuid}/
CRUD for CRM custom column definitions. All MoR users in the same company can list and use columns. Only the column creator can update or delete it.
api_v1_crm_custom_columns_update 1 param body → 200
PATCH
/api/v1/crm/custom-columns/{uuid}/
CRUD for CRM custom column definitions. All MoR users in the same company can list and use columns. Only the column creator can update or delete it.
api_v1_crm_custom_columns_partial_update 1 param body → 200
DELETE
/api/v1/crm/custom-columns/{uuid}/
CRUD for CRM custom column definitions. All MoR users in the same company can list and use columns. Only the column creator can update or delete it.
api_v1_crm_custom_columns_destroy 1 param → 204
GET
/api/v1/crm/enrichment-runs/
Read-only history of enrichment runs scoped to the requesting user's company.
api_v1_crm_enrichment_runs_list 3 params → 200
GET
/api/v1/crm/enrichment-runs/{uuid}/
Read-only history of enrichment runs scoped to the requesting user's company.
api_v1_crm_enrichment_runs_retrieve 1 param → 200
GET
/api/v1/crm/hubspot-sync-runs/
Read-only history of HubSpot sync runs scoped to the requesting user's company. Includes both view-scoped runs (auto-trigger and manual hubspot-sync action on saved views) and view-null runs (Create…
api_v1_crm_hubspot_sync_runs_list 3 params → 200
GET
/api/v1/crm/hubspot-sync-runs/{uuid}/
Read-only history of HubSpot sync runs scoped to the requesting user's company. Includes both view-scoped runs (auto-trigger and manual hubspot-sync action on saved views) and view-null runs (Create…
api_v1_crm_hubspot_sync_runs_retrieve 1 param → 200
GET
/api/v1/crm/import-runs/
Read-only history of CRM import runs scoped to the requesting user's company.
api_v1_crm_import_runs_list 3 params → 200
GET
/api/v1/crm/import-runs/{uuid}/
Read-only history of CRM import runs scoped to the requesting user's company.
api_v1_crm_import_runs_retrieve 1 param → 200
GET
/api/v1/crm/saved-views/
CRUD for CRM saved views. All MoR users in the same company can list, load, update, and delete views. Saving a view auto-triggers a HubSpot View Sync: POST creates always trigger, PATCH/PUT trigger o…
api_v1_crm_saved_views_list → 200
POST
/api/v1/crm/saved-views/
CRUD for CRM saved views. All MoR users in the same company can list, load, update, and delete views. Saving a view auto-triggers a HubSpot View Sync: POST creates always trigger, PATCH/PUT trigger o…
api_v1_crm_saved_views_create body → 201
GET
/api/v1/crm/saved-views/{uuid}/
CRUD for CRM saved views. All MoR users in the same company can list, load, update, and delete views. Saving a view auto-triggers a HubSpot View Sync: POST creates always trigger, PATCH/PUT trigger o…
api_v1_crm_saved_views_retrieve 1 param → 200
PUT
/api/v1/crm/saved-views/{uuid}/
CRUD for CRM saved views. All MoR users in the same company can list, load, update, and delete views. Saving a view auto-triggers a HubSpot View Sync: POST creates always trigger, PATCH/PUT trigger o…
api_v1_crm_saved_views_update 1 param body → 200
PATCH
/api/v1/crm/saved-views/{uuid}/
CRUD for CRM saved views. All MoR users in the same company can list, load, update, and delete views. Saving a view auto-triggers a HubSpot View Sync: POST creates always trigger, PATCH/PUT trigger o…
api_v1_crm_saved_views_partial_update 1 param body → 200
DELETE
/api/v1/crm/saved-views/{uuid}/
CRUD for CRM saved views. All MoR users in the same company can list, load, update, and delete views. Saving a view auto-triggers a HubSpot View Sync: POST creates always trigger, PATCH/PUT trigger o…
api_v1_crm_saved_views_destroy 1 param → 204
POST
/api/v1/crm/saved-views/{uuid}/enrich/
Trigger enrichment on a saved view
api_v1_crm_saved_views_enrich_create 1 param body → 202
GET
/api/v1/crm/saved-views/{uuid}/enrich/{run_uuid}/status/
Get enrichment run status and progress
api_v1_crm_saved_views_enrich_status_retrieve 2 params → 200
POST
/api/v1/crm/saved-views/{uuid}/hubspot-sync/
Re-trigger HubSpot View Sync for a saved view
api_v1_crm_saved_views_hubspot_sync_create 1 param → 202
GET
/api/v1/crm/saved-views/{uuid}/hubspot-sync/{run_uuid}/status/
Get HubSpot View Sync run status and progress
api_v1_crm_saved_views_hubspot_sync_status_retrieve 2 params → 200
GET
/api/v1/crm/settings/
Singleton CRM settings for the authenticated user's company. GET /api/v1/crm/settings/ — returns settings, auto-creating with defaults if absent. PATCH /api/v1/crm/settings/ — updates one or more set…
api_v1_crm_settings_retrieve → 200
PUT
/api/v1/crm/settings/
Singleton CRM settings for the authenticated user's company. GET /api/v1/crm/settings/ — returns settings, auto-creating with defaults if absent. PATCH /api/v1/crm/settings/ — updates one or more set…
api_v1_crm_settings_update body → 200
PATCH
/api/v1/crm/settings/
Singleton CRM settings for the authenticated user's company. GET /api/v1/crm/settings/ — returns settings, auto-creating with defaults if absent. PATCH /api/v1/crm/settings/ — updates one or more set…
api_v1_crm_settings_partial_update body → 200
GET
/api/v1/insights/{uuid}/
Buyer-scoped insights feed. Returns cursor-paginated insights, newest first. The queryset surfaces both insights bound to the authenticated user's company AND cross-portfolio insights with company IS…
api_v1_insights_retrieve 1 param → 200
GET
/api/v1/integrations/
Surface for third-party connector listing, connect-initiation, and revoke. Tokens are brokered by AgentCore Identity; this viewset only manages the ConnectorConnection mirror table and the audit trai…
api_v1_integrations_list → 200
GET
/api/v1/integrations/{provider}/
Surface for third-party connector listing, connect-initiation, and revoke. Tokens are brokered by AgentCore Identity; this viewset only manages the ConnectorConnection mirror table and the audit trai…
api_v1_integrations_retrieve 1 param → 200
DELETE
/api/v1/integrations/{provider}/
Surface for third-party connector listing, connect-initiation, and revoke. Tokens are brokered by AgentCore Identity; this viewset only manages the ConnectorConnection mirror table and the audit trai…
api_v1_integrations_destroy 1 param → 204403405502
POST
/api/v1/integrations/{provider}/agent-token/
Resolve a third-party access token for an agent runtime. Authenticated via the inbound agent JWT (audience opply-agents). The subject (user vs company) is derived from ConnectorDefinition.kind — call…
api_v1_integrations_agent_token_create 1 param body → 200401403502
GET
/api/v1/integrations/{provider}/callback/
OAuth callback. AgentCore Identity redirects the user's browser here after they complete consent on the third-party provider; we finalize the ConnectorConnection by calling verify and bounce the brow…
integrations_callback 2 params → 302405
POST
/api/v1/integrations/{provider}/connect/
Surface for third-party connector listing, connect-initiation, and revoke. Tokens are brokered by AgentCore Identity; this viewset only manages the ConnectorConnection mirror table and the audit trai…
api_v1_integrations_connect_create 1 param → 200403405502
POST
/api/v1/integrations/{provider}/verify/
Probe whether this connector's stored token is still usable for the caller's company, self-healing the row in both directions: a stale CONNECTED row is downgraded to NEEDSRECONNECT when the broker ca…
api_v1_integrations_verify_create 1 param → 200403502
POST
/api/v1/integrations/plaid/disconnect/
Disconnect Plaid entirely — revoke every Item and the parent connection. Backs the single per-provider "Disconnect" CTA on the connector card (the generic DELETE /integrations/plaid/ returns 405 for…
api_v1_integrations_plaid_disconnect_create → 204403
POST
/api/v1/integrations/plaid/exchange/
Shared admin gate for the per-tenant Plaid lifecycle endpoints.
api_v1_integrations_plaid_exchange_create body → 201403502
DELETE
/api/v1/integrations/plaid/items/{item_uuid}/
Shared admin gate for the per-tenant Plaid lifecycle endpoints.
api_v1_integrations_plaid_items_destroy 1 param → 204403
POST
/api/v1/integrations/plaid/link-token/
Shared admin gate for the per-tenant Plaid lifecycle endpoints.
api_v1_integrations_plaid_link_token_create body → 200403404502
POST
/api/v1/integrations/plaid/webhook/
Unauthenticated Plaid webhook sink. Identity comes from the verified JWT, never from request.user (Plaid carries no session).
api_v1_integrations_plaid_webhook_create → 200400
POST
/api/v1/integrations/unleashed/connect/
Shared admin gate for the per-tenant Unleashed lifecycle endpoints.
api_v1_integrations_unleashed_connect_create body → 201400403502
POST
/api/v1/integrations/unleashed/disconnect/
Disconnect Unleashed — delete the stored credentials and revoke the connection. Backs the single per-provider "Disconnect" CTA on the connector card (the generic DELETE /integrations/unleashed/ retur…
api_v1_integrations_unleashed_disconnect_create → 204403
POST
/api/v1/mcp
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_create → 200
DELETE
/api/v1/mcp
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_destroy → 204
POST
/api/v1/mcp/
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_create_2 → 200
DELETE
/api/v1/mcp/
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_destroy_2 → 204
GET
/api/v1/mcp/access-requests/
Access request workflow. Admin: GET /api/v1/mcp/access-requests/ → pending requests for the company PATCH /api/v1/mcp/access-requests/{uuid}/ → approve or deny Member: POST /api/v1/mcp/access-request…
api_v1_mcp_access_requests_list 2 params → 200
POST
/api/v1/mcp/access-requests/
Access request workflow. Admin: GET /api/v1/mcp/access-requests/ → pending requests for the company PATCH /api/v1/mcp/access-requests/{uuid}/ → approve or deny Member: POST /api/v1/mcp/access-request…
api_v1_mcp_access_requests_create body → 201
PATCH
/api/v1/mcp/access-requests/{uuid}/review/
Admin approves or denies an access request.
api_v1_mcp_access_requests_review_partial_update 1 param body → 200
GET
/api/v1/mcp/audit-log/
Read-only audit log. Admin: all entries for the company, filterable. Member: own entries only. GET /api/v1/mcp/audit-log/?toolname=&status=&datefrom=&dateto=
api_v1_mcp_audit_log_list 3 params → 200
GET
/api/v1/mcp/tools/
GET /api/v1/mcp/tools/ — list available MCP tools. Returns tools filtered by the caller's token scopes (if OAuth Bearer), or all tools for Token-auth users (admin/staff).
api_v1_mcp_tools_retrieve → 200
POST
/api/v1/mcp/unleashed
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_unleashed_create → 200
DELETE
/api/v1/mcp/unleashed
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_unleashed_destroy → 204
POST
/api/v1/mcp/unleashed/
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_unleashed_create_2 → 200
DELETE
/api/v1/mcp/unleashed/
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_unleashed_destroy_2 → 204
GET
/api/v1/mcp/user-access/
Admin-only management of per-user MCP access records. GET /api/v1/mcp/user-access/ → list all access records for the company POST /api/v1/mcp/user-access/ → grant access to a user PATCH /api/v1/mcp/u…
api_v1_mcp_user_access_list 2 params → 200
POST
/api/v1/mcp/user-access/
Admin-only management of per-user MCP access records. GET /api/v1/mcp/user-access/ → list all access records for the company POST /api/v1/mcp/user-access/ → grant access to a user PATCH /api/v1/mcp/u…
api_v1_mcp_user_access_create body → 201
PATCH
/api/v1/mcp/user-access/{uuid}/
Admin-only management of per-user MCP access records. GET /api/v1/mcp/user-access/ → list all access records for the company POST /api/v1/mcp/user-access/ → grant access to a user PATCH /api/v1/mcp/u…
api_v1_mcp_user_access_partial_update 1 param body → 200
DELETE
/api/v1/mcp/user-access/{uuid}/
Admin-only management of per-user MCP access records. GET /api/v1/mcp/user-access/ → list all access records for the company POST /api/v1/mcp/user-access/ → grant access to a user PATCH /api/v1/mcp/u…
api_v1_mcp_user_access_destroy 1 param → 204
GET
/api/v1/mcp/user-access/me/
Return the current user's own MCP access record.
api_v1_mcp_user_access_me_retrieve → 200
POST
/api/v1/mcp/zendesk
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_zendesk_create → 200
DELETE
/api/v1/mcp/zendesk
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_zendesk_destroy → 204
POST
/api/v1/mcp/zendesk/
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_zendesk_create_2 → 200
DELETE
/api/v1/mcp/zendesk/
MCP HTTP transport endpoint. Mounted at one path per server (/api/v1/mcp/ for the main Opply MCP, /api/v1/mcp/zendesk/, /api/v1/mcp/unleashed/ — see urls.py); the server attribute set via asview(serv…
api_v1_mcp_zendesk_destroy_2 → 204
GET
/api/v1/oauth/applications/
Admin-only management of OAuth2 Applications (django-oauth-toolkit). GET /api/v1/oauth/applications/ → list applications owned by the requesting user's company POST /api/v1/oauth/applications/ → regi…
api_v1_oauth_applications_list 2 params → 200
POST
/api/v1/oauth/applications/
Admin-only management of OAuth2 Applications (django-oauth-toolkit). GET /api/v1/oauth/applications/ → list applications owned by the requesting user's company POST /api/v1/oauth/applications/ → regi…
api_v1_oauth_applications_create body → 201
DELETE
/api/v1/oauth/applications/{id}/
Admin-only management of OAuth2 Applications (django-oauth-toolkit). GET /api/v1/oauth/applications/ → list applications owned by the requesting user's company POST /api/v1/oauth/applications/ → regi…
api_v1_oauth_applications_destroy 1 param → 204
POST
/api/v1/oauth/register/
RFC 7591 Dynamic Client Registration endpoint. Accepts client metadata and creates a DOT Application. Only localhost redirect URIs are permitted (MCP clients run on the user's machine).
api_v1_oauth_register_create → 200
POST
/api/v1/rapyd/cypress/create_beneficiary
api_v1_rapyd_cypress_create_beneficiary_create → 200
POST
/api/v1/rapyd/cypress/force_kyb
api_v1_rapyd_cypress_force_kyb_create → 200
POST
/api/v1/recommendations/
Buyer-scoped recommendations (the agent-curated nudge feed). Scoped to audience=buyer recommendations whose subject is the authenticated user's company. list defaults to state=active (the feed); pass…
api_v1_recommendations_create body → 201
GET
/api/v1/research/feedbacks/
api_v1_research_feedbacks_list 2 params → 200
POST
/api/v1/research/feedbacks/
api_v1_research_feedbacks_create body → 201
GET
/api/v1/research/feedbacks/{uuid}/
api_v1_research_feedbacks_retrieve 1 param → 200
PUT
/api/v1/research/feedbacks/{uuid}/
api_v1_research_feedbacks_update 1 param body → 200
PATCH
/api/v1/research/feedbacks/{uuid}/
api_v1_research_feedbacks_partial_update 1 param body → 200
DELETE
/api/v1/research/feedbacks/{uuid}/
api_v1_research_feedbacks_destroy 1 param → 204
GET
/api/v1/taxonomy/get-tree/
Get category taxonomy
api_v1_taxonomy_get_tree_list → 200
GET
/api/v2/notifications/company-overrides/
Company-wide overrides set by company admins. Querysets are scoped to request.usercompany (set by CompanyValidationMiddleware) so an admin in one company can't read or modify another's overrides.
api_v2_notifications_company_overrides_list 2 params → 200
POST
/api/v2/notifications/company-overrides/
Company-wide overrides set by company admins. Querysets are scoped to request.usercompany (set by CompanyValidationMiddleware) so an admin in one company can't read or modify another's overrides.
api_v2_notifications_company_overrides_create body → 201
GET
/api/v2/notifications/company-overrides/{id}/
Company-wide overrides set by company admins. Querysets are scoped to request.usercompany (set by CompanyValidationMiddleware) so an admin in one company can't read or modify another's overrides.
api_v2_notifications_company_overrides_retrieve 1 param → 200
PATCH
/api/v2/notifications/company-overrides/{id}/
Company-wide overrides set by company admins. Querysets are scoped to request.usercompany (set by CompanyValidationMiddleware) so an admin in one company can't read or modify another's overrides.
api_v2_notifications_company_overrides_partial_update 1 param body → 200
DELETE
/api/v2/notifications/company-overrides/{id}/
Company-wide overrides set by company admins. Querysets are scoped to request.usercompany (set by CompanyValidationMiddleware) so an admin in one company can't read or modify another's overrides.
api_v2_notifications_company_overrides_destroy 1 param → 204
POST
/api/v2/notifications/debug-dispatch/
POST /api/v2/notifications/debug-dispatch/ Body fields: - audiencetype: one of user / company / usertype / all. - targetuseremail (USER): the recipient's email. Defaults to the caller. - targetcompan…
api_v2_notifications_debug_dispatch_create → 200
GET
/api/v2/notifications/me/
In-app inbox for the authenticated user. GET /api/v2/notifications/me/ — paginated list of the user's notifications. GET /api/v2/notifications/me/unread-count/ — bell-badge count. POST /api/v2/notifi…
api_v2_notifications_me_list 3 params → 200
GET
/api/v2/notifications/me/{uuid}/
In-app inbox for the authenticated user. GET /api/v2/notifications/me/ — paginated list of the user's notifications. GET /api/v2/notifications/me/unread-count/ — bell-badge count. POST /api/v2/notifi…
api_v2_notifications_me_retrieve 1 param → 200
POST
/api/v2/notifications/me/{uuid}/archive/
In-app inbox for the authenticated user. GET /api/v2/notifications/me/ — paginated list of the user's notifications. GET /api/v2/notifications/me/unread-count/ — bell-badge count. POST /api/v2/notifi…
api_v2_notifications_me_archive_create 1 param body → 200
POST
/api/v2/notifications/me/{uuid}/read/
In-app inbox for the authenticated user. GET /api/v2/notifications/me/ — paginated list of the user's notifications. GET /api/v2/notifications/me/unread-count/ — bell-badge count. POST /api/v2/notifi…
api_v2_notifications_me_read_create 1 param body → 200
POST
/api/v2/notifications/me/mark-all-read/
In-app inbox for the authenticated user. GET /api/v2/notifications/me/ — paginated list of the user's notifications. GET /api/v2/notifications/me/unread-count/ — bell-badge count. POST /api/v2/notifi…
api_v2_notifications_me_mark_all_read_create body → 200
GET
/api/v2/notifications/me/unread-count/
In-app inbox for the authenticated user. GET /api/v2/notifications/me/ — paginated list of the user's notifications. GET /api/v2/notifications/me/unread-count/ — bell-badge count. POST /api/v2/notifi…
api_v2_notifications_me_unread_count_retrieve → 200
GET
/api/v2/notifications/preferences/
Per-user opt-outs. Listed and mutated only by the owner. Mandatory kinds are accepted at the serializer layer but ignored at dispatch time.
api_v2_notifications_preferences_list 2 params → 200
POST
/api/v2/notifications/preferences/
Per-user opt-outs. Listed and mutated only by the owner. Mandatory kinds are accepted at the serializer layer but ignored at dispatch time.
api_v2_notifications_preferences_create body → 201
GET
/api/v2/notifications/preferences/{id}/
Per-user opt-outs. Listed and mutated only by the owner. Mandatory kinds are accepted at the serializer layer but ignored at dispatch time.
api_v2_notifications_preferences_retrieve 1 param → 200
PUT
/api/v2/notifications/preferences/{id}/
Per-user opt-outs. Listed and mutated only by the owner. Mandatory kinds are accepted at the serializer layer but ignored at dispatch time.
api_v2_notifications_preferences_update 1 param body → 200
PATCH
/api/v2/notifications/preferences/{id}/
Per-user opt-outs. Listed and mutated only by the owner. Mandatory kinds are accepted at the serializer layer but ignored at dispatch time.
api_v2_notifications_preferences_partial_update 1 param body → 200
DELETE
/api/v2/notifications/preferences/{id}/
Per-user opt-outs. Listed and mutated only by the owner. Mandatory kinds are accepted at the serializer layer but ignored at dispatch time.
api_v2_notifications_preferences_destroy 1 param → 204
GET
/api/v2/notifications/preferences/categories/
User-facing list of toggleable notification categories. Returns every non-SYSTEM category that has at least one NotificationKind (registered in :data:ALLKINDS) relevant to the caller's company type —…
api_v2_notifications_preferences_categories_list → 200
PUT
/api/v2/notifications/preferences/upsert/
Idempotent write for a single (category, channel) preference row. The viewset's POST/PATCH pair require the caller to know the row's primary key. The Settings UI doesn't — it just wants "set EMAIL fo…
api_v2_notifications_preferences_upsert_update body → 200

Schemas 159

The contract defines 159 schemas that model the data the API accepts and returns. The most detailed are CrmCompanyData (33 properties), OrderAdjustmentDetail (25 properties), BuyerOrderAdjustmentDetail (24 properties), SupplierDocument (19 properties). Each schema is shown below with its type and property counts.

AgentResponseFeedback
object
Outbound shape — returned by POST /api/v1/agents/feedback/.
9 properties 9 required
LeadGenerationJob
object
Serializer for LeadGenerationJob model - isolated feature
4 properties 4 required
OrderAdjustmentStatusEnum
string
available - Available pendingapplication - Pending Application applied - Applied void - Void
PlaidItemStatusEnum
string
good - Good loginrequired - Login required pendingexpiration - Pending expiration revoked - Revoked error - Error
IssueTypeEnum
string
INCORRECTOUTPUT - Incorrect Output INCOMPLETE - Incomplete SLOW - Slow HALLUCINATION - Hallucination FORMATTINGISSUE - Formatting Issue UXISSUE - UX Issue SECU…
CortexWorkflowWithJobs
object
List all workflows with their associated jobs.
8 properties 7 required
McpAuditLog
object
14 properties 14 required
PaginatedHubSpotPipelineList
object
4 properties 2 required
ScoringDebug
object
7 properties 7 required
AgentFeedback
object
Used for reading feedbacks.
12 properties 8 required
NullEnum
CortexWorkflowTypeEnum
string
FINANCE - Finance PREDICTIONS - Predictions COMPLIANCE - Compliance LOGISTICS - Logistics ORDERS - Orders
ConnectorVerifyResponseStatusEnum
string
connected - connected needsreconnect - needsreconnect notconnected - notconnected
OrderAdjustmentTypeEnum
string
creditnote - Credit Note debitnote - Debit Note
PaginatedOAuthApplicationList
object
4 properties 2 required
PaginatedCrmCompanyList
object
4 properties 2 required
ConnectorConnectionStatusEnum
string
pending - Pending OAuth completion connected - Connected needsreconnect - Needs reconnect revoked - Revoked error - Error
EnrichmentRunDetail
object
Detail representation for the enrichment run history endpoint.
12 properties 6 required
OrderAdjustmentCreate
object
Multipart create payload for POST .../order-adjustments/. originatingorderuuid is validated for UUID format only — the order is looked up against a tenant-scop…
6 properties 6 required
ConnectorKindEnum
string
peruser - Per user pertenant - Per tenant
PatchedCompanyNotificationOverride
object
3 properties
PatchedMcpUserAccess
object
13 properties
PatchedCrmSavedView
object
12 properties
EnrichViewRequest
object
Input for triggering enrichment on a saved view.
3 properties
AvailableSitesResponse
object
2 properties 2 required
HubSpotSyncRunTypeEnum
string
viewsync - View Sync createleads - Create Leads dealstaterefresh - Deal/Lead State Refresh companiesupload - Companies Upload
InitiateResponse
object
2 properties 2 required
PaginatedAlertsList
object
4 properties 2 required
BuyerOrderAdjustmentDetail
object
Buyer-facing detail serializer. Fields are listed explicitly (allowlist) rather than excluding supplierdocumenturl from the parent's list, so any future field…
24 properties 24 required
EnrichmentRun
object
Serializer for enrichment run status, including progress percentage.
10 properties 4 required
PaginatedMcpUserAccessList
object
4 properties 2 required
HubSpotSyncRunDetail
object
Detail representation for the run history endpoint.
16 properties 4 required
ConnectorTenantModeEnum
string
none - None (per-user connector) sharedtoken - Shared admin token adminconsent - Provider admin-consent
SupplierSite
object
3 properties 3 required
CortexJob
object
Used for reading jobs (and nested under workflows).
10 properties 8 required
CrmSettings
object
Serializer for per-company CRM settings (singleton). The company field is set server-side and is not exposed.
4 properties 3 required
CreatedBy
object
2 properties 2 required
PaginatedEnrichmentRunListList
object
4 properties 2 required
BlankEnum
UnleashedConnectResponse
object
2 properties 2 required
TrendsAlertTypeEnum
string
critical - Critical baseline - Baseline stressscenario - Stress Scenario optimisticscenario - Optimistic Scenario
PatchedCortexWorkflowWithJobs
object
List all workflows with their associated jobs.
8 properties
PaginatedNotificationPreferenceList
object
4 properties 2 required
FeedbackTagEnum
string
accurate - accurate savedtime - savedtime goodjudgement - goodjudgement slow - slow hallucination - hallucination missedcontext - missedcontext wrongsupplier -…
HubSpotDealStageEnum
string
nodeal - No Deal inprogress - In Progress won - Won lost - Lost
PaginatedCompanyNotificationOverrideList
object
4 properties 2 required
MerchantOfRecordNote
object
5 properties 5 required
PaginatedHubSpotSyncRunListList
object
4 properties 2 required
Alerts
object
Serializer for Alerts model - isolated feature
7 properties 7 required
PaginatedForecastList
object
4 properties 2 required
AvailableCurrenciesEnum
string
EUR - EUR GBP - GBP USD - USD
PaginatedNotificationRecipientList
object
4 properties 2 required
PlaidExchangeRequest
object
Body for plaid/exchange/ — the Link onSuccess payload.
3 properties 1 required
PaginatedCortexJobList
object
4 properties 2 required
AgentFeedbackCreate
object
Accepts a workflow by UUID for creation convenience.
8 properties 4 required
PaginatedTrendsList
object
4 properties 2 required
McpScopeKeyEnum
string
all:read - Read access to all MCP tools all:write - Write access to all MCP tools orders:read - Read order data orders:write - Create and modify orders compani…
PaginatedAgentFeedbackList
object
4 properties 2 required
CrmImportRunStatusEnum
string
pending - Pending inprogress - In Progress success - Success failure - Failure
CortexJobUpdate
object
Partial updates: agentname, description, status.
4 properties
PatchedAgentFeedback
object
Used for reading feedbacks.
12 properties
OAuthApplication
object
Serializer for OAuth Application management (admin-only).
8 properties 6 required
CortexJobStatusEnum
string
PENDING - Pending EXECUTING - Executing COMPLETED - Completed AWAITINGHUMAN - Awaiting Human
ActionPreferenceEnum
string
ACCEPTFINAL - Accept as Final NEEDSREVIEW - Needs Manual Review RERUN - Rerun ESCALATE - Escalate to Human DISCARD - Discard
AgentResponseFeedbackRequest
object
Inbound shape for POST /api/v1/agents/feedback/. Polarity validation enforces that a positive ratingvalue only carries positive tags and a negative one only ca…
8 properties 3 required
HubSpotSyncStatusEnum
string
pending - Pending synced - Synced failed - Failed notfound - Not Found
McpAuditStatusEnum
string
success - Success error - Error denied - Denied
OrderAdjustmentApply
object
Body for POST .../order-adjustments/{uuid}/apply/. targetorderuuid is validated for UUID format only; the view performs a tenant-scoped lookup. See OrderAdjust…
1 property 1 required
PaginatedMcpAuditLogList
object
4 properties 2 required
RecommendationInsightRoleEnum
string
primary - Primary supporting - Supporting
PaginatedMcpAccessRequestList
object
4 properties 2 required
AgentDetailError
object
Common error envelope for the agents session endpoints — returns {"detail": "..."} on every non-2xx response.
1 property 1 required
CrmContact
object
6 properties 6 required
EnrichmentProcessNameEnum
string
icpscoring - ICP Scoring companyemployeedata - Company Employee Data contactenrichment - Contact Enrichment
ClientTypeEnum
string
confidential - Confidential public - Public
PaginatedSupplierDocumentList
object
4 properties 2 required
Forecast
object
Serializer for Forecast model - isolated feature
7 properties 7 required
CategoryPreference
object
One row in the GET /preferences/categories/ response.
2 properties 2 required
CortexJobCreate
object
Accepts a workflow by UUID for creation convenience.
6 properties 5 required
PatchedSupplierDocument
object
19 properties
AuthorizationGrantTypeEnum
string
authorization-code - Authorization code urn:ietf:params:oauth:grant-type:devicecode - Device Code implicit - Implicit password - Resource owner password-based…
AgentSessionMessageRoleEnum
string
user - user assistant - assistant
DocumentLifecycleStatusEnum
string
valid - Valid expired - Expired expiringsoon - Expiring Soon renewed - Renewed
CrmImportRunDetail
object
Detail representation for the CRM import run history endpoint.
12 properties 4 required
AgentTokenRequest
object
JSON body the agent runtime POSTs to agent-token. The runtime passes the active turn's companyuuid so the lookup targets the right tenant for multi-company use…
1 property
AgentSessionMessage
object
One persisted conversation message in the chat transcript. Mirrors Strands' MessageData shape ({role, content}) for the roles + content blocks we persist betwe…
5 properties 2 required
ConnectorVerifyResponse
object
Coarse, closed-union result of the pre-flight token probe. Deliberately NOT the full ConnectorConnectionStatus set — the FE only needs to know whether the conn…
1 property 1 required
PatchedMcpAccessRequest
object
10 properties
CategoryChannelState
object
Per-channel boolean map returned by GET /preferences/categories/. Declared explicitly so drf-spectacular knows the response shape — the in-line dict the action…
2 properties 2 required
PaymentProviderEnum
string
stripe - Stripe two - Two direct - Direct
PlaidLinkTokenRequest
object
Body for plaid/link-token/. itemuuid puts Link into update mode to re-auth an existing Item (e.g. after ITEMLOGINREQUIRED); omit it to link a new bank.
1 property
Connector
object
Read-only view of a connector definition merged with its connection state.
15 properties 14 required
PlaidExchangeResponseStatusEnum
string
ok - ok
DnsCheckStatusEnum
string
pending - Pending success - Success error - Error notfound - Not Found
ChannelEnum
string
email - Email inapp - In App
PlaidItem
object
Read-only view of one linked Plaid Item (bank connection).
6 properties 6 required
CrmCompanyEnrichedFields
object
4 properties 2 required
CrmCustomColumnTypeEnum
string
numeric - Numeric text - Text llm - LLM score - Score
AgentSessionMessages
object
Envelope returned by GET /sessions/me/events/ carrying the user's chat transcript projected from the agent's snapshot.
1 property 1 required
EnrichmentRunList
object
List representation for the enrichment run history endpoint.
10 properties 6 required
EnrichmentRunCreated
object
Response after triggering enrichment.
1 property 1 required
RecommendationAudienceEnum
string
buyer - Buyer mor - Merchant of Record supplier - Supplier
PaginatedLeadGenerationJobList
object
4 properties 2 required
ScoringSignal
object
4 properties 4 required
CrmImportRunList
object
List representation for the CRM import run history endpoint.
10 properties 4 required
CrmContactFieldTypeEnum
string
companyname - Company Name firstname - First Name lastname - Last Name fullname - Full Name jobtitle - Job Title location - Location linkedinurl - LinkedIn URL…
CrmCustomColumn
object
8 properties 7 required
PaginatedCortexWorkflowWithJobsList
object
4 properties 2 required
UnleashedConnectRequest
object
Body for unleashed/connect/ — the API credentials the user pastes. Same endpoint backs both first connect and reconnect (re-pasting rotated credentials). Value…
2 properties 2 required
McpUserAccess
object
13 properties 10 required
CrmCompanyData
object
33 properties 4 required
PatchedCrmCustomColumn
object
8 properties
OrderAdjustmentDetail
object
Full read serializer for the MoR detail / post-action responses. Exposes supplierdocumenturl because the supplier-uploaded credit/debit note is internal-facing…
25 properties 25 required
NotificationPreference
object
4 properties 3 required
RecursiveTaxonomy
object
Recursive serializer for a taxonomy node:
4 properties 4 required
AgentTokenErrorResponse
object
Stable client message surfaced on upstream identity-broker failures.
1 property 1 required
CompanyNotificationOverride
object
3 properties 2 required
HubSpotCreateLeadsRequest
object
3 properties 3 required
CrmSavedView
object
12 properties 10 required
OrderAdjustmentList
object
Lightweight read serializer for the apply-picker list endpoint.
14 properties 14 required
FeedbackRatingEnum
string
GOOD - Good BAD - Bad
RecommendationCreate
object
Agent write-path serializer (behind the createrecommendation MCP tool). No impact field exists here — impact is read from the cited insight at render time, so…
10 properties 4 required
RecommendationSeverityEnum
integer
1 - Low 2 - Medium 3 - High 4 - Critical
AgentTokenResponse
object
Token-resolution outcome surfaced to the agent runtime. status: - ok — connection found and the vault returned a usable token. accesstoken and expiresin are po…
3 properties 1 required
PatchedCrmSettings
object
Serializer for per-company CRM settings (singleton). The company field is set server-side and is not exposed.
4 properties
HubSpotSyncRun
object
Status payload for hubspot-create-leads runs. Includes phase + contact-enrichment counters when the run was started via the LLM-gated flow (ENABLECONTACTENRICH…
12 properties 12 required
ConfidenceLevelEnum
string
CONFIDENT - Confident UNSURE - Unsure NOTCONFIDENT - Not Confident
PaginatedCrmImportRunListList
object
4 properties 2 required
McpAccessRequestStatusEnum
string
pending - Pending approved - Approved denied - Denied
Trends
object
Serializer for Trends model - isolated feature
7 properties 7 required
DocumentType
object
Shared serializer for the DocumentType taxonomy (buyer, supplier, Opply documents).
3 properties 2 required
SupplierDocument
object
19 properties 11 required
MessageAttachmentDispositionEnum
string
sent - Sent suspicious - Suspicious skippedtimeout - Not used (scan pending)
PaginatedHubSpotOwnerList
object
4 properties 2 required
InsightRead
object
Read view of an Insight for the buyer-facing rail. insighttype is the model column verbatim where it matches one of the known InsightType values; otherwise it…
16 properties 8 required
PatchedNotificationPreference
object
4 properties
CrmImportRunTypeEnum
string
companiesbulk - Companies Bulk Import companiesfile - Companies File Import contactscsv - Contacts CSV Import
NotificationRecipientStateEnum
string
queued - Queued sent - Sent delivered - Delivered read - Read archived - Archived failed - Failed
HubSpotSyncRunCreated
object
1 property 1 required
_RecommendationInsightWrite
object
2 properties 1 required
PlaidLinkTokenResponse
object
2 properties 1 required
MessageAttachmentRef
object
One attachment ref carried on a message's metadata["attachments"] (SC-4146). Channel-neutral and reusable by any message serializer (agent chat today; task cha…
4 properties 4 required
McpAccessRequest
object
10 properties 9 required
AgentSession
object
Read shape for the active AgentCore session pointer. Surfaces sessionid plus lastusedat so the FE can decide whether a hydrated value is stale enough to warran…
4 properties 4 required
HubSpotOwner
object
4 properties 4 required
CortexWorkflowCreate
object
4 properties 3 required
PaginatedCrmContactList
object
4 properties 2 required
CrmCompany
object
11 properties 10 required
NotificationPreferenceUpsert
object
Write-only payload for PUT /preferences/upsert/. Declared as a plain Serializer (not a ModelSerializer) so the generated TS schema doesn't carry the read-only…
3 properties 3 required
CreatorEnum
string
paymentagent - Payment Agent debtagent - Debt Agent onboardingagent - Onboarding Agent demandforecaster - Demand Forecaster supplieroptimizer - Supplier Optimi…
HubSpotSyncRunList
object
List representation for the run history endpoint.
11 properties 4 required
HubSpotPipeline
object
2 properties 2 required
AgentTokenResponseStatusEnum
string
ok - ok notconnected - notconnected needsreconnect - needsreconnect
NotificationRecipient
object
One in-app inbox row from the recipient's perspective.
13 properties 13 required
CrmContactField
object
3 properties 3 required
PatchedCortexJobUpdate
object
Partial updates: agentname, description, status.
4 properties
PaginatedOrderAdjustmentListList
object
4 properties 2 required
PlaidExchangeResponse
object
2 properties 2 required
NotificationCategoryEnum
string
tasks - Tasks taskmentions - Task Mentions updates - Updates system - System

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

opply-api-api-openapi.yml Raw ↑

Other APIs Opply publishes across the network.

Opply Activity Feed API
Opply Admin panel API
Opply Agents API
Opply Agreements API
Opply App Orders API
Opply Brain API
Opply Brands API
Opply Buyer Documents API
Opply Buyer Financial Documents API
Opply Buyer Onboarding API
Opply Buyer self-onboarding API
Opply Buyers API
Where this information came from

This is an independent, third-party profile of Opply api API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.