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

# Queue outbound call(s) from your Agent

> Queue call Tasks for one target or up to 10,000 targets. The endpoint accepts Task goals, retry policies, organization defaults, external correlation IDs, metadata, and Contact List enrollment. Submissions over 1,000 targets require Idempotency-Key and return 202.



## OpenAPI

````yaml post /api/v2/agent/outboundCall
openapi: 3.0.0
info:
  version: 2.0.0
  title: Vida API
  description: Vida API Documentation
servers:
  - url: https://api.vida.dev
    description: Vida Production
    variables:
      baseUrl:
        default: api.vida.dev
        description: Production API Root
security: []
tags:
  - name: Agents
  - name: Inbound Email
    description: Control which senders may create inbound email work for an Agent.
  - name: Features
    description: Inspect capabilities available within an account hierarchy.
  - name: Conversation Logs
    description: Query conversation activity and calculate account-level metrics.
  - name: Computer Agents
    description: Set up, configure, inspect, and manage Vida Computer Agents.
  - name: Computer Agent Sessions
    description: View and reset Computer Agent sessions.
  - name: Accounts
  - name: Agent Templates
    description: Create, manage, and apply reusable Agent configurations.
paths:
  /api/v2/agent/outboundCall:
    post:
      tags:
        - Agents
      summary: Queue outbound call(s) from your Agent
      description: >-
        Queue call Tasks for one target or up to 10,000 targets. The endpoint
        accepts Task goals, retry policies, organization defaults, external
        correlation IDs, metadata, and Contact List enrollment. Submissions over
        1,000 targets require Idempotency-Key and return 202.
      parameters:
        - name: Idempotency-Key
          in: header
          required: false
          schema:
            type: object
            properties:
              type:
                type: string
                example: string
              maxLength:
                type: number
                example: 200
          description: >-
            Required for submissions over 1,000 targets. Repeating the same key
            and payload safely resumes or returns that submission.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              oneOf:
                - type: object
                  required:
                    - target
                  properties:
                    target:
                      type: string
                      description: Phone in E.164 or VIDA username
                      example: '+1234567890'
                    context:
                      type: string
                      description: Context for the agent to use during the call
                      example: 'Name: Lyle Pratt. Interested in product demo.'
                    taskContext:
                      type: string
                      description: Task-specific context injected only for this call
                    greeting:
                      type: string
                      description: Custom greeting to use at call start
                    waitToGreet:
                      type: boolean
                      description: Delay greeting until caller speaks
                    accountId:
                      type: integer
                      description: Optional agent account id override for the call
                    scheduledFor:
                      type: integer
                      description: Unix seconds in the future to schedule the call
                    goal:
                      type: object
                      nullable: true
                      description: >-
                        Task-specific goal with completionCriteria. Omit or pass
                        null to use the organization default.
                    retryPolicy:
                      type: object
                      nullable: true
                      description: >-
                        Task-specific cadence using delaysSeconds or
                        mixed-channel steps, retryOn, and optional
                        responseTimeoutSeconds. Omit or pass null to use the
                        organization default.
                    meta:
                      type: object
                      description: >-
                        Optional metadata. To call target first and then bridge
                        them to another destination, pass bridgeAfterAnswer with
                        destination and optional monitor.
                    externalTaskId:
                      type: string
                      description: >-
                        Reusable customer correlation/grouping ID; not an
                        idempotency key
                    contactListName:
                      type: string
                      description: Optional Contact List to enroll the contact into
                - type: object
                  required:
                    - targets
                  properties:
                    targets:
                      description: Array of destinations or objects with per-item options
                      oneOf:
                        - type: array
                          items:
                            type: string
                            example: '+1234567890'
                        - type: array
                          items:
                            type: object
                            required:
                              - target
                            properties:
                              target:
                                type: string
                                example: '+1234567890'
                              context:
                                type: string
                              taskContext:
                                type: string
                              accountId:
                                type: integer
                              scheduledFor:
                                type: integer
                              greeting:
                                type: string
                              waitToGreet:
                                type: boolean
                              goal:
                                type: object
                                description: Goal for this Task
                              retryPolicy:
                                type: object
                                description: >-
                                  Per-target retry override; null uses the
                                  organization default
                              meta:
                                type: object
                              contactListName:
                                type: string
                              externalTaskId:
                                type: string
                                description: Identifier applied to this task
                    context:
                      type: string
                      description: >-
                        Context applied to all items when targets is an array of
                        strings
                    taskContext:
                      type: string
                      description: >-
                        Task-specific context applied to all items when targets
                        is an array of strings
                    greeting:
                      type: string
                      description: >-
                        Greeting applied to all items when targets is an array
                        of strings
                    waitToGreet:
                      type: boolean
                      description: >-
                        Delay greeting until caller speaks for all items when
                        targets is an array of strings
                    accountId:
                      type: integer
                      description: >-
                        Account id applied to all items when not provided per
                        item
                    scheduledFor:
                      type: integer
                      description: Schedule applied to all items when not provided per item
                    goal:
                      type: object
                      description: >-
                        Goal applied to each Task unless that item provides its
                        own
                    retryPolicy:
                      type: object
                      description: >-
                        Task-specific retry override applied to all items;
                        omitted or null values use the organization default
                    scheduleSpacingSec:
                      type: integer
                      description: >-
                        If provided, stagger scheduledFor by this many seconds
                        per index
                      example: 30
                    meta:
                      type: object
                      description: Metadata applied to all items when not provided per item
                    externalTaskId:
                      type: string
                      description: >-
                        Reusable correlation/grouping ID applied to all created
                        Tasks
                    contactListName:
                      type: string
                      description: Contact List to enroll every contact into
            examples:
              single:
                summary: Single target
                value:
                  target: '+15551234567'
                  context: Call back about pricing
              bridgeAfterAnswer:
                summary: Call the customer, then bridge them to another number
                value:
                  target: '+15551111111'
                  meta:
                    bridgeAfterAnswer:
                      destination: '+15552222222'
                      monitor: true
              batchStrings:
                summary: Multiple string targets with shared context
                value:
                  targets:
                    - '+15551230001'
                    - '+15551230002'
                    - '+15551230003'
                  context: Follow up on demo request
                  scheduleSpacingSec: 15
              batchObjects:
                summary: Multiple object targets with per-item overrides
                value:
                  targets:
                    - target: '+15551230001'
                      context: VIP
                      scheduledFor: 1730000000
                    - target: '+15551230002'
                  accountId: 1234
      responses:
        '200':
          description: Queued successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  message:
                    type: string
                    example: Outbound call initiated.
                  inserted:
                    type: integer
                    example: 3
                  batchId:
                    type: string
                    example: f52b1e01-5cbc-483c-9939-3bf7d37e1426
                  tasks:
                    type: array
                    items:
                      type: object
        '202':
          description: Large call Task submission accepted for asynchronous creation
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '409':
          description: Idempotency conflict or overlapping active retryable Task
        '500':
          description: Server Error
      security:
        - apiKeyAuth: []
components:
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: query
      name: token
      description: Vida API Token

````