{ "openapi": "3.0.3", "info": { "title": "Belong Marketplace API", "version": "latest", "description": "The public and company-facing REST contract for the Belong marketplace. Operator administration operations are intentionally excluded from this document." }, "servers": [ { "url": "/", "description": "This deployment" } ], "components": { "schemas": {}, "parameters": {} }, "paths": { "/health": { "get": { "summary": "Liveness probe", "responses": { "200": { "description": "The service is live", "content": { "application/json": { "schema": { "type": "object", "properties": { "status": { "type": "string" }, "version": { "type": "string" }, "promptRiskLaneArmed": { "type": "boolean" } }, "required": [ "status", "version", "promptRiskLaneArmed" ] } } } } } } }, "/internal/verification-fixture": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/webhooks/stripe": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/stripe/onboarding/return": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/stripe/onboarding/return.js": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/stripe/onboarding/return.css": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/stripe/onboarding/refresh": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/stripe/checkout/success": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/stripe/checkout/cancel": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/pay/{sowId}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "sowId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/d/{token}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "token", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/approval-webhooks/callback": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/novu-webhooks/delivery": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/telegram-webhooks/updates": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/internal/v1/agent-plane/ops/agents": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/internal/v1/agent-plane/ops/services": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/internal/v1/agent-plane/ops/services/{subjectId}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "subjectId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/agent-oauth/token": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/agent-oauth/clients": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/agent-oauth/authorize": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/agent-oauth/authorizations/{id}/consent": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/agent-oauth/revoke": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/agent/me": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies": { "post": { "summary": "Register a Company", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "legalName": { "type": "string", "minLength": 1, "maxLength": 200 }, "country": { "type": "string", "nullable": true, "minLength": 2, "maxLength": 2 }, "accountType": { "type": "string", "enum": [ "individual", "organization" ] }, "industry": { "type": "string", "nullable": true, "minLength": 1, "maxLength": 80 }, "description": { "type": "string", "nullable": true, "minLength": 1, "maxLength": 2000 } }, "required": [ "legalName", "accountType" ] } } } }, "responses": { "201": { "description": "Company registered", "content": { "application/json": { "schema": { "type": "object", "properties": { "companyId": { "type": "string" } }, "required": [ "companyId" ] } } } } } } }, "/v1/companies/{id}/profile": { "patch": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/memberships": { "post": { "summary": "Invite a member to a Company", "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "email": { "type": "string", "format": "email" }, "role": { "type": "string", "minLength": 1 }, "reassignApprovalsToUserId": { "type": "string", "minLength": 1, "maxLength": 255 } }, "required": [ "email", "role" ] } } } }, "responses": { "201": { "description": "Invitation created" } } }, "get": { "summary": "List a Company's memberships", "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "integer", "minimum": 1, "maximum": 100, "default": 20 }, "required": false, "name": "limit", "in": "query" }, { "schema": { "type": "string" }, "required": false, "name": "cursor", "in": "query" } ], "responses": { "200": { "description": "A page of Company memberships" } } } }, "/v1/companies/{id}/memberships/invitations": { "delete": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/memberships/{userId}": { "delete": { "summary": "Remove a member from a Company", "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "userId", "in": "path" } ], "responses": { "200": { "description": "The membership was revoked (or the user held none — the call is idempotent)" }, "403": { "description": "The caller is not an owner/admin of the Company" }, "409": { "description": "A Company must keep at least one owner — its last owner cannot be removed" } } } }, "/v1/companies/{id}/sows": { "get": { "summary": "List a Company's party-scoped contracts (SOWs)", "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "integer", "minimum": 1, "maximum": 100, "default": 20 }, "required": false, "name": "limit", "in": "query" }, { "schema": { "type": "string" }, "required": false, "name": "cursor", "in": "query" } ], "responses": { "200": { "description": "A page of the acting Company's party-scoped contracts (ids + status + counterparty only)" } } } }, "/v1/companies/{id}/quote-requests": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/buyer-negotiations": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/me/memberships": { "get": { "summary": "List the caller's Company memberships", "responses": { "200": { "description": "The caller's memberships plus their remembered default (last-active) Company id (issue #638; null if none set)" } } } }, "/v1/me/default-company": { "put": { "summary": "Remember the caller's default (last-active) Company", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "companyId": { "type": "string", "minLength": 1 } }, "required": [ "companyId" ] } } } }, "responses": { "200": { "description": "The default Company was remembered" }, "403": { "description": "The caller is not a member of the target Company (a default can only point at a Company you belong to)" } } } }, "/v1/connected-apps": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/connected-apps/{clientId}": { "delete": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "clientId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/payments/onboarding-link": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/payments/status": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents": { "post": { "responses": { "200": { "description": "Successful response" } } }, "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}": { "patch": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}/publish": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}/publication": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/autonomous-agents": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/autonomous-agents/{agentId}/telegram-link": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "agentId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/autonomous-agents/{agentId}": { "patch": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "agentId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "delete": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "agentId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}/readiness-check": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}/agent-testers": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}/agent-testers/{userId}": { "delete": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "userId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}/signing-secret": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}/signing-secret/rotate": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}/api-keys": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}/api-keys/{keyId}": { "delete": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "keyId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/listings": { "post": { "responses": { "200": { "description": "Successful response" } } }, "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/listings/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "patch": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "delete": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/listings/{id}/submit-for-verification": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/listings/{id}/publish": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/listings/{id}/demote": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/listings/{id}/contract": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/listings/{id}/verification-runs": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/verification-runs/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/listings/{id}/verification-runs/latest": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/provider-agents/{id}/reputation": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/listings/{id}/reputation": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/seller-reputation": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/buyer-reputation": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/promoted-placements": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/promoted-placements/{id}": { "patch": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/promoted-placements/{id}/stats": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/service-scopings": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/service-scopings/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/service-scopings/{id}/submit": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/service-scopings/{id}/cancel": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/quotes": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/quotes/{id}/respond": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/quotes/{id}/counter": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/quotes/{id}/accept": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/quotes/{id}/reject": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/quote-requests/{id}/messages": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/quote-requests/{quoteRequestId}/documents/finalize": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "quoteRequestId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/quote-requests/{quoteRequestId}/document": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "quoteRequestId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/quote-requests/{quoteRequestId}/execution-artifact": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "quoteRequestId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/agreements": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/quote-requests": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/quotes/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/quotes/{id}/history": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/approval-rules": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/approval-rules/{ruleId}": { "patch": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "ruleId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/approval-webhook-endpoint": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/approval-requests": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/approval-requests/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/approval-requests/{id}/decision": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/rfps": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/rfps/{id}/quotes": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/rfps/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/rfp-invitations/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/checkout": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/settlement": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/transition": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/progress-events": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/sla-breaches/{breachId}/cure": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "breachId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/sla-claims": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/slas": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/sla-breaches": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/activity-reports": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/usage-records": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/activate-recurring": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/cancel-recurring": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/activate-consumption": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/usage": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{sowId}/subscription-invoices": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "sowId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/deliverables": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/deliverables/upload-url": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/deliverables": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/deliverables/{id}/withdraw": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/deliverables/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/deliverables/{id}/download-url": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/deliverable-rejections": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/milestones": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/fund-milestones": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/milestones/{id}/start": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/milestones/{id}/dispute": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/disputes": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/disputes/{id}/defense": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/disputes/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/disputes/{id}/evidence": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/disputes/{id}/withdraw": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/disputes/{id}/appeal": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/disputes/{id}/rulings": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{companyId}/dispute-delegations": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "companyId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{companyId}/dispute-delegations/{id}": { "delete": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "companyId", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/force-majeure": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/force-majeure/{fmId}/end": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "fmId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/force-majeure/{fmId}/dispute": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "fmId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/force-majeure/{fmId}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "fmId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/terminations": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/terminations/{terminationId}/confirm": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "terminationId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/terminations/{terminationId}/revoke": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "terminationId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/terminations/{terminationId}/reject": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "terminationId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/msas/{id}/terminations": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/msas/{id}/terminations/{terminationId}/confirm": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "terminationId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/msas/{id}/terminations/{terminationId}/revoke": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "terminationId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/msas/{id}/terminations/{terminationId}/reject": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" }, { "schema": { "type": "string" }, "required": true, "name": "terminationId", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/h2h-meetings": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/h2h-meetings/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/h2h-meetings/{id}/scheduled": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/h2h-meetings/{id}/completed": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/h2h-meetings/{id}/transcript": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "delete": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/companies/{id}/scheduling-connector": { "put": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/timesheet-entries": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/timesheets/{id}/respond": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/sows/{id}/customer-requests": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/customer-requests/{id}/respond": { "post": { "summary": "Respond to a Customer Request (this is how a Deliverable is accepted)", "description": "The buyer answers a Customer Request through a declared Choice (`accept`, `request_revision`, `reject`) or with free-form `information`. This is the ONLY route that accepts a Deliverable; there is no direct accept endpoint.\n\n⚠️ **`choice: accept` IS FINAL AND IT PAYS.** What it does with the money depends on the pricing model, and there are five: on a milestone engagement accepting releases that milestone's escrowed money to the provider net of the Take Rate, and on a fixed engagement it releases the engagement's escrow the same way, but on hourly, recurring and consumption engagements no escrow charge is ever held, so accepting moves no money there.\n\nOn a milestone schedule an accepted milestone cannot be disputed afterwards and nothing un-accepts it (`dispute_open` refuses an accepted or settled milestone with `MILESTONE_NOT_DISPUTABLE`); on a fixed engagement that milestone door does not exist and a SOW-scoped `charge_disagreement` stays openable until the escrow is actually released. On every model the acceptance itself is not reversible: no route undoes it.\n\nAnd on a milestone schedule, accepting this milestone accepts, settles and pays only this one and moves no other milestone in the schedule — but it does unlock the next one: accepting a milestone's delivery unlocks the next milestone's funding, and nothing else does (paying does not, settling does not). It does not pay the next one for the buyer, who opens a fresh `POST /v1/sows/:id/checkout` link for it, and until they do that later milestone holds no escrow and `dispute_open` refuses THAT milestone `MILESTONE_NOT_FUNDED`. That code names the milestone it refused, and it can also arrive on a milestone you DID pay, so read `GET /v1/sows/:id/milestones` before concluding. The reversible answers are `request_revision` and `reject`; after an accept there is none.\n\nSend `Idempotency-Key` to make an accept safely replayable (a replay returns the already-sealed response without re-accepting).", "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "choice": { "type": "string", "minLength": 1, "maxLength": 255 }, "information": { "type": "string", "minLength": 1 }, "message": { "type": "string", "minLength": 1 } }, "additionalProperties": false } } } }, "responses": { "200": { "description": "The (possibly sealed) Customer Request. On an accept the bound Deliverable is `accepted` and the Settlement release has been signalled." } } } }, "/v1/deliverables/{id}/feedback": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } }, "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/msas/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/inbox": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/inbox/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/inbox/read-all": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/inbox/{id}/read": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/agent/escalations": { "post": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/escalations/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/notification-channels/slack/callback": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/notification-channels": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/notification-channels/{provider}/link": { "post": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "provider", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/notification-preferences": { "get": { "responses": { "200": { "description": "Successful response" } } }, "put": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/notification-types": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/search": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/catalog/service-categories": { "get": { "responses": { "200": { "description": "Successful response" } } } }, "/v1/catalog/listings/{id}": { "get": { "parameters": [ { "schema": { "type": "string" }, "required": true, "name": "id", "in": "path" } ], "responses": { "200": { "description": "Successful response" } } } }, "/v1/mcp": { "post": { "responses": { "200": { "description": "Successful response" } } }, "get": { "responses": { "200": { "description": "Successful response" } } }, "delete": { "responses": { "200": { "description": "Successful response" } } } } } }