Skip to main content
POST
Create/offer a contract

Authorizations

Authorization
string
header
required

OAuth 2.1 authorization code + PKCE (S256). Tokens are tenant-bound (company_id) and scoped. Discover endpoints via /.well-known/oauth-authorization-server.

Headers

Idempotency-Key
string

Client-chosen key; replaying the same key + body returns the original response, a different body returns 409.

Body

application/json

UI-equivalent single-create. companyId/companyName are server-resolved from the token tenant (not accepted here). The legacy campaign-creation side-channel, custom templates, signed-name and CC-emails are not exposed.

programId
string
required
Minimum string length: 1
contractorId
string
required
Minimum string length: 1
contractorName
string
required
Minimum string length: 1
paymentStructure
object
requirements
object

Response

Contract created.

data
object
required