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

# List calls



## OpenAPI

````yaml GET /v1/calls
openapi: 3.0.1
info:
  title: Volubile API
  version: v1
servers:
  - url: https://api.eu.volubile.ai
    description: Generated server url
security: []
paths:
  /v1/calls:
    get:
      tags:
        - Call
      summary: List calls
      operationId: list
      parameters:
        - name: agentId
          in: query
          description: Filter by agent id
          required: false
          schema:
            type: string
            description: Filter by agent id
            format: uuid
        - name: phone
          in: query
          description: Filter by phone number, in the E.164 international standard format
          required: false
          schema:
            type: string
            description: Filter by phone number, in the E.164 international standard format
            example: '+33612345678'
          example: '+33612345678'
        - name: campaignName
          in: query
          description: Filter by campaign name
          required: false
          schema:
            type: string
            description: Filter by campaign name
        - name: from
          in: query
          description: |
            Filter by date, inclusive lower bound. Requires 'to' to not be null.

            Format: YYYY-MM-DD
          required: false
          schema:
            type: string
            description: >
              Filter by date, inclusive lower bound. Requires 'to' to not be
              null.


              Format: YYYY-MM-DD
            example: '2024-08-01'
          example: '2024-08-01'
        - name: to
          in: query
          description: >
            Filter by date, inclusive upper bound. Requires 'from' to not be
            null.


            Format: YYYY-MM-DD
          required: false
          schema:
            type: string
            description: >
              Filter by date, inclusive upper bound. Requires 'from' to not be
              null.


              Format: YYYY-MM-DD
            example: '2024-08-31'
          example: '2024-08-31'
        - name: page
          in: query
          description: The page number to be returned, starts at 1
          required: false
          schema:
            minimum: 1
            type: string
            description: The page number to be returned, starts at 1
            default: '1'
        - name: size
          in: query
          description: The number of items to be returned, maximum 100
          required: false
          schema:
            maximum: 100
            type: string
            description: The number of items to be returned, maximum 100
            default: '25'
        - name: sort
          in: query
          description: The sort property and direction
          required: false
          schema:
            type: string
            description: The sort property and direction
            example: property,DESC
            enum:
              - <property>,ASC
              - <property>,DESC
          example: property,DESC
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageResponseCallResponse'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: >
            Unauthorized access. The request has not been applied because it
            lacks valid authentication credentials.

            Possible reasons include that the API key is missing from the
            request headers, the provided API key is disabled,

            or the API key is associated with a customer account that is
            disabled.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - Api key: []
        - Bearer token: []
