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

# Create Person



## OpenAPI

````yaml /openapi/tms.json post /people
openapi: 3.0.3
info:
  title: Universal TMS API Documentation
  description: Development documentation
  version: '1.0'
servers:
  - url: https://tms.universal.rollout.com/api
security: []
paths:
  /people:
    post:
      tags:
        - People
      summary: Create Person
      operationId: postPeople
      parameters:
        - name: fields
          in: query
          required: false
          schema:
            type: string
            description: >-
              Comma-separated top-level fields to return; the parameter can also
              be repeated, once per field. `id` is always returned. Omit it, or
              pass `allFields`, to get every field, including `original`. Custom
              fields can be named too (`custom` followed by the capitalized
              name). Unknown names return 400.
      requestBody:
        description: >-
          A person to create. Custom fields are set as `custom<Name>`
          properties, with the CRM's field name capitalized.
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                firstName:
                  type: string
                lastName:
                  type: string
                timezone:
                  nullable: true
                  type: string
                stage:
                  type: string
                stageId:
                  type: string
                assignedUserId:
                  type: string
                assignedPondId:
                  type: string
                officeId:
                  type: string
                timeframeId:
                  type: string
                emails:
                  type: array
                  items:
                    type: object
                    properties:
                      value:
                        type: string
                      type:
                        type: string
                      status:
                        type: string
                      isPrimary:
                        type: boolean
                    required:
                      - value
                phones:
                  type: array
                  items:
                    type: object
                    properties:
                      value:
                        type: string
                      type:
                        type: string
                      status:
                        type: string
                      isPrimary:
                        nullable: true
                        type: boolean
                    required:
                      - value
                addresses:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      street:
                        type: string
                      city:
                        type: string
                      state:
                        type: string
                      code:
                        type: string
                      country:
                        type: string
                tags:
                  type: array
                  items:
                    type: string
                source:
                  type: string
                systemSource:
                  type: string
                averageBeds:
                  type: number
                averagePrice:
                  type: number
                birthday:
                  type: string
                rating:
                  type: number
                lastActivity:
                  type: string
                lastActivityType:
                  type: string
                contactTypes:
                  type: array
                  items:
                    type: string
                jobTitle:
                  type: string
                companyName:
                  type: string
                communicationsConsent:
                  type: object
                  properties:
                    email:
                      type: boolean
                    call:
                      type: boolean
                    text:
                      type: boolean
                    massEmail:
                      type: boolean
                    postal:
                      type: boolean
                    visit:
                      type: boolean
                sourceId:
                  type: string
              required:
                - firstName
                - lastName
              additionalProperties: {}
              description: >-
                A person to create. Custom fields are set as `custom<Name>`
                properties, with the CRM's field name capitalized.
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                firstName:
                  type: string
                lastName:
                  type: string
                timezone:
                  nullable: true
                  type: string
                stage:
                  type: string
                stageId:
                  type: string
                assignedUserId:
                  type: string
                assignedPondId:
                  type: string
                officeId:
                  type: string
                timeframeId:
                  type: string
                emails:
                  type: array
                  items:
                    type: object
                    properties:
                      value:
                        type: string
                      type:
                        type: string
                      status:
                        type: string
                      isPrimary:
                        type: boolean
                    required:
                      - value
                phones:
                  type: array
                  items:
                    type: object
                    properties:
                      value:
                        type: string
                      type:
                        type: string
                      status:
                        type: string
                      isPrimary:
                        nullable: true
                        type: boolean
                    required:
                      - value
                addresses:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      street:
                        type: string
                      city:
                        type: string
                      state:
                        type: string
                      code:
                        type: string
                      country:
                        type: string
                tags:
                  type: array
                  items:
                    type: string
                source:
                  type: string
                systemSource:
                  type: string
                averageBeds:
                  type: number
                averagePrice:
                  type: number
                birthday:
                  type: string
                rating:
                  type: number
                lastActivity:
                  type: string
                lastActivityType:
                  type: string
                contactTypes:
                  type: array
                  items:
                    type: string
                jobTitle:
                  type: string
                companyName:
                  type: string
                communicationsConsent:
                  type: object
                  properties:
                    email:
                      type: boolean
                    call:
                      type: boolean
                    text:
                      type: boolean
                    massEmail:
                      type: boolean
                    postal:
                      type: boolean
                    visit:
                      type: boolean
                sourceId:
                  type: string
              required:
                - firstName
                - lastName
              additionalProperties: {}
              description: >-
                A person to create. Custom fields are set as `custom<Name>`
                properties, with the CRM's field name capitalized.
          multipart/form-data:
            schema:
              type: object
              properties:
                firstName:
                  type: string
                lastName:
                  type: string
                timezone:
                  nullable: true
                  type: string
                stage:
                  type: string
                stageId:
                  type: string
                assignedUserId:
                  type: string
                assignedPondId:
                  type: string
                officeId:
                  type: string
                timeframeId:
                  type: string
                emails:
                  type: array
                  items:
                    type: object
                    properties:
                      value:
                        type: string
                      type:
                        type: string
                      status:
                        type: string
                      isPrimary:
                        type: boolean
                    required:
                      - value
                phones:
                  type: array
                  items:
                    type: object
                    properties:
                      value:
                        type: string
                      type:
                        type: string
                      status:
                        type: string
                      isPrimary:
                        nullable: true
                        type: boolean
                    required:
                      - value
                addresses:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      street:
                        type: string
                      city:
                        type: string
                      state:
                        type: string
                      code:
                        type: string
                      country:
                        type: string
                tags:
                  type: array
                  items:
                    type: string
                source:
                  type: string
                systemSource:
                  type: string
                averageBeds:
                  type: number
                averagePrice:
                  type: number
                birthday:
                  type: string
                rating:
                  type: number
                lastActivity:
                  type: string
                lastActivityType:
                  type: string
                contactTypes:
                  type: array
                  items:
                    type: string
                jobTitle:
                  type: string
                companyName:
                  type: string
                communicationsConsent:
                  type: object
                  properties:
                    email:
                      type: boolean
                    call:
                      type: boolean
                    text:
                      type: boolean
                    massEmail:
                      type: boolean
                    postal:
                      type: boolean
                    visit:
                      type: boolean
                sourceId:
                  type: string
              required:
                - firstName
                - lastName
              additionalProperties: {}
              description: >-
                A person to create. Custom fields are set as `custom<Name>`
                properties, with the CRM's field name capitalized.
      responses:
        '200':
          description: >-
            A person. Custom fields come back as `custom<Name>` properties, with
            the CRM's field name capitalized.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  name:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  firstName:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  lastName:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  timezone:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  archived:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: boolean
                  assignedUserId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  assignedPondId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  officeId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  timeframeId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  stage:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  stageId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  tags:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: array
                    items:
                      type: string
                  originalIds:
                    description: Present unless the request's `fields` leaves it out.
                    type: object
                    additionalProperties:
                      anyOf:
                        - type: number
                        - type: string
                  original:
                    description: Present unless the request's `fields` leaves it out.
                    type: object
                    additionalProperties:
                      type: object
                      additionalProperties: {}
                  created:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  updated:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  rolloutUpdated:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  addresses:
                    description: Present unless the request's `fields` leaves it out.
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        street:
                          type: string
                        city:
                          type: string
                        state:
                          type: string
                        code:
                          type: string
                        country:
                          type: string
                      required:
                        - type
                        - street
                        - city
                        - state
                        - code
                        - country
                  emails:
                    description: Present unless the request's `fields` leaves it out.
                    type: array
                    items:
                      type: object
                      properties:
                        value:
                          type: string
                        type:
                          type: string
                        status:
                          type: string
                        isPrimary:
                          nullable: true
                          type: boolean
                      required:
                        - value
                        - type
                        - status
                        - isPrimary
                  phones:
                    description: Present unless the request's `fields` leaves it out.
                    type: array
                    items:
                      type: object
                      properties:
                        value:
                          type: string
                        type:
                          type: string
                        status:
                          type: string
                        isPrimary:
                          nullable: true
                          type: boolean
                      required:
                        - value
                        - type
                        - status
                        - isPrimary
                  source:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  sourceId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  systemSource:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  averageBeds:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: number
                  averagePrice:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: number
                  birthday:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  rating:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: number
                  lastActivity:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  lastActivityType:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  contactTypes:
                    description: Present unless the request's `fields` leaves it out.
                    type: array
                    items:
                      type: string
                  jobTitle:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  companyName:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  communicationsConsent:
                    description: Present unless the request's `fields` leaves it out.
                    type: object
                    properties:
                      email:
                        type: boolean
                      call:
                        type: boolean
                      text:
                        type: boolean
                      massEmail:
                        type: boolean
                      postal:
                        type: boolean
                      visit:
                        type: boolean
                required:
                  - id
                additionalProperties: {}
                description: >-
                  A person. Custom fields come back as `custom<Name>`
                  properties, with the CRM's field name capitalized.
        '201':
          description: >-
            A person. Custom fields come back as `custom<Name>` properties, with
            the CRM's field name capitalized.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  name:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  firstName:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  lastName:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  timezone:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  archived:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: boolean
                  assignedUserId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  assignedPondId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  officeId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  timeframeId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  stage:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  stageId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  tags:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: array
                    items:
                      type: string
                  originalIds:
                    description: Present unless the request's `fields` leaves it out.
                    type: object
                    additionalProperties:
                      anyOf:
                        - type: number
                        - type: string
                  original:
                    description: Present unless the request's `fields` leaves it out.
                    type: object
                    additionalProperties:
                      type: object
                      additionalProperties: {}
                  created:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  updated:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  rolloutUpdated:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  addresses:
                    description: Present unless the request's `fields` leaves it out.
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        street:
                          type: string
                        city:
                          type: string
                        state:
                          type: string
                        code:
                          type: string
                        country:
                          type: string
                      required:
                        - type
                        - street
                        - city
                        - state
                        - code
                        - country
                  emails:
                    description: Present unless the request's `fields` leaves it out.
                    type: array
                    items:
                      type: object
                      properties:
                        value:
                          type: string
                        type:
                          type: string
                        status:
                          type: string
                        isPrimary:
                          nullable: true
                          type: boolean
                      required:
                        - value
                        - type
                        - status
                        - isPrimary
                  phones:
                    description: Present unless the request's `fields` leaves it out.
                    type: array
                    items:
                      type: object
                      properties:
                        value:
                          type: string
                        type:
                          type: string
                        status:
                          type: string
                        isPrimary:
                          nullable: true
                          type: boolean
                      required:
                        - value
                        - type
                        - status
                        - isPrimary
                  source:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  sourceId:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  systemSource:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  averageBeds:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: number
                  averagePrice:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: number
                  birthday:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  rating:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: number
                  lastActivity:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  lastActivityType:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  contactTypes:
                    description: Present unless the request's `fields` leaves it out.
                    type: array
                    items:
                      type: string
                  jobTitle:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  companyName:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  communicationsConsent:
                    description: Present unless the request's `fields` leaves it out.
                    type: object
                    properties:
                      email:
                        type: boolean
                      call:
                        type: boolean
                      text:
                        type: boolean
                      massEmail:
                        type: boolean
                      postal:
                        type: boolean
                      visit:
                        type: boolean
                required:
                  - id
                additionalProperties: {}
                description: >-
                  A person. Custom fields come back as `custom<Name>`
                  properties, with the CRM's field name capitalized.
        '400':
          description: Response for status 400
          content:
            application/json:
              schema:
                type: object
                properties:
                  errorMessage:
                    type: string
                required:
                  - errorMessage
        '409':
          description: Response for status 409
          content:
            application/json:
              schema:
                type: object
                properties:
                  errorMessage:
                    type: string
                    enum:
                      - >-
                        Data for this credential is not ready yet. Please try
                        again.
                required:
                  - errorMessage
        '423':
          description: >-
            423 Locked — the credential is temporarily frozen by an operator.
            Reads still work; POST/PATCH/PUT/DELETE are rejected until it is
            unfrozen. Unlike 424 (invalid credential), do not re-authenticate —
            retry later.
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        message:
                          type: string
                      required:
                        - message
                required:
                  - errors
      security:
        - jwt: []
          credential_id: []
components:
  securitySchemes:
    jwt:
      type: http
      scheme: bearer
      description: Consumer JWT minted by the tenant's backend
    credential_id:
      type: apiKey
      in: header
      name: X-Rollout-Credential-Id
      description: The Rollout Credential ID to use for queries/mutations

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.