> ## Documentation Index
> Fetch the complete documentation index at: https://docs.theguarantors.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create an invite

> Creates an invite and sends an application link to each recipient.



## OpenAPI

````yaml /openapi/application-api.json post /v1/invites
openapi: 3.1.0
info:
  description: >-
    Partner API for creating invites, tracking applications, and retrieving
    bonds.
  title: TheGuarantors Application API
  contact: {}
  version: '1.0'
servers:
  - url: https://api.theguarantors.com
security: []
paths:
  /v1/invites:
    post:
      tags:
        - Invites
      summary: Create an invite
      description: Creates an invite and sends an application link to each recipient.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateInviteRequest'
            example:
              property_id: prop_nvlbcx2e5jk0fqsf
              coverage_level: medium
              obligee: Acme Property Management LLC
              lease:
                start_date: '2026-03-01'
                end_date: '2027-02-28'
                monthly_rent: 320000
                prepaid_rent_amount: 120000
                free_rent_amount: 10000
                unit_address:
                  line1: 123 Main St
                  line2: Apt 5B
                  city: New York
                  state: NY
                  postal_code: '10001'
              invite_recipients:
                - first_name: Jane
                  last_name: Doe
                  email: jane.doe@example.com
                  phone_number: '+12125551234'
                - first_name: John
                  last_name: Smith
                  email: john.smith@example.com
                  phone_number: '+13475559876'
                  metadata: {}
                - first_name: Alex
                  last_name: Johnson
                  email: alex.johnson@example.com
                  phone_number: '+16465550123'
                  metadata: {}
              metadata: {}
        description: Invite to create
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Invite'
              example:
                id: inv_8f3k2jd9slq02mxp
                status: created
                property_id: prop_nvlbcx2e5jk0fqsf
                application_id: null
                obligee: Acme Property Management LLC
                lease:
                  start_date: '2026-03-01'
                  end_date: '2027-02-28'
                  monthly_rent: 320000
                  prepaid_rent_amount: 120000
                  free_rent_amount: 10000
                  unit_address:
                    line1: 123 Main St
                    line2: Apt 5B
                    city: New York
                    state: NY
                    postal_code: '10001'
                    object: address
                  object: lease
                invite_recipients:
                  - id: ivre_q7ghmgtaavp37krc
                    link: >-
                      https://qualify.sandbox.theguarantors.com/invite/sign-up/ivre_q7ghmgtaavp37krc
                    email: jane.doe@example.com
                    first_name: Jane
                    last_name: Doe
                    phone_number: '+12125551234'
                    metadata: {}
                    object: invite_recipient
                  - id: ivre_vd5t9qdhbhdx4iei
                    link: >-
                      https://qualify.sandbox.theguarantors.com/invite/sign-up/ivre_vd5t9qdhbhdx4iei
                    email: john.smith@example.com
                    first_name: John
                    last_name: Smith
                    phone_number: '+13475559876'
                    metadata: {}
                    object: invite_recipient
                  - id: ivre_x3p7d9fk2qw8hn4c
                    link: >-
                      https://qualify.sandbox.theguarantors.com/invite/sign-up/ivre_x3p7d9fk2qw8hn4c
                    email: alex.johnson@example.com
                    first_name: Alex
                    last_name: Johnson
                    phone_number: '+16465550123'
                    metadata: {}
                    object: invite_recipient
                metadata: {}
                object: invite
        '400':
          description: Invalid request body, including fields the endpoint does not accept
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                message: 'validation error: start_date: cannot be blank.'
                object: error
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                message: Missing authorization header
                object: error
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                message: operation not permitted on inactive property
                object: error
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                message: property not found
                object: error
        '429':
          description: Rate limit exceeded
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                message: internal server error
                object: error
      security:
        - BasicAuth: []
