{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/notarize/main/json-schema/notarize-transaction-object-schema.json", "title": "transaction_object", "x-generated": "2026-10-14", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/notarize-proof-business-api-specification-openapi.yml#/components/schemas/transaction_object", "type": "object", "properties": { "id": { "type": "string", "maxLength": 5000 }, "activation_time": { "type": [ "string", "null" ], "maxLength": 100, "description": "An ISO-8601 formatted DateTime String." }, "allowed_notary_states": { "type": [ "array", "null" ], "items": { "type": "string", "minLength": 2, "maxLength": 2 }, "description": "The 2-letter US state abbreviations the transaction restricts notary routing to; absent when unrestricted." }, "attachments": { "type": "array", "items": { "$ref": "#/$defs/attachment" } }, "audit_trail_url": { "type": [ "string", "null" ], "maxLength": 5000 }, "cc_recipient_emails": { "type": "array", "items": { "$ref": "#/$defs/cc_recipient_email" } }, "charge_statement_url": { "type": [ "string", "null" ], "maxLength": 5000 }, "config_id": { "type": [ "string", "null" ], "maxLength": 5000 }, "cost_center_id": { "type": [ "string", "null" ], "maxLength": 5000, "description": "The cost center attributed to this transaction, if any." }, "cosigner_info": { "$ref": "#/$defs/signer", "nullable": true }, "cost": { "type": "number", "format": "float", "description": "Cost of the transaction." }, "date_created": { "type": "string", "maxLength": 100, "format": "date-time", "description": "Date Transaction was created/uploaded." }, "date_updated": { "type": "string", "maxLength": 100, "format": "date-time", "description": "Date Transaction was updated." }, "default_text_tag_syntax": { "type": [ "string", "null" ], "maxLength": 100 }, "detailed_status": { "type": "string", "enum": [ "draft", "recalled", "order_placed", "sent_to_title_agent", "sent_to_signer", "active", "viewed", "started", "partially_complete", "attempted", "awaiting_payment", "open_order", "review_now", "sign_now", "payment_required", "meeting_in_progress", "complete", "complete_with_rejections", "expired", "esign_complete", "wet_sign_complete", "on_hold", "converted_to_wet_sign", "identify_complete_idv_passed", "identify_complete_idv_failed", "ready_for_review", "add_document", "processing", "held_for_review", "declined", "screened", "canceled" ] }, "documents": { "type": "array", "items": { "$ref": "#/$defs/document" } }, "expiry": { "type": [ "string", "null" ], "maxLength": 100 }, "external_id": { "type": [ "string", "null" ], "maxLength": 5000 }, "identity_report": { "type": [ "object", "null" ], "properties": { "name": { "type": "string", "maxLength": 5000 }, "url": { "type": "string", "maxLength": 5000 } } }, "idv_use_case": { "type": [ "string", "null" ], "maxLength": 50, "enum": [ "STANDARD", "ACCOUNT_RECOVERY" ] }, "message_signature": { "type": [ "string", "null" ], "maxLength": 30000 }, "message_subject": { "type": [ "string", "null" ], "maxLength": 30000 }, "message_to_signer": { "type": [ "string", "null" ], "maxLength": 30000 }, "notarization_record": { "$ref": "#/$defs/notarization_record_object", "nullable": true }, "notarization_records": { "type": "array", "items": { "$ref": "#/$defs/notarization_record_object" } }, "notary_id": { "type": [ "string", "null" ], "maxLength": 5000 }, "notary_instructions": { "type": [ "array", "null" ], "items": { "$ref": "#/$defs/notary_instructions" } }, "notary_meeting_time": { "type": [ "string", "null" ], "maxLength": 100, "format": "date-time" }, "organization_id": { "type": "string", "maxLength": 5000 }, "payer": { "type": "string", "enum": [ "sender", "signer" ] }, "recall_reason": { "type": [ "string", "null" ], "maxLength": 5000, "description": "Reason for recalling the transaction." }, "recipient_details_config": { "type": [ "array", "null" ], "items": { "$ref": "#/$defs/recipient_details_config" }, "description": "An array of recipient details configuration objects. This is used to configure the recipients experience" }, "redirect": { "type": [ "object", "null" ], "properties": { "redirect_msg": { "type": [ "string", "null" ], "maxLength": 5000 }, "redirect_url": { "type": [ "string", "null" ], "maxLength": 5000 }, "forced_redirect": { "type": "boolean" } } }, "referral_campaign_id": { "type": [ "string", "null" ], "maxLength": 5000, "description": "The ID of the referral campaign that the transaction is associated with." }, "referral_code": { "type": [ "string", "null" ], "maxLength": 5000, "description": "The referral code that the transaction is associated with." }, "require_secondary_photo_id": { "type": "boolean" }, "sender_logo": { "type": [ "string", "null" ], "maxLength": 5000 }, "sender_name": { "type": "string", "description": "Name of the sending organization." }, "signer_info": { "$ref": "#/$defs/signer" }, "signers": { "type": "array", "items": { "$ref": "#/$defs/signers" } }, "status": { "type": "string", "maxLength": 5000 }, "transaction_name": { "type": "string", "maxLength": 5000 }, "transaction_type": { "type": [ "string", "null" ], "maxLength": 5000 } }, "$defs": { "address": { "type": "object", "properties": { "line1": { "type": "string", "maxLength": 5000, "description": "House number and Street name" }, "line2": { "type": "string", "maxLength": 5000, "description": "Unit number" }, "city": { "type": "string", "maxLength": 5000, "description": "Town name" }, "state": { "type": "string", "maxLength": 2, "description": "Only two character state abbreviations are accepted. i.e. \"CO\"." }, "postal": { "type": "string", "maxLength": 10, "description": "Five or ten digit postal code." }, "country": { "type": "string", "maxLength": 2, "description": "Only two character country codes are accepted. i.e. \"US\"." } } }, "attachment": { "type": "object", "properties": { "date_created": { "type": "string", "maxLength": 100, "description": "Date Attachment was created/uploaded." }, "name": { "type": "string", "maxLength": 5000, "description": "Name of the attachment" }, "url": { "type": "string", "maxLength": 5000, "description": "URL of the attachment" } } }, "cc_recipient_email": { "type": "string", "maxLength": 5000, "description": "Email address of the recipient to be CC'd on the transaction." }, "credential_asset_object": { "type": "object", "properties": { "credential_type": { "type": "string", "enum": [ "primary", "secondary", "selfie" ] }, "credential_images": { "type": "array", "items": { "$ref": "#/$defs/credential_image" } } } }, "credential_image": { "type": "object", "properties": { "url": { "type": "string", "maxLength": 5000, "description": "URL of the image" }, "descriptor": { "type": "string", "enum": [ "back", "front" ] } } }, "document": { "type": "object", "properties": { "id": { "type": "string", "maxLength": 5000 }, "allowed_actions": { "type": "array", "items": { "type": "string", "maxLength": 5000 }, "description": "List of allowed actions on document." }, "bundle_position": { "type": "integer", "description": "Position to put document in bundle" }, "completion_state": { "type": "string", "maxLength": 5000 }, "data": { "type": [ "string", "null" ], "description": "base64 encoded document. Present if base64 encoding was specified in request. Currently supported for get_document only." }, "date_created": { "type": "string", "maxLength": 100, "description": "Date document was created/uploaded." }, "date_updated": { "type": "string", "maxLength": 100, "description": "Date document was last updated." }, "document_name": { "type": "string", "maxLength": 5000, "description": "Name of document." }, "esign_required": { "type": "boolean", "description": "Boolean flag indicating whether the document requires esigning." }, "final_document_url": { "type": [ "string", "null" ], "maxLength": 5000 }, "identification_reviewed": { "type": "boolean" }, "identity_confirmation_required": { "type": "boolean", "description": "Boolean flag indicating whether the document requires identity confirmation." }, "is_enote": { "type": [ "boolean", "null" ], "description": "Boolean flag indicating whether the document is an eNote." }, "notarization_required": { "type": "boolean", "description": "Boolean flag indicating whether the document requires notarization. If `true`, identity_confirmation_required must be `false`. If `false`, the document may still be e-signed in the notary meeting. At least one document in a transaction must require notarization or identity confirmation." }, "permissions": { "type": "array", "items": { "type": "string", "maxLength": 5000 }, "description": "List of allowed actions on document." }, "processing_error": { "type": [ "string", "null" ], "maxLength": 5000, "description": "Error message if document processing failed." }, "processing_state": { "type": [ "string", "null" ], "maxLength": 5000, "description": "State of document processing." }, "rejection_anecdote": { "type": [ "string", "null" ], "maxLength": 5000, "description": "Anecdote for document rejection." }, "rejection_reason": { "type": [ "string", "null" ], "maxLength": 5000, "description": "Reason for document rejection." }, "requirement": { "type": "string", "maxLength": 5000, "description": "Completion requirement for the document. Accepted values can be `notarization`, `esign`, `identity_confirmation` **([identity confirmation feature](https://dev.proof.com/docs/enterprise-features))**, `readonly`, and `non_essential`. Completion requirement for the document. If the value is set to `non_essential`, the document will be hidden from signers before the notary meeting and values for `customer_can_annotate` and `witness_required` will be ignored and set to false. `identity_confirmation` is used to support signing of PS Form 1583 for signers without a US SSN. Note: if `identity_confirmation` is set as the document requirement, ensure that all documents requiring notarization in the transaction also use `identity confirmation` as the requirement to avoid requiring KBA on the transaction. [Read more](https://dev.proof.com/docs/document-requirements) about document requirements." }, "signed_url": { "type": [ "string", "null" ], "maxLength": 5000, "description": "Signed URL for the final document PDF." }, "signing_designation_groups": { "type": "array", "items": { "$ref": "#/$defs/signing_designation_group" }, "description": "This array contains a prescribed list of groups of designations for signers and/or a notary to annotate the document." }, "signing_designations": { "type": "array", "items": { "$ref": "#/$defs/signing_designation" }, "description": "This array contains a prescribed list of designations for signers and/or a notary to annotate the document." }, "signing_type": { "type": "string", "enum": [ "NOTARIZATION", "ESIGN" ] }, "tracking_id": { "type": [ "string", "null" ], "maxLength": 5000, "description": "The external tracking ID of the document." }, "vaulted": { "type": "boolean", "description": "Boolean flag indicating whether the document is vaulted." } } }, "id_allow_list_by_country": { "type": [ "object", "null" ], "description": "A dictionary of id allow lists by country code, e.g. { \"US\": [ \"driver_license\", \"passport\" ], \"CA\": [\"passport\"] }, where the key is a 2 digit ISO-3166 country code, and the value is an array of id types. Primary ID lists must only contain government IDs ([\"driver_license\", \"passport\", \"id_card\", \"passport_card\", \"work_permit\", \"permanent_resident_card\", \"matricula_consular\"]). Secondary ID lists can contain government IDs or supplemental documents ([\"driver_license\", \"passport\", \"id_card\", \"passport_card\", \"work_permit\", \"permanent_resident_card\", \"social_security_card\", \"us_visa\", \"birth_certificate\", \"property_tax_bill\", \"voter_registration_card\", \"organizational_membership_card\", \"bank_investment_loan_statement\", \"paycheck_stub\", \"property_insurance\", \"utility_bill\", \"other\", \"lease\", \"mortgage\", \"deed_of_trust\", \"vehicle_registration\"]). By default, validation is only run on the primary ID. Validation can be run on the secondary ID (if it is a government ID) by changing your organization's configuration. To use Proof's default ID options, use null, or do not pass this field." }, "notarization_record_object": { "type": "object", "properties": { "id": { "type": "string", "maxLength": 5000 }, "meeting_start": { "type": "string", "maxLength": 100, "format": "date-time" }, "meeting_end": { "type": "string", "maxLength": 100, "format": "date-time" }, "notary_name": { "type": "string", "maxLength": 5000 }, "notary_county_city": { "type": "string", "maxLength": 5000 }, "notary_registration": { "type": "string", "maxLength": 5000 }, "notary_source": { "type": "string", "enum": [ "In-house notary", "Custom Panel", "Notarize Network" ], "description": "Indicates how the notary who fulfilled this session was sourced: In-house notary, Custom Panel, or Notarize Network. Reflects actual session fulfillment, not original routing." }, "signer_info": { "$ref": "#/$defs/notarization_record_signer_object" }, "signers": { "type": "array", "items": { "allOf": [ { "$ref": "#/$defs/notarization_record_signer_object" }, { "$ref": "#/$defs/photo_identification" } ] } }, "cosigner_info": { "$ref": "#/$defs/notarization_record_signer_object", "nullable": true }, "witnesses": { "type": "array", "items": { "$ref": "#/$defs/witness" } }, "notarized_documents": { "type": "array", "items": { "type": "object", "properties": { "document_url": { "type": "string", "maxLength": 5000 }, "notorial_acts": { "type": "array", "items": { "type": "string", "enum": [ "acknowledgement", "copy_certification", "jurat", "oath_affirmation", "verification_of_fact", "vof_ps1583", "affidavit", "attestation" ] } }, "tracking_id": { "oneOf": [ { "type": [ "integer", "null" ] }, { "type": [ "string", "null" ], "maxLength": 5000 } ] } } } }, "verification_credentials": { "type": "object", "properties": { "retrieval_id": { "type": "string", "maxLength": 5000 }, "retrieval_pin": { "type": "string", "maxLength": 5000 }, "last_name": { "type": [ "string", "null" ], "maxLength": 5000 }, "date_completed": { "type": "string", "maxLength": 100 } } }, "signer_photo_identification": { "$ref": "#/$defs/photo_identification" }, "video_url": { "type": "string", "maxLength": 5000, "description": "Download URL of the video recording of the meeting." }, "chat_url": { "type": [ "string", "null" ], "maxLength": 5000, "description": "Download URL of the chat transcript of the meeting." } } }, "notarization_record_signer_object": { "type": "object", "properties": { "signer_id": { "type": [ "string", "null" ], "maxLength": 38, "description": "Signer ID" }, "email": { "type": "string", "maxLength": 100, "description": "Email" }, "first_name": { "type": "string", "maxLength": 30, "description": "First name" }, "middle_name": { "type": [ "string", "null" ], "maxLength": 30, "description": "Middle name" }, "last_name": { "type": "string", "maxLength": 30, "description": "Last name" }, "address": { "$ref": "#/$defs/address", "description": "The most recent known address for the signer." }, "dob": { "type": "string", "maxLength": 30, "description": "The signer's date of birth." } } }, "notary_instructions": { "type": "object", "properties": { "notary_note": { "type": "string", "maxLength": 500, "description": "500 character limit." } } }, "photo_identification": { "type": "object", "properties": { "primary_front": { "type": "string", "maxLength": 5000, "description": "URL of the front of the primary photo identification document." }, "primary_back": { "type": "string", "maxLength": 5000, "description": "URL of the back of the primary photo identification document." }, "primary_type": { "type": "string", "maxLength": 5000, "description": "Type of the primary photo identification document." }, "primary_issuer": { "type": "string", "maxLength": 5000, "description": "Issuer of the primary photo identification document." }, "primary_expiry_date": { "type": "string", "maxLength": 100, "description": "Expiry date of the primary photo identification document." }, "secondary_front": { "type": "string", "maxLength": 5000, "description": "URL of the front of the secondary photo identification document." } } }, "photo_validation_attempt": { "type": "object", "properties": { "validation_source": { "type": [ "string", "null" ], "maxLength": 5000, "enum": [ "lexis-flex", "identity-verification-service", "lexis", "noop", "persona", "firebase", null, "none", "notakred" ] }, "verified_at": { "type": "string", "maxLength": 100, "description": "An ISO-8601 formatted DateTime String." }, "verification_method": { "type": [ "string", "null" ], "maxLength": 5000 }, "images": { "type": "object", "properties": { "front": { "type": "string", "maxLength": 5000 }, "back": { "type": [ "string", "null" ], "maxLength": 5000 }, "selfie": { "type": [ "string", "null" ], "maxLength": 5000 } } }, "status": { "type": [ "string", "null" ], "enum": [ "success", "failure", "unknown", "skipped", "pending", "action_required", "deleted" ] }, "document_address": { "$ref": "#/$defs/address" }, "document_claimed_type": { "type": "string", "enum": [ "bank_account_statement", "bank_investment_loan_statement", "birth_certificate", "certificate_of_citizenship", "citizen_id", "credit_or_debit_card_statement", "deed_of_trust", "driver_license", "foreigner_id", "healthcare_insurance", "i_94", "id_card", "internal_passport", "keypass_id", "lease", "long_term_pass_card", "matricula_consular", "mortgage", "municipal_id", "my_number_card", "nbi", "nexus_card", "ofw", "organizational_membership_card", "pan", "passport", "passport_card", "paycheck_stub", "permanent_resident_card", "postal_id", "property_insurance", "property_tax_bill", "residency_permit", "school_id_card", "seafarers_id", "social_security_card", "sss", "tin", "travel_document", "tribal_id", "umid", "us_visa", "utility_bill", "vehicle_registration", "voter_registration_card", "work_permit", "other", "unknown" ] }, "document_classification": { "type": [ "string", "null" ], "maxLength": 5000 }, "document_date_of_birth": { "type": [ "string", "null" ], "maxLength": 100 }, "document_expiration_date": { "type": [ "string", "null" ], "maxLength": 100 }, "document_first_name": { "type": [ "string", "null" ], "maxLength": 100 }, "document_middle_name": { "type": [ "string", "null" ], "maxLength": 100 }, "document_last_name": { "type": [ "string", "null" ], "maxLength": 100 }, "document_issue_date": { "type": [ "string", "null" ], "maxLength": 100 }, "document_issuer": { "type": [ "string", "null" ], "maxLength": 5000 }, "document_number": { "type": [ "string", "null" ], "maxLength": 5000 }, "verified": { "type": "boolean" }, "failure_reasons": { "type": "array", "items": { "type": "object", "properties": { "check": { "type": "string", "maxLength": 5000 }, "category": { "type": "string", "enum": [ "aamva_failure", "fraud", "image_quality", "ineligible_id", "kba_mismatch", "not_classified", "user_action_required" ] }, "reasons": { "type": "array", "items": { "type": "string", "maxLength": 5000 } }, "required": { "type": "boolean" }, "verification_type": { "type": "string", "enum": [ "id", "selfie" ] } } } } } }, "proof_requirement": { "type": "object", "properties": { "id_verification": { "$ref": "#/$defs/proof_requirement_id_verification" }, "knowledge_based_authentication": { "type": "boolean", "description": "(KBA) Signer answers a series of personal identity questions." }, "multi_factor_authentication": { "$ref": "#/$defs/proof_requirement_multi_factor_authentication" } }, "required": [ "knowledge_based_authentication" ] }, "proof_requirement_id_verification": { "type": "object", "properties": { "selfie": { "type": "boolean", "description": "Signer identity is verified through credential analysis and selfie comparison. SMS multi_factor_authentication is required with this for IAL2 compliant identity verification." } }, "required": [ "selfie" ] }, "proof_requirement_multi_factor_authentication": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "sms" ], "description": "Signer enters authentication code sent to their mobile phone." } }, "required": [ "type" ] }, "recipient_details_config": { "type": "object", "properties": { "field": { "type": "string", "maxLength": 50, "enum": [ "name" ], "description": "The field name" }, "display": { "type": "string", "maxLength": 50, "enum": [ "required", "locked", "optional", "hidden" ], "description": "Property of the field" } } }, "recipient_group": { "type": "object", "properties": { "shared_inbox_email": { "type": "string", "maxLength": 5000, "description": "The email address that is shared by a group. Whomever has access to this email address can claim the transaction for themself." } } }, "signer": { "type": "object", "properties": { "signer_id": { "type": "string", "maxLength": 30, "description": "Signer ID" }, "email": { "type": "string", "maxLength": 5000, "description": "Email is required unless you provide a recipient_group object." }, "first_name": { "type": "string", "maxLength": 30, "description": "First name" }, "middle_name": { "type": [ "string", "null" ], "maxLength": 30, "description": "Middle name" }, "last_name": { "type": "string", "maxLength": 30, "description": "Last name" }, "phone_number": { "type": "string", "maxLength": 30, "description": "Signer phone number. A country code can be defined by using the `+` symbol. For example, `+11234567890` will set the country code to `+1` for the number `1234567890`. If no country code is specified the default will be the United States country code of `+1`." }, "phone": { "type": [ "object", "null" ], "properties": { "country_code": { "type": "string", "maxLength": 10, "description": "The country code for the phone number, e.g. 1" }, "number": { "type": "string", "maxLength": 20, "description": "The phone number without the country code, e.g. 5551234567" } } }, "address": { "$ref": "#/$defs/address", "description": "The most recent known address for the signer." }, "dob": { "type": "string", "maxLength": 30, "description": "The signer's date of birth." }, "capacity": { "type": [ "string", "null" ], "maxLength": 5000, "description": "The signers capacity when signing on behalf of an entity, required when entity is present" }, "entity": { "type": [ "string", "null" ], "maxLength": 5000, "description": "Entity the signer is signing on behalf of, required when capacity is present" }, "external_id": { "type": [ "string", "null" ], "maxLength": 5000, "description": "A string representing an ID external to Proof's systems. Use this to associate a signer to an ID that your systems understand, such as a User ID." }, "link_expired": { "type": "boolean", "description": "Indicates if the signer's passwordless link has expired." }, "personally_known_to_notary": { "type": "boolean", "description": "If the signer is personally known to the notary. This can currently only be used on single signer transactions, or when the notary_id is specified on the signer." }, "proof_requirement": { "$ref": "#/$defs/proof_requirement", "nullable": true, "description": "Add enhanced checks to validate a signer's identity to create a Proof transaction. Reach out to your customer success team to enable if not yet available." }, "recipient_group": { "$ref": "#/$defs/recipient_group", "nullable": true, "description": "Use this to send to a group that will be able to claim the transaction. This would be used in place of email and name properties." }, "sdk_token": { "type": [ "string", "null" ], "maxLength": 5000, "description": "Equivalent to transaction_access_link; prefer using that instead." }, "signatory_capacities": { "type": "array", "items": { "type": "object", "properties": { "capacity": { "type": "string" }, "type": { "type": "string", "enum": [ "attorney_in_fact", "corporate_officer", "guardian_or_conservator", "general_partner", "limited_partner", "trustee", "other" ] }, "representative_of": { "type": "string" } } }, "description": "An array of signatory capacities for the signer when signing on behalf of multiple entities." }, "primary_id_allow_list_by_country": { "$ref": "#/$defs/id_allow_list_by_country" }, "secondary_id_allow_list_by_country": { "$ref": "#/$defs/id_allow_list_by_country" }, "signing_requirement": { "type": [ "string", "null" ], "enum": [ "esign", "identify", "verify", "screen" ], "description": "Override the document signing requirement for an individual signer." }, "signing_status": { "type": [ "string", "null" ], "enum": [ "incomplete", "in_progress", "complete" ] }, "transaction_access_link": { "type": "string", "description": "A link to the transaction for this signer." }, "vesting_type": { "type": "string", "enum": [ "borrower", "non_borrower" ], "description": "Can be either `borrower` or `non_borrower`. Defaults to `borrower`." }, "skip_landing_page": { "type": [ "boolean", "null" ], "description": "If true, skip the landing page the user will see before beginning verification" }, "credential_assets": { "type": [ "array", "null" ], "items": { "$ref": "#/$defs/credential_asset_object" } }, "esign_authentication_records": { "type": [ "array", "null" ], "items": { "$ref": "#/$defs/photo_validation_attempt" } }, "notary_id": { "type": [ "string", "null" ], "maxLength": 100, "description": "User ID (\"us_xxxxxxx\") of the assigned Notary or \"notarize\". Eligible notaries must be a notary who is a member of your organization. Order must be utilized with this field, all notarization signers with the same order must have the same notary_id." }, "order": { "type": [ "integer", "null" ], "description": "Order the signers will sign in. Should be positive numbers starting with 1. Setting to the same order as another signer indicates they will sign at the same time." }, "suppress_communications": { "type": [ "string", "null" ], "enum": [ "all" ], "description": "Suppress Proof communications to this signer. Only \"all\" is currently supported." }, "verify_tool_configuration": { "$ref": "#/$defs/verify_tool_configuration", "nullable": true, "description": "Signer verify tool configuration for transactions with a verify signing requirement." } }, "required": [ "email" ] }, "signers": { "type": "object", "properties": { "signer_id": { "type": "string", "maxLength": 30, "description": "Signer ID" }, "email": { "type": "string", "maxLength": 5000, "description": "Email is required unless you provide a recipient_group object." }, "first_name": { "type": "string", "maxLength": 30, "description": "First name" }, "middle_name": { "type": [ "string", "null" ], "maxLength": 30, "description": "Middle name" }, "last_name": { "type": "string", "maxLength": 30, "description": "Last name" }, "phone_number": { "type": "string", "maxLength": 30, "description": "Signer phone number. A country code can be defined by using the `+` symbol. For example, `+11234567890` will set the country code to `+1` for the number `1234567890`. If no country code is specified the default will be the United States country code of `+1`." }, "phone": { "type": [ "object", "null" ], "properties": { "country_code": { "type": "string", "maxLength": 10, "description": "The country code for the phone number, e.g. 1" }, "number": { "type": "string", "maxLength": 20, "description": "The phone number without the country code, e.g. 5551234567" } } }, "address": { "$ref": "#/$defs/address", "description": "The most recent known address for the signer." }, "dob": { "type": "string", "maxLength": 30, "description": "The signer's date of birth." }, "capacity": { "type": [ "string", "null" ], "maxLength": 5000, "description": "The signers capacity when signing on behalf of an entity, required when entity is present" }, "entity": { "type": [ "string", "null" ], "maxLength": 5000, "description": "Entity the signer is signing on behalf of, required when capacity is present" }, "external_id": { "type": [ "string", "null" ], "maxLength": 5000, "description": "A string representing an ID external to Proof's systems. Use this to associate a signer to an ID that your systems understand, such as a User ID." }, "link_expired": { "type": "boolean", "description": "Indicates if the signer's passwordless link has expired." }, "personally_known_to_notary": { "type": "boolean", "description": "If the signer is personally known to the notary. This can currently only be used on single signer transactions, or when the notary_id is specified on the signer." }, "proof_requirement": { "$ref": "#/$defs/proof_requirement", "nullable": true, "description": "Add enhanced checks to validate a signer's identity to create a Proof transaction. Reach out to your customer success team to enable if not yet available." }, "recipient_group": { "$ref": "#/$defs/recipient_group", "nullable": true, "description": "Use this to send to a group that will be able to claim the transaction. This would be used in place of email and name properties." }, "sdk_token": { "type": [ "string", "null" ], "maxLength": 5000, "description": "Equivalent to transaction_access_link; prefer using that instead." }, "signatory_capacities": { "type": "array", "items": { "type": "object", "properties": { "capacity": { "type": "string" }, "type": { "type": "string", "enum": [ "attorney_in_fact", "corporate_officer", "guardian_or_conservator", "general_partner", "limited_partner", "trustee", "other" ] }, "representative_of": { "type": "string" } } }, "description": "An array of signatory capacities for the signer when signing on behalf of multiple entities." }, "primary_id_allow_list_by_country": { "$ref": "#/$defs/id_allow_list_by_country" }, "secondary_id_allow_list_by_country": { "$ref": "#/$defs/id_allow_list_by_country" }, "signing_requirement": { "type": [ "string", "null" ], "enum": [ "esign", "identify", "verify", "screen" ], "description": "Override the document signing requirement for an individual signer." }, "signing_status": { "type": [ "string", "null" ], "enum": [ "incomplete", "in_progress", "complete" ] }, "transaction_access_link": { "type": "string", "description": "A link to the transaction for this signer." }, "vesting_type": { "type": "string", "enum": [ "borrower", "non_borrower" ], "description": "Can be either `borrower` or `non_borrower`. Defaults to `borrower`." }, "skip_landing_page": { "type": [ "boolean", "null" ], "description": "If true, skip the landing page the user will see before beginning verification" }, "credential_assets": { "type": [ "array", "null" ], "items": { "$ref": "#/$defs/credential_asset_object" } }, "esign_authentication_records": { "type": [ "array", "null" ], "items": { "$ref": "#/$defs/photo_validation_attempt" } }, "order": { "type": [ "integer", "null" ], "description": "Order the signers will sign in. Should be positive numbers starting with 1. Setting to the same order as another signer indicates they will sign at the same time." }, "notary_id": { "type": [ "string", "null" ], "maxLength": 100, "description": "User ID (\"us_xxxxxxx\") of the assigned Notary or \"notarize\". Eligible notaries must be a notary who is a member of your organization. Order must be utilized with this field, all notarization signers with the same order must have the same notary_id." }, "suppress_communications": { "type": [ "string", "null" ], "enum": [ "all" ], "description": "Suppress Proof communications to this signer. Only \"all\" is currently supported." }, "verify_tool_configuration": { "$ref": "#/$defs/verify_tool_configuration", "nullable": true, "description": "Signer verify tool configuration for transactions with a verify signing requirement." } } }, "signing_designation": { "type": "object", "properties": { "signer_identifier": { "type": "string", "maxLength": 5000, "description": "For signers, the external_id value set on the signers array when creating a transaction; for witnesses, `witness{n}` i.e. `witness1` or `witness2`; for notaries, `notary`" }, "page_number": { "type": "integer", "description": "The page of the designation, starting at 0" }, "x": { "type": "integer", "description": "The X coordinate (from bottom left)" }, "y": { "type": "integer", "description": "The Y coordinate (from bottom left)" }, "height": { "type": "integer", "description": "Height" }, "width": { "type": "integer", "description": "Width" }, "hint": { "type": "string", "maxLength": 5000, "description": "Hint" }, "type": { "type": "string", "enum": [ "date_signed", "day_signed", "month_signed", "year_signed", "first_name", "middle_name", "last_name", "full_name", "signature", "initials", "checkmark", "radio_checkmark", "free_text", "signature_and_date", "dob", "email", "address_line1", "address_line2", "address_zip5", "address_state", "address_city", "representative_capacity_type", "disclosure", "notary_id", "seal", "commission_expiration_date", "commission_state", "county", "commission_county", "principal_id_type", "notary_city" ], "description": "The type of field designation. Accepted values for signers: dob, email, address_line1, address_line2, address_zip5, address_state, address_city, representative_capacity_type. Accepted values for notaries: disclosure, notary_id, seal, commission_expiration_date, commission_state, county, commission_county, principal_id_type, notary_city. Universal types: date_signed, day_signed, month_signed, year_signed, first_name, middle_name, last_name, full_name, signature, initials, checkmark, radio_checkmark, free_text, signature_and_date" }, "signing_designation_group": { "$ref": "#/$defs/signing_designation_group" }, "optional": { "type": "boolean", "description": "Non-notary designation that is not part of a group can be set as optional" }, "instruction": { "type": "string", "maxLength": 5000, "description": "Instruction specific to this signing designation to be shown to the signer" }, "primary_designation_identifier": { "type": "string", "maxLength": 5000, "description": "Unique identification string to denote this designation is the primary designation" }, "conditional_on_primary": { "type": "string", "maxLength": 5000, "description": "Identification string that denotes this designation is conditional on the designation with the same value set for primary_designation_identifier" } } }, "signing_designation_group": { "type": "object", "properties": { "name": { "type": "string", "maxLength": 5000, "description": "The specified name of the group, type string. Use a naming convention of your choice, the only restrictions are that the name must be between 1 and 64 characters\nand can consist of alpha-numeric characters, hyphens, parentheses, and underscores. Valid regular expression for you tech nerds is /^[a-zA-Z0-9_-()]{1,64}$/" }, "min_required": { "type": "integer", "description": "a positive integer between 0 and N where N is the minimum number of designations in the group that must be fulfilled (checked)." }, "max_required": { "type": "integer", "description": "a positive integer between min_required and N where N is the maximum number of designations in the group that are allowed to be fulfilled.\nNOTE: max_required cannot be set to greater than 1 for designation groups used with radio_checkmark type signing designations." } } }, "verify_tool_configuration": { "type": "object", "properties": { "credit_card_config": { "$ref": "#/$defs/verify_tool_requirement" }, "selfie_config": { "$ref": "#/$defs/verify_tool_requirement" }, "credential_analysis_config": { "$ref": "#/$defs/verify_tool_requirement" } } }, "verify_tool_requirement": { "type": "object", "properties": { "requirement": { "type": "string", "enum": [ "run", "pass", "none" ], "description": "Setting indicating whether or not the verify tool will be required to run or pass, or both" }, "available": { "type": "boolean", "description": "Whether this verify tool is available for the transaction." } }, "required": [ "requirement" ] }, "witness": { "type": "object", "properties": { "first_name": { "type": "string", "maxLength": 100 }, "middle_name": { "type": "string", "maxLength": 100 }, "last_name": { "type": "string", "maxLength": 100 }, "address": { "$ref": "#/$defs/address" }, "credential_assets": { "type": "array", "items": { "$ref": "#/$defs/credential_asset_object" } } } } } }