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

# Create contacts for a campaign

> Adds contacts to the specified campaign. Optionally fixes US phone numbers by adding a leading 1 if not present.



## OpenAPI

````yaml https://api.callers.ai/openapi-json post /campaigns/{campaignId}/contacts/bulk
openapi: 3.0.0
info:
  title: Callers API
  description: API documentation for Callers, providing endpoints for seamless integration.
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.callers.ai
security: []
tags: []
paths:
  /campaigns/{campaignId}/contacts/bulk:
    post:
      tags:
        - Contacts
      summary: Create contacts for a campaign
      description: >-
        Adds contacts to the specified campaign. Optionally fixes US phone
        numbers by adding a leading 1 if not present.
      operationId: CampaignPublicController_createContacts
      parameters:
        - name: campaignId
          required: true
          in: path
          schema:
            type: string
        - name: fixUSPhoneNumber
          required: false
          in: query
          description: Will add 1 to the phone number if it doesn't starts with 1
          schema:
            type: boolean
        - name: verbose
          required: false
          in: query
          description: >-
            When true, returns detailed contact information including phone
            numbers and status (created/updated) for each contact. Default is
            false (returns only contact IDs)
          schema:
            type: boolean
        - name: x-sub-organization-id
          in: header
          schema:
            type: string
          description: >-
            Optional sub organization ID. Must belong to your main organization
            API key.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkContactsCreateDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/createMultipleContactsResponseDto'
        '400':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                      - error
                  message:
                    type: string
                  data:
                    type: array
                    items:
                      type: object
        '403':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                      - error
                  message:
                    type: string
        '404':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                      - error
                  message:
                    type: string
      security:
        - Authorization: []
components:
  schemas:
    BulkContactsCreateDto:
      type: object
      properties:
        contacts:
          description: Array of contacts to create.
          type: array
          items:
            $ref: '#/components/schemas/CampaignContactCreateDto'
      required:
        - contacts
    createMultipleContactsResponseDto:
      type: object
      properties:
        requested:
          type: number
          description: Number of contacts received in the request
        added:
          type: number
          description: Number of new contacts created
        modified:
          type: number
          description: Number of contacts modified
        contactIds:
          description: List of IDs for contacts created or modified
          type: array
          items:
            type: string
        contactDetails:
          description: >-
            Detailed contact information with phone numbers and status
            (created/updated). Only included when verbose=true
          type: array
          items:
            $ref: '#/components/schemas/ContactDetailsDto'
      required:
        - requested
        - added
        - modified
        - contactIds
    CampaignContactCreateDto:
      type: object
      properties:
        name:
          type: string
          minLength: 1
        phoneNumber:
          type: string
          minLength: 7
          maxLength: 20
          pattern: ^\+?[\d()-]+$
        phoneNumbers:
          type: array
          items:
            type: string
            minLength: 7
            maxLength: 20
            pattern: ^\+?[\d()-]+$
        timezone:
          type: string
        data:
          type: object
          additionalProperties:
            type: string
        archived:
          type: boolean
          default: false
      required:
        - name
        - data
    ContactDetailsDto:
      type: object
      properties:
        contactId:
          type: string
          description: Contact ID
        phoneNumber:
          type: string
          description: Contact phone number
        status:
          type: string
          enum:
            - created
            - updated
          description: >-
            Contact status: created (new contact) or updated (existing contact
            modified)
      required:
        - contactId
        - phoneNumber
        - status
  securitySchemes:
    Authorization:
      type: apiKey
      in: header
      name: Authorization

````