components:
  schemas:
    CreateInviteRequest:
      type: object
      required:
        - coverage_level
        - invite_recipients
        - lease
        - property_id
      properties:
        coverage_level:
          description: >-
            The coverage tier for the bond, which sets the number of months of
            rent it protects, from `low` (lowest) to `high` (highest). It is
            resolved to a coverage package using the coverages set up for the
            property, and every tier is subject to property support and
            applicant screening.
          type: string
          enum:
            - low
            - medium
            - high
          example: high
        invite_recipients:
          description: >-
            The prospective residents to invite. An invite can have at most 6
            recipients.
          type: array
          maxItems: 6
          minItems: 1
          items:
            type: object
            required:
              - email
              - first_name
              - last_name
            properties:
              email:
                description: >-
                  Must be unique among the invite's recipients. It's trimmed and
                  lowercased before it's saved.
                type: string
                format: email
              first_name:
                type: string
                maxLength: 100
                minLength: 1
              last_name:
                type: string
                maxLength: 100
                minLength: 1
              metadata:
                description: >-
                  Key-value object. Use this field to include internal
                  references, identifiers, or any additional data that helps
                  link this lease to your internal system. Each key must be a
                  string, and values can be strings, numbers, booleans, or null.
                type: object
              phone_number:
                description: >-
                  Phone number in E.164 format, for example `+12125551234`.
                  Spaces and formatting characters such as parentheses, dashes
                  and dots are removed. A 10-digit number without a country code
                  is treated as a US number and gets `+1` added. Include the `+`
                  and country code for any other number.
                type: string
                format: e164
        lease:
          type: object
          required:
            - end_date
            - monthly_rent
            - start_date
          properties:
            end_date:
              description: The date when this lease expires.
              type: string
              format: date
            free_rent_amount:
              description: The amount of free rent (in cents) granted to the applicant.
              type: integer
              maximum: 5000000
              minimum: 0
            monthly_rent:
              description: Monthly rent in cents.
              type: integer
              minimum: 1
            prepaid_rent_amount:
              description: The amount of rent (in cents) paid in advance.
              type: integer
              maximum: 5000000
              minimum: 0
            start_date:
              description: The date when this lease takes effect.
              type: string
              format: date
            unit_address:
              description: >-
                The unit address that would be printed on the lease, and
                therefore the Lease Guarantee surety bond. If you do not store
                the address with separate address line 1s and address line 2,
                put the full unit address in the address line 1.
              allOf:
                - $ref: '#/components/schemas/LeaseUnitAddress'
            unit_id:
              description: >-
                A unique identifier for a unit sourced from your property
                management system, used in place of a full unit address when
                sending invites.
              type: string
        metadata:
          description: >-
            Key-value object. Use this field to include internal references,
            identifiers, or any additional data that helps link this lease to
            your internal system. Each key must be a string, and values can be
            strings, numbers, booleans, or null.
          type: object
        obligee:
          description: >-
            The party that will be the obligee/claimant on the surety bond. This
            can be a limited liability company (LLC), a property management
            company, the property name, or the legal name of a sole proprietor
            owner.
          type: string
          example: Rivermark Residential LLC
        property_id:
          type: string
          example: prop_ve2x7i0j6psdizy7
    Invite:
      type: object
      required:
        - id
        - invite_recipients
        - lease
        - object
        - property_id
        - status
      properties:
        application_id:
          type: string
          example: sd_01HQ8Z
          nullable: true
        id:
          type: string
          example: inv_01HQ8X
        invite_recipients:
          type: array
          items:
            $ref: '#/components/schemas/InviteRecipient'
        lease:
          description: >-
            The legal contract between a property manager and the tenant, as
            represented on invites. Identical to Lease, plus rent concession
            fields that are accepted when creating an invite and returned on
            invite responses. One of unit_address or unit_id is required.
          allOf:
            - $ref: '#/components/schemas/InviteLease'
        metadata:
          description: >-
            Optional key-value object. Use this field to include internal
            references, identifiers, or any additional data that helps link this
            lease to your internal system. Each key must be a string, and values
            can be strings, numbers, booleans, or null.
          type: object
          nullable: true
        object:
          type: string
          example: invite
        obligee:
          description: >-
            The party that will be the obligee/claimant on the surety bond. This
            can be a limited liability company (LLC), a property management
            company, the property name, or the legal name of a sole proprietor
            owner.
          type: string
          example: Rivermark Residential LLC
          nullable: true
        property_id:
          type: string
          example: prop_01HQ7A
        status:
          type: string
          enum:
            - created
            - accepted
            - canceled
            - expired
          example: accepted
    ErrorResponse:
      type: object
      required:
        - message
        - object
      properties:
        message:
          type: string
          example: invite not found
        object:
          type: string
          example: error
    LeaseUnitAddress:
      type: object
      required:
        - city
        - line1
        - postal_code
        - state
      properties:
        city:
          description: City which this address is located in
          type: string
          example: Brooklyn
        line1:
          description: Address line 1
          type: string
          example: 412 Halsey St
        line2:
          description: Address line 2
          type: string
          example: Apt 3R
          nullable: true
        postal_code:
          description: Postal or Zip code for this address
          type: string
          example: '11233'
        state:
          description: State which this address is located in
          type: string
          example: NY
    InviteRecipient:
      type: object
      required:
        - email
        - first_name
        - id
        - last_name
        - link
        - object
      properties:
        email:
          type: string
          format: email
          example: dana.whitfield@example.com
        first_name:
          type: string
          example: Dana
        id:
          type: string
          example: ivre_01HQ8Y
        last_name:
          type: string
          example: Whitfield
        link:
          description: >-
            URL that links the prospective renter to their prefilled
            TheGuarantors application.
          type: string
          format: uri
          example: https://qualify.theguarantors.com/invite/sign-up/k3v9q2m7x1p4r8tz
        metadata:
          type: object
          nullable: true
        object:
          type: string
          example: invite_recipient
        phone_number:
          description: >-
            Phone number in E.164 format, for example `+12125551234`. Spaces and
            formatting characters such as parentheses, dashes and dots are
            removed. A 10-digit number without a country code is treated as a US
            number and gets `+1` added. Include the `+` and country code for any
            other number.
          type: string
          example: '+15551234567'
          nullable: true
    InviteLease:
      type: object
      required:
        - monthly_rent
        - object
        - unit_address
      properties:
        end_date:
          description: The date when this lease expires.
          type: string
          format: date
          example: '2027-08-31'
          nullable: true
        free_rent_amount:
          description: The amount of free rent (in cents) granted to the applicant.
          type: integer
          maximum: 5000000
          minimum: 0
          example: 0
        monthly_rent:
          description: Monthly rent in cents.
          type: integer
          minimum: 1
          example: 280000
        object:
          type: string
          example: lease
        prepaid_rent_amount:
          description: The amount of rent (in cents) paid in advance.
          type: integer
          maximum: 5000000
          minimum: 0
          example: 0
        start_date:
          description: The date when this lease takes effect.
          type: string
          format: date
          example: '2026-09-01'
          nullable: true
        unit_address:
          description: >-
            The unit address that would be printed on the lease, and therefore
            the Lease Guarantee surety bond. If you do not store the address
            with separate address line 1s and address line 2, put the full unit
            address in the address line 1.
          allOf:
            - $ref: '#/components/schemas/Address'
    Address:
      type: object
      required:
        - city
        - line1
        - object
        - postal_code
        - state
      properties:
        city:
          description: City which this address is located in
          type: string
          example: Brooklyn
        line1:
          description: Address line 1
          type: string
          example: 412 Halsey St
        line2:
          description: Address line 2
          type: string
          example: Apt 3R
          nullable: true
        object:
          type: string
          example: address
        postal_code:
          description: Postal or Zip code for this address
          type: string
          example: '11233'
        state:
          description: State which this address is located in
          type: string
          example: NY
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic

````