> ## Documentation Index
> Fetch the complete documentation index at: https://openphone-dev.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a contact

> Create a new contact in the organization.



## OpenAPI

````yaml https://openphone-public-api-dev.s3.us-west-2.amazonaws.com/public/openphone-public-api-2026-03-30-dev.json post /contacts
openapi: 3.1.0
info:
  title: Quo Public API
  version: 1.0.0
  description: API for connecting with Quo.
  contact:
    name: Quo Support
    email: support@quo.com
    url: https://support.quo.com/
  termsOfService: https://www.quo.com/terms
servers:
  - description: Development server
    url: https://dev-public-api.openphone.dev
security:
  - apiKey: []
tags:
  - description: Operations related to calls
    name: Calls
  - description: >-
      Operations related to call summaries, including AI-generated summaries and
      Sona voice assistant summaries
    name: Call Summaries
  - description: >-
      Operations related to call transcripts, including AI-generated transcripts
      and Sona voice assistant transcripts
    name: Call Transcripts
  - description: Operations related to contacts
    name: Contacts
  - description: Operations related to contact properties
    name: Contact Properties
  - description: Operations related to conversations
    name: Conversations
  - description: Operations related to text messages
    name: Messages
  - description: Operations related to phone numbers
    name: Phone Numbers
  - description: Operations related to users
    name: Users
  - description: Operations related to webhooks
    name: Webhooks
  - description: >-
      Operations related to webhook events, including delivery history and test
      events
    name: Webhook Events
