changedInput schema / properties / body / anyOf
Previous value: -[
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `NDA`. NDA terms live directly on the agreement (`purpose`, `term`, `confidentiality_period`), so an NDA draft has no term object of its own.",
- "properties": {
- "agreement": {
- "additionalProperties": {},
- "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
- "properties": {
- "additional_changes": {
- "description": "Free-text changes shown on the cover page.",
- "type": "string"
- },
- "agreement_roles_attributes": {
- "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
- "items": {
- "additionalProperties": false,
- "properties": {
- "id": {
- "description": "The UUID of an existing role. Omit when adding a new person.",
- "format": "uuid",
- "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
- "type": "string"
- },
- "role": {
- "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
- "enum": [
- "cc"
- ],
- "type": "string"
- },
- "user_attributes": {
- "additionalProperties": false,
- "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
- "properties": {
- "email": {
- "anyOf": [
- {},
- {}
- ]
- }
- },
- "type": "object"
- }
- },
- "required": [
- "role"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "attachment_ids": {
- "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
- "items": {
- "format": "uuid",
- "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
- "type": "string"
- },
- "type": "array"
- },
- "billing_email": {
- "description": "Email of the billing contact.",
- "format": "email",
- "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
- "type": "string"
- },
- "billing_name": {
- "description": "Name of the billing contact.",
- "type": "string"
- },
- "billing_workflow_type": {
- "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
- "enum": [
- "link",
- "stripe"
- ],
- "type": "string"
- },
- "chosen_courts_country": {
- "description": "The country in which disputes will be resolved.",
- "type": "string"
- },
- "chosen_courts_region": {
- "description": "The state or region in which disputes will be resolved.",
- "type": "string"
- },
- "confidentiality_period": {
- "description": "How many years confidentiality obligations last (NDA).",
- "maximum": 9007199254740991,
- "minimum": -9007199254740991,
- "type": "integer"
- },
- "confidentiality_period_perpetual": {
- "description": "When true, confidentiality obligations are perpetual (NDA).",
- "type": "boolean"
- },
- "default_signer_email": {
- "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
- "format": "email",
- "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
- "type": "string"
- },
- "district_or_county": {
- "description": "The district or county for dispute resolution.",
- "type": "string"
- },
- "effective_date": {
- "description": "The effective date, when set explicitly.",
- "format": "date",
- "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
- "type": "string"
- },
- "effective_date_of_confidentiality": {
- "description": "When confidentiality obligations begin (NDA).",
- "type": "string"
- },
- "effective_date_type": {
- "description": "How the effective date is determined.",
- "type": "string"
- },
- "framework_terms_description": {
- "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
- "type": "string"
- },
- "framework_terms_type": {
- "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
- "enum": [
- "new",
- "description"
- ],
- "type": "string"
- },
- "governing_law_country": {
- "description": "The country whose laws govern the agreement.",
- "type": "string"
- },
- "governing_law_region": {
- "description": "The state or region whose laws govern the agreement.",
- "type": "string"
- },
- "include_additional_changes": {
- "description": "When true, `additional_changes` is included on the cover page.",
- "type": "boolean"
- },
- "include_automated_nudges": {
- "description": "When true, reminder emails are sent automatically.",
- "type": "boolean"
- },
- "include_automated_payment_reminders": {
- "description": "When true, payment reminder emails are sent automatically.",
- "type": "boolean"
- },
- "include_billing_info": {
- "description": "When true, `billing_name` and `billing_email` are included.",
- "type": "boolean"
- },
- "include_billing_workflow": {
- "description": "When true, enables a billing workflow after signing.",
- "type": "boolean"
- },
- "include_cc_users": {
- "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
- "type": "boolean"
- },
- "include_expiration_date": {
- "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
- "format": "date",
- "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
- "type": "string"
- },
- "include_expiration_days": {
- "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
- "maximum": 9007199254740991,
- "minimum": -9007199254740991,
- "type": "integer"
- },
- "include_expiration_type": {
- "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
- "enum": [
- "none",
- "days",
- "date"
- ],
- "type": "string"
- },
- "include_message": {
- "description": "When true, `message` is sent with the agreement.",
- "type": "boolean"
- },
- "manual_send": {
- "description": "When true, the agreement is marked as sent outside the platform.",
- "type": "boolean"
- },
- "message": {
- "description": "The message sent to the recipient.",
- "type": "string"
- },
- "negotiations_allowed": {
- "description": "When true, the recipient can propose changes.",
- "type": "boolean"
- },
- "payment_link_url": {
- "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
- "type": "string"
- },
- "purpose": {
- "description": "The purpose of the agreement (NDA).",
- "type": "string"
- },
- "recipient_city": {
- "description": "The counterparty's city.",
- "type": "string"
- },
- "recipient_country": {
- "description": "The counterparty's country.",
- "type": "string"
- },
- "recipient_email": {
- "description": "The counterparty's email address.",
- "format": "email",
- "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
- "type": "string"
- },
- "recipient_name": {
- "description": "The counterparty's full name.",
- "type": "string"
- },
- "recipient_notice_email_address": {
- "description": "Email address for legal notices to the recipient.",
- "format": "email",
- "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
- "type": "string"
- },
- "recipient_organization": {
- "description": "The counterparty's organization.",
- "type": "string"
- },
- "recipient_state": {
- "description": "The counterparty's state or region.",
- "type": "string"
- },
- "recipient_street_address": {
- "description": "The counterparty's street address.",
- "type": "string"
- },
- "recipient_title": {
- "description": "The counterparty's job title.",
- "type": "string"
- },
- "recipient_zip": {
- "description": "The counterparty's postal code.",
- "type": "string"
- },
- "sender_last_to_sign": {
- "description": "When true, your signer signs after the recipient.",
- "type": "boolean"
- },
- "sender_notice_email_address": {
- "description": "Email address for legal notices to your organization.",
- "format": "email",
- "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
- "type": "string"
- },
- "subsidiary_id": {
- "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
- },
- "term": {
- "description": "The length of the agreement term in years (NDA).",
- "maximum": 9007199254740991,
- "minimum": -9007199254740991,
- "type": "integer"
- },
- "term_period_perpetual": {
- "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
- "type": "boolean"
- },
- "test_agreement": {
- "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
- "type": "boolean"
- }
- },
- "type": "object"
- }
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `CSA`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `DPA`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `Design`. The agreement type is `Design` and the term it owns is `design_partner`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `Pilot`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `PSA`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `Partnership`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `BAA`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `LOI`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `Software License`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft whose `agreement_type` is `Amendment`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "description": "Body for a draft created from a custom template. Drafts created from a custom template have no standard term object; their fields live in `custom_field_values`.",
- "properties": {
- "agreement": {}
- },
- "required": [
- "agreement"
- ],
- "type": "object"
- }
-]New value: +[
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `NDA`. NDA terms live directly on the agreement (`purpose`, `term`, `confidentiality_period`), so an NDA draft has no term object of its own.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `CSA`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `DPA`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `Design`. The agreement type is `Design` and the term it owns is `design_partner`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `Pilot`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `PSA`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `Partnership`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `BAA`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `LOI`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `Software License`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft whose `agreement_type` is `Amendment`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "description": "Body for a draft created from a custom template. Drafts created from a custom template have no standard term object; their fields live in `custom_field_values`.",
+ "properties": {
+ "agreement": {
+ "additionalProperties": {},
+ "description": "The cover page fields every draft accepts, whatever its agreement type. Omitted fields keep their current values.",
+ "properties": {
+ "additional_changes": {
+ "description": "Free-text changes shown on the cover page.",
+ "type": "string"
+ },
+ "agreement_roles_attributes": {
+ "description": "The keep-informed (`cc`) users on the draft. Requires `include_cc_users` to be `true`. Add a person by sending `role: \"cc\"` with `user_attributes.email` and no `id`. Remove one by sending its existing `id` with a blank `user_attributes.email`. People are identified by email only, so there is no way to cc someone by user id.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "description": "The UUID of an existing role. Omit when adding a new person.",
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role to manage. Only `cc` roles can be changed through this endpoint.",
+ "enum": [
+ "cc"
+ ],
+ "type": "string"
+ },
+ "user_attributes": {
+ "additionalProperties": false,
+ "description": "The person to cc. Send a blank `email` with an `id` to remove that person.",
+ "properties": {
+ "email": {
+ "anyOf": [
+ {},
+ {}
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "role"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "attachment_ids": {
+ "description": "The UUIDs of the attachments to include, from `POST /v1/attachments`. Replaces the current list.",
+ "items": {
+ "format": "uuid",
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "billing_email": {
+ "description": "Email of the billing contact.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "billing_name": {
+ "description": "Name of the billing contact.",
+ "type": "string"
+ },
+ "billing_workflow_type": {
+ "description": "The type of billing workflow. Use \"link\" with `payment_link_url`, or \"stripe\" for Stripe-managed billing.",
+ "enum": [
+ "link",
+ "stripe"
+ ],
+ "type": "string"
+ },
+ "chosen_courts_country": {
+ "description": "The country in which disputes will be resolved.",
+ "type": "string"
+ },
+ "chosen_courts_region": {
+ "description": "The state or region in which disputes will be resolved.",
+ "type": "string"
+ },
+ "confidentiality_period": {
+ "description": "How many years confidentiality obligations last (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "confidentiality_period_perpetual": {
+ "description": "When true, confidentiality obligations are perpetual (NDA).",
+ "type": "boolean"
+ },
+ "default_signer_email": {
+ "description": "The email of the user in your organization who signs the agreement. Must belong to a user in your organization; changing it moves the signer role to that user. A signer outside your organization returns a 400.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "district_or_county": {
+ "description": "The district or county for dispute resolution.",
+ "type": "string"
+ },
+ "effective_date": {
+ "description": "The effective date, when set explicitly.",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "effective_date_of_confidentiality": {
+ "description": "When confidentiality obligations begin (NDA).",
+ "type": "string"
+ },
+ "effective_date_type": {
+ "description": "How the effective date is determined.",
+ "type": "string"
+ },
+ "framework_terms_description": {
+ "description": "Custom framework terms description. Only used when `framework_terms_type` is \"description\".",
+ "type": "string"
+ },
+ "framework_terms_type": {
+ "description": "How framework terms are specified. Use \"new\" for standard terms or \"description\" with `framework_terms_description`.",
+ "enum": [
+ "new",
+ "description"
+ ],
+ "type": "string"
+ },
+ "governing_law_country": {
+ "description": "The country whose laws govern the agreement.",
+ "type": "string"
+ },
+ "governing_law_region": {
+ "description": "The state or region whose laws govern the agreement.",
+ "type": "string"
+ },
+ "include_additional_changes": {
+ "description": "When true, `additional_changes` is included on the cover page.",
+ "type": "boolean"
+ },
+ "include_automated_nudges": {
+ "description": "When true, reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_automated_payment_reminders": {
+ "description": "When true, payment reminder emails are sent automatically.",
+ "type": "boolean"
+ },
+ "include_billing_info": {
+ "description": "When true, `billing_name` and `billing_email` are included.",
+ "type": "boolean"
+ },
+ "include_billing_workflow": {
+ "description": "When true, enables a billing workflow after signing.",
+ "type": "boolean"
+ },
+ "include_cc_users": {
+ "description": "Whether to keep other people informed. Setting this to `false` removes every keep-informed (`cc`) user on the draft, and while it is `false` new `cc` roles are ignored.",
+ "type": "boolean"
+ },
+ "include_expiration_date": {
+ "description": "Expiration date in YYYY-MM-DD format. Use with `include_expiration_type` \"date\".",
+ "format": "date",
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
+ "type": "string"
+ },
+ "include_expiration_days": {
+ "description": "Days until the agreement expires. Use with `include_expiration_type` \"days\".",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "include_expiration_type": {
+ "description": "How the agreement expires: \"none\" (default), \"days\" (use `include_expiration_days`), or \"date\" (use `include_expiration_date`).",
+ "enum": [
+ "none",
+ "days",
+ "date"
+ ],
+ "type": "string"
+ },
+ "include_message": {
+ "description": "When true, `message` is sent with the agreement.",
+ "type": "boolean"
+ },
+ "manual_send": {
+ "description": "When true, the agreement is marked as sent outside the platform.",
+ "type": "boolean"
+ },
+ "message": {
+ "description": "The message sent to the recipient.",
+ "type": "string"
+ },
+ "negotiations_allowed": {
+ "description": "When true, the recipient can propose changes.",
+ "type": "boolean"
+ },
+ "payment_link_url": {
+ "description": "A payment URL shown to the recipient after signing. Requires `include_billing_workflow` and `billing_workflow_type` \"link\".",
+ "type": "string"
+ },
+ "purpose": {
+ "description": "The purpose of the agreement (NDA).",
+ "type": "string"
+ },
+ "recipient_city": {
+ "description": "The counterparty's city.",
+ "type": "string"
+ },
+ "recipient_country": {
+ "description": "The counterparty's country.",
+ "type": "string"
+ },
+ "recipient_email": {
+ "description": "The counterparty's email address.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_name": {
+ "description": "The counterparty's full name.",
+ "type": "string"
+ },
+ "recipient_notice_email_address": {
+ "description": "Email address for legal notices to the recipient.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "recipient_organization": {
+ "description": "The counterparty's organization.",
+ "type": "string"
+ },
+ "recipient_state": {
+ "description": "The counterparty's state or region.",
+ "type": "string"
+ },
+ "recipient_street_address": {
+ "description": "The counterparty's street address.",
+ "type": "string"
+ },
+ "recipient_title": {
+ "description": "The counterparty's job title.",
+ "type": "string"
+ },
+ "recipient_zip": {
+ "description": "The counterparty's postal code.",
+ "type": "string"
+ },
+ "sender_last_to_sign": {
+ "description": "When true, your signer signs after the recipient.",
+ "type": "boolean"
+ },
+ "sender_notice_email_address": {
+ "description": "Email address for legal notices to your organization.",
+ "format": "email",
+ "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "subsidiary_id": {
+ "description": "The UUID of the subsidiary sending the agreement. Send `null`, an empty string, or an id that no longer exists to clear it. Omit the key entirely to leave the current subsidiary alone."
+ },
+ "term": {
+ "description": "The length of the agreement term in years (NDA).",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "term_period_perpetual": {
+ "description": "When true, the term runs perpetually and `term` is ignored (NDA).",
+ "type": "boolean"
+ },
+ "test_agreement": {
+ "description": "When true, marks the agreement as a test. Test agreements do not count against your monthly limit.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "agreement"
+ ],
+ "type": "object"
+ }
+]