components:
  schemas:
    PageResponseCallResponse:
      type: object
      properties:
        content:
          type: array
          description: List of items in the current page
          items:
            $ref: '#/components/schemas/CallResponse'
        size:
          type: integer
          description: The size of the page
          format: int32
        page:
          type: integer
          description: The page number
          format: int32
        totalElements:
          type: integer
          description: The total amount of elements
          format: int64
        totalPages:
          type: integer
          description: The number of total pages
          format: int32
    ErrorResponse:
      type: object
      properties:
        timestamp:
          type: string
          description: |
            Date and time when the error occurs.

            Format: UTC time - yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
          format: date-time
        status:
          type: integer
          description: Http status code
          format: int32
        message:
          type: string
          description: Information about the error
        errors:
          type: array
          description: List of specific validation errors
          items:
            $ref: '#/components/schemas/ValidationError'
    CallResponse:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the call
          format: uuid
        agentId:
          type: string
          description: Unique identifier of the agent
          format: uuid
        phone:
          type: string
          description: >-
            Phone number of the other party, in the E.164 international standard
            format
          example: '+33612345678'
        type:
          type: string
          description: Type of the call
          enum:
            - INBOUND
            - OUTBOUND
        duration:
          type: integer
          description: Duration of the call in seconds
          format: int64
          example: 360
        startTime:
          type: string
          description: |
            Start time of the call.

            Format: UTC time - yyyy-MM-dd'T'HH:mm:ss'Z'
          format: date-time
          example: '2024-07-30T14:35:00Z'
        endTime:
          type: string
          description: |
            End time of the call.

            Format: UTC time - yyyy-MM-dd'T'HH:mm:ss'Z'
          format: date-time
          example: '2024-07-30T14:41:00Z'
        anonymous:
          type: boolean
          description: If the call was anonymous
        status:
          type: string
          description: Status of the call
          enum:
            - IN_PROGRESS
            - CANCELED
            - COMPLETED
            - NO_ANSWER
            - VOICE_BOX
            - UNREACHABLE
            - FAILED
            - TRANSFERRED
            - REJECTED
            - FAILOVER
            - REJECTED_LIMIT_REACHED
            - REJECTED_MAX_CONCURRENCY
        extractors:
          type: array
          description: >-
            Result of the extractors. Each extractor is represented by an object
            with 'name' and 'value' fields.
          example:
            - name: customer
              value:
                - name: firstname
                  value:
                    - John
                - name: lastname
                  value:
                    - Doe
                - name: address
                  value:
                    - 123 Main St
            - name: example
              value:
                - example1
          items:
            type: object
            additionalProperties:
              type: object
        extractedData:
          type: object
          additionalProperties:
            type: object
            description: >-
              Flattened result of the extractors. Extractors are represented by
              a { "key": "value" } object.
            example:
              customer:
                firstname: John
                lastname: Doe
                address: 123 Main St
              example: example1
          description: >-
            Flattened result of the extractors. Extractors are represented by a
            { "key": "value" } object.
          example:
            customer:
              firstname: John
              lastname: Doe
              address: 123 Main St
            example: example1
        classifiers:
          type: array
          description: >-
            Result of the classifiers. Each classifier is represented by an
            object with 'name' and 'value' fields. The 'name' indicates the
            classification category, and the 'value' is the determined
            classification.
          example:
            - name: Customer's request
              value: Refund
            - name: Sentiment
              value: Positive
          items:
            type: object
            additionalProperties:
              type: string
        classificationData:
          type: object
          additionalProperties:
            type: string
            description: >-
              Flattened result of the classifiers. Classifiers are represented
              by a { "key": "value" } object.
            example: '{"Customer''s request":"Refund","Sentiment":"Positive"}'
          description: >-
            Flattened result of the classifiers. Classifiers are represented by
            a { "key": "value" } object.
          example:
            Customer's request: Refund
            Sentiment: Positive
        context:
          type: object
          additionalProperties:
            type: object
            description: >
              Custom object for dynamic content injection into the agent prompt.

              Keys in this map correspond to placeholders in the prompt
              template: e.g {{ firstName }}.

              At runtime, each placeholder was replaced with its corresponding
              value.


              System prefixed variables are reserved and automatically injected
              by Volubile system

              e.g. recipient phone, instant time of the call, etc.
            example:
              firstName: firstname
              lastName: lastname
              orderNumber: 5HZ99FRT
              system:
                phone: '+33612345678'
          description: >
            Custom object for dynamic content injection into the agent prompt.

            Keys in this map correspond to placeholders in the prompt template:
            e.g {{ firstName }}.

            At runtime, each placeholder was replaced with its corresponding
            value.


            System prefixed variables are reserved and automatically injected by
            Volubile system

            e.g. recipient phone, instant time of the call, etc.
          example:
            firstName: firstname
            lastName: lastname
            orderNumber: 5HZ99FRT
            system:
              phone: '+33612345678'
        recorded:
          type: boolean
          description: If the call was recorded
        summary:
          type: string
          description: Summary of what happened during the call
          example: Discussed project requirements and next steps.
        tags:
          uniqueItems: true
          type: array
          description: Tags associated with the call
          example:
            - tag1
            - tag2
            - tag3
          items:
            type: string
            description: Tags associated with the call
            example: '["tag1","tag2","tag3"]'
        created:
          type: string
          description: |
            Timestamp when the call record was created.

            Format: UTC time - yyyy-MM-dd'T'HH:mm:ss'Z'
          format: date-time
          example: '2024-07-30T14:45:00Z'
    ValidationError:
      type: object
      properties:
        field:
          type: string
          description: Field in error
        rejectedValue:
          type: object
          description: Value in error
        message:
          type: string
          description: Description of the failed validation
      description: List of specific validation errors
  securitySchemes:
    Api key:
      type: apiKey
      description: Your API key.
      name: X-Api-Key
      in: header
    Bearer token:
      type: http
      description: Short lived Bearer token issued by /v1/auth/token.
      scheme: bearer
      bearerFormat: JWT

````