paths:
  /contacts:
    post:
      tags:
        - Contacts
      summary: Create a contact
      description: Create a new contact in the organization.
      operationId: createContact
      parameters:
        - in: header
          name: Quo-Api-Version
          required: true
          schema:
            type: string
            enum:
              - '2026-03-30'
            description: 'API version header. Supported values: 2026-03-30'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - firstName
              properties:
                firstName:
                  description: The first name of the contact.
                  examples:
                    - Alice
                  type: string
                  example: Alice
                lastName:
                  anyOf:
                    - description: The last name of the contact.
                      examples:
                        - Johnson
                      type: string
                      example: Johnson
                    - type: 'null'
                company:
                  anyOf:
                    - description: The company of the contact.
                      examples:
                        - Acme Corp
                      type: string
                      example: Acme Corp
                    - type: 'null'
                role:
                  anyOf:
                    - description: The role of the contact.
                      examples:
                        - CEO
                      type: string
                      example: CEO
                    - type: 'null'
                externalId:
                  anyOf:
                    - description: The external ID of the contact.
                      examples:
                        - external-001
                      type: string
                      example: external-001
                    - type: 'null'
                source:
                  anyOf:
                    - description: The source of the contact.
                      examples:
                        - external
                      type: string
                      example: external
                    - type: 'null'
                sourceUrl:
                  anyOf:
                    - description: A link to the contact in the source system.
                      format: uri
                      examples:
                        - https://example.com/contacts/001
                      minLength: 1
                      maxLength: 200
                      type: string
                      example: https://example.com/contacts/001
                    - type: 'null'
                actorId:
                  anyOf:
                    - description: >-
                        The actor ID to attribute contact creation to. Defaults
                        to the organization owner.
                      examples:
                        - US123abc
                      pattern: ^US(.*)$
                      type: string
                      example: US123abc
                    - type: 'null'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                properties:
                  data:
                    type: object
                    required:
                      - id
                      - createdAt
                      - updatedAt
                      - actorId
                    properties:
                      id:
                        description: The ID of the contact.
                        examples:
                          - 6a145ff26212a192852c856e
                        pattern: ^(.*)$
                        type: string
                        example: 6a145ff26212a192852c856e
                      externalId:
                        anyOf:
                          - description: The external ID of the contact.
                            examples:
                              - '1234567890'
                            type: string
                            example: '1234567890'
                          - type: 'null'
                      source:
                        anyOf:
                          - description: The source of the contact.
                            examples:
                              - public-api
                            type: string
                            example: public-api
                          - type: 'null'
                      sourceUrl:
                        anyOf:
                          - description: A link to the contact in the source system.
                            format: uri
                            examples:
                              - https://example.com/contacts/001
                            minLength: 1
                            maxLength: 200
                            type: string
                            example: https://example.com/contacts/001
                          - type: 'null'
                      firstName:
                        anyOf:
                          - description: The first name of the contact.
                            examples:
                              - John
                            type: string
                            example: John
                          - type: 'null'
                      lastName:
                        anyOf:
                          - description: The last name of the contact.
                            examples:
                              - Doe
                            type: string
                            example: Doe
                          - type: 'null'
                      company:
                        anyOf:
                          - description: The company of the contact.
                            examples:
                              - Quo
                            type: string
                            example: Quo
                          - type: 'null'
                      role:
                        anyOf:
                          - description: The role of the contact.
                            examples:
                              - admin
                            type: string
                            example: admin
                          - type: 'null'
                      createdAt:
                        description: The timestamp of the contact creation.
                        examples:
                          - '2021-01-01T00:00:00Z'
                        format: date-time
                        type: string
                        example: '2021-01-01T00:00:00Z'
                      updatedAt:
                        description: The timestamp of the contact update.
                        examples:
                          - '2021-01-01T00:00:00Z'
                        format: date-time
                        type: string
                        example: '2021-01-01T00:00:00Z'
                      actorId:
                        description: The actor ID of the contact.
                        examples:
                          - US123abc
                        example: US123abc
                        anyOf:
                          - pattern: ^US(.*)$
                            type: string
                          - pattern: ^SYU(.*)$
                            type: string
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - docs
                  - title
                properties:
                  message:
                    type: string
                  docs:
                    const: https://quo.com/docs
                    type: string
                  title:
                    const: Bad Request
                    type: string
                  trace:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - path
                        - message
                        - schema
                      properties:
                        path:
                          type: string
                        message:
                          type: string
                        value: {}
                        schema:
                          type: object
                          required:
                            - type
                          properties:
                            type:
                              type: string
              example:
                message: The input was invalid
                docs: https://quo.com/docs
                title: Bad Request
                trace: '6897907457496870895'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - docs
                  - title
                properties:
                  message:
                    type: string
                  docs:
                    const: https://quo.com/docs
                    type: string
                  title:
                    const: Unauthorized
                    type: string
                  trace:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - path
                        - message
                        - schema
                      properties:
                        path:
                          type: string
                        message:
                          type: string
                        value: {}
                        schema:
                          type: object
                          required:
                            - type
                          properties:
                            type:
                              type: string
              example:
                message: User is unauthorized to perform this action
                docs: https://quo.com/docs
                title: Unauthorized
                trace: '6897907457496870895'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - docs
                  - title
                properties:
                  message:
                    type: string
                  docs:
                    const: https://quo.com/docs
                    type: string
                  title:
                    const: Forbidden
                    type: string
                  trace:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - path
                        - message
                        - schema
                      properties:
                        path:
                          type: string
                        message:
                          type: string
                        value: {}
                        schema:
                          type: object
                          required:
                            - type
                          properties:
                            type:
                              type: string
              example:
                message: User is forbidden to perform this action
                docs: https://quo.com/docs
                title: Forbidden
                trace: '6897907457496870895'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - docs
                  - title
                properties:
                  message:
                    type: string
                  docs:
                    const: https://quo.com/docs
                    type: string
                  title:
                    const: Not Found
                    type: string
                  trace:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - path
                        - message
                        - schema
                      properties:
                        path:
                          type: string
                        message:
                          type: string
                        value: {}
                        schema:
                          type: object
                          required:
                            - type
                          properties:
                            type:
                              type: string
              example:
                message: The contact was not found
                docs: https://quo.com/docs
                title: Not Found
                trace: '6897907457496870895'
        '500':
          description: Unknown Error
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - docs
                  - title
                properties:
                  message:
                    type: string
                  docs:
                    const: https://quo.com/docs
                    type: string
                  title:
                    const: Unknown
                    type: string
                  trace:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - path
                        - message
                        - schema
                      properties:
                        path:
                          type: string
                        message:
                          type: string
                        value: {}
                        schema:
                          type: object
                          required:
                            - type
                          properties:
                            type:
                              type: string
              example:
                message: An unknown error has occurred
                docs: https://quo.com/docs
                title: Unknown Error
                trace: '6897907457496870895'
      security:
        - apiKey: []
components:
  securitySchemes:
    apiKey:
      in: header
      name: Authorization
      type: apiKey

````