Creates a draft contract

Stages a contract in the "draft" holding state instead of creating it directly as an active contract.
Draft contracts appear in the Rillet UI under "Draft" for a human to approve or reject.

Deduplication

To prevent duplicate draft contracts on retry, supply at least one external_references entry with a
stable (type, id) pair.
When you POST again with any matching (type, id) pair, the prior draft record
is replaced with the new payload.

Draft contracts created without any external_references are not deduplicated — every POST creates a new
record.

External reference types

Each reference's type must match a slug already defined under Rillet Settings → External References for
the organization; unknown slugs return a 400. References attached at create time are preserved when the
draft contract is promoted to an active contract.

Promotion

Promotion to an active contract happens through the Rillet UI. The public API does not currently expose a
programmatic promotion endpoint.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
external_references
array of objects, unique

Cross-system identifiers for this draft contract. Each reference's type slug must already exist in
the org's external reference types (configurable in Rillet Settings).

Required for deduplication. Re-posting with any matching (type, id) pair replaces the prior draft
record. Draft contracts created without external_references are not deduplicated.

external_references
uuid
required
uuid
required

Must reference a customer that already exists in Rillet. Use POST /customers first if needed.

string
required
amount
object
required
date
required
date
date
string
enum
required

The "FULL" scope includes revenue recognition and invoicing handled in Rillet. With the "REVENUE_RECOGNITION_ONLY" scope, invoicing is handled outside Rillet.

Allowed:
items
array of objects
required
length ≥ 1

Contract line items. At least one item is required.

items*
Responses

Language
Credentials
Bearer
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json