Skip to main content
POST
Create a contract template

Authorizations

Authorization
string
header
required

An API key from Settings, API keys. It starts with rc_live_.

Body

application/json
name
string
required

What the template is called.

body
string
required

The contract as plain text. Merge fields are written in double braces, such as {{adopter_name}}.

version
string
default:v1

Your own label for this version, such as 2026-standard. A name and version can be used once.

kind
enum<string>
default:adoption

What it is signed on: an adoption, a foster placement, a surrender (an intake), or other.

Available options:
adoption,
foster,
surrender,
other
body_blocks
object[]

The contract as a formatted document. When sent, its text becomes the body.

conditions
object

When a template is offered. Every condition given must hold; none at all means every animal. A key not listed here is refused.

field_conditions
object[]

Conditions on the animal's or the adopter's own fields. Every one must hold.

Maximum array length: 10
asks
enum<string>[]

What is asked at signing: the media release, the payment and how to complete it, the team member approving, and where it was completed.

Available options:
media_release,
payment,
approver,
completed_where

Response

The template.

template
object
required