Close Activities.calls API

The activities.calls API from Close — 2 operation(s) for activities.calls.

Operations 5

GET /activity/call/ List or filter all Call activities #
POST /activity/call/ Log an external Call activity #
GET /activity/call/{id}/ Get a single Call activity #
PUT /activity/call/{id}/ Update a Call activity #
DELETE /activity/call/{id}/ Delete a Call activity #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/close-activities-calls-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

close-activities-calls-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Close CRM REST API
  title: Close Activities.calls API
  version: 1.0.0
servers:
- url: https://api.close.com/api/v1
security:
- ApiKeyAuth: []
- OAuth2: []
tags:
- name: activities.calls
  externalDocs:
    url: https://developer.close.com/api/resources/activities/calls
paths:
  /activity/call/:
    get:
      operationId: activities.calls_list
      tags:
      - activities.calls
      summary: List or filter all Call activities
      parameters:
      - $ref: '#/components/parameters/LimitParam'
      - $ref: '#/components/parameters/SkipParam'
      - $ref: '#/components/parameters/ActivityFilters_IdInParam'
      - $ref: '#/components/parameters/ActivityFilters_LeadIdParam'
      - $ref: '#/components/parameters/ActivityFilters_ContactIdParam'
      - $ref: '#/components/parameters/ActivityFilters_UserIdParam'
      - $ref: '#/components/parameters/ActivityFilters_OrganizationIdParam'
      - $ref: '#/components/parameters/ActivityFilters_TypeParam'
      - $ref: '#/components/parameters/ActivityFilters_DateCreatedGteParam'
      - $ref: '#/components/parameters/ActivityFilters_DateCreatedLteParam'
      - $ref: '#/components/parameters/ActivityFilters_DateCreatedGtParam'
      - $ref: '#/components/parameters/ActivityFilters_DateCreatedLtParam'
      - $ref: '#/components/parameters/ActivityFilters_ActivityAtGteParam'
      - $ref: '#/components/parameters/ActivityFilters_ActivityAtLteParam'
      - $ref: '#/components/parameters/ActivityFilters_ActivityAtGtParam'
      - $ref: '#/components/parameters/ActivityFilters_ActivityAtLtParam'
      - $ref: '#/components/parameters/FieldsParam'
      responses:
        '200':
          content:
            application/json:
              example:
                data:
                - _type: Call
                  activity_at: '2013-02-01T00:51:33+00:00'
                  call_method: regular
                  contact_id: cont_q4xYmlGhA3060dEl0NDJuHRxPMuVjqLn30AFSzh1fRk
                  cost: '2'
                  created_by: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                  date_created: '2013-02-20T06:34:33.637000+00:00'
                  date_updated: '2013-02-20T06:34:35.656000+00:00'
                  dialer_id: null
                  dialer_saved_search_id: null
                  direction: outbound
                  disposition: answered
                  duration: 10
                  id: acti_Ay0QqN91HKAHVQUesISYV8QlhDobGfWb1Ui3TE75pJR
                  lead_id: lead_s6vHFTK1TSRoH6otXOexWDO9jM4xyb1kELHDoU7Fdsp
                  local_country_iso: US
                  local_phone: '+16505556666'
                  local_phone_formatted: +1 650-555-6666
                  note: ''
                  note_html: <body><p></p></body>
                  organization_id: orga_RbREgmiiwcr1w2b4cOnCMQaQPSIFxMqAD2Dh243uxcH
                  outcome_id: outcome_031uY9IKV1JxfNKM9n2qCw
                  phone: '+16503334444'
                  recording_url: null
                  remote_country_iso: US
                  remote_phone: '+16503334444'
                  remote_phone_formatted: +1 650-333-4444
                  source: Close.io
                  status: completed
                  updated_by: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                  user_id: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                  users: []
                  voicemail_duration: null
                  voicemail_url: null
                has_more: false
              schema:
                type: object
                properties:
                  data:
                    items:
                      $ref: '#/components/schemas/CallActivity'
                    type: array
                  has_more:
                    type: boolean
                required:
                - data
                - has_more
          description: Successful response
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: Not found
    post:
      operationId: activities.calls_create
      tags:
      - activities.calls
      summary: Log an external Call activity
      description: 'Use this endpoint to log calls made outside of the Close built-in VoIP system.


        *status*: defaults to `completed`


        *direction* (optional): `outbound` or `inbound`


        *recording_url*: you can post a URL pointing to the MP3 recording of your call. For security reasons, we require the URL to be secure (i.e. starting with https://)'
      requestBody:
        content:
          application/json:
            example:
              contact_id: cont_bulY73zoaAwTCLdjHrKzGkzZ942OwtEelJR7kNku9RK
              created_by: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
              direction: outbound
              duration: 153
              lead_id: lead_fioU1Nk5LC0H0iei9XBGHW2CFZU0yeP2zZCJQP9pC4m
              note_html: <body><p>call notes go here</p></body>
              phone: '+16505551234'
              status: completed
              user_id: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
            schema:
              $ref: '#/components/schemas/CreateCallActivity'
        required: true
      responses:
        '200':
          content:
            application/json:
              example:
                _type: Call
                activity_at: '2013-02-01T00:51:33+00:00'
                call_method: external
                contact_id: cont_bulY73zoaAwTCLdjHrKzGkzZ942OwtEelJR7kNku9RK
                cost: '0'
                created_by: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                created_by_name: Stefan Wójcik
                date_created: '2014-05-22T17:39:04.509000+00:00'
                date_updated: '2014-05-22T17:39:04.509000+00:00'
                dialer_id: null
                dialer_saved_search_id: null
                direction: outbound
                disposition: answered
                duration: 153
                id: acti_wJGiBIXXBCpBAQacZ7axeOhgTS7TWxyU7ml4WqAswOb
                lead_id: lead_fioU1Nk5LC0H0iei9XBGHW2CFZU0yeP2zZCJQP9pC4m
                local_country_iso: US
                note: call notes go here
                note_html: <body><p>call notes go here</p></body>
                organization_id: orga_RbREgmiiwcr1w2b4cOnCMQaQPSIFxMqAD2Dh243uxcH
                outcome_id: null
                phone: '+16505551234'
                recording_url: null
                remote_country_iso: US
                remote_phone: '+16505551234'
                remote_phone_formatted: +1 650-555-1234
                source: External
                status: completed
                updated_by: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                updated_by_name: Phil Freo
                user_id: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                user_name: Stefan Wójcik
                users: []
                voicemail_url: null
              schema:
                $ref: '#/components/schemas/CallActivity'
          description: Successful response
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: Not found
  /activity/call/{id}/:
    get:
      operationId: activities.calls_get
      tags:
      - activities.calls
      summary: Get a single Call activity
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      - $ref: '#/components/parameters/FieldsParam'
      responses:
        '200':
          content:
            application/json:
              example:
                _type: Call
                activity_at: '2013-02-01T00:51:33+00:00'
                call_method: regular
                contact_id: cont_q4xYmlGhA3060dEl0NDJuHRxPMuVjqLn30AFSzh1fRk
                cost: '2'
                created_by: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                date_created: '2013-02-20T06:34:33.637000+00:00'
                date_updated: '2013-02-20T06:34:35.656000+00:00'
                dialer_id: null
                dialer_saved_search_id: null
                direction: outbound
                disposition: answered
                duration: 10
                id: acti_Ay0QqN91HKAHVQUesISYV8QlhDobGfWb1Ui3TE75pJR
                lead_id: lead_s6vHFTK1TSRoH6otXOexWDO9jM4xyb1kELHDoU7Fdsp
                local_country_iso: US
                local_phone: '+16505556666'
                local_phone_formatted: +1 650-555-6666
                note: ''
                note_html: <body><p></p></body>
                organization_id: orga_RbREgmiiwcr1w2b4cOnCMQaQPSIFxMqAD2Dh243uxcH
                outcome_id: outcome_031uY9IKV1JxfNKM9n2qCw
                phone: '+16503334444'
                recording_url: null
                remote_country_iso: US
                remote_phone: '+16503334444'
                remote_phone_formatted: +1 650-333-4444
                source: Close.io
                status: completed
                updated_by: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                user_id: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                users: []
                voicemail_duration: null
                voicemail_url: null
              schema:
                $ref: '#/components/schemas/CallActivity'
          description: Successful response
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: Not found
    put:
      operationId: activities.calls_update
      tags:
      - activities.calls
      summary: Update a Call activity
      description: 'Most commonly used to update `note_html` or `outcome_id`. Some fields (`status`, `duration`, `direction`) cannot be updated for internal calls made through Close''s VoIP system.


        **`note_html` and `note`**: setting one overwrites the other. If both are provided, `note_html` takes precedence. `note_html` supports rich-text HTML; `note` is plaintext only.


        **Deleting recordings**: for internal calls, changing or clearing `recording_url` or `voicemail_url`, or setting `recording_transcript` to `null`, permanently deletes the corresponding recording, voicemail, or transcript. This requires the `delete_own_activities` permission for your own calls, or `manage_others_activities` for other users'' calls and calls not assigned to a user. Without the required permission the request fails with a `400` error.'
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            example:
              note_html: <body><p>This is some new call note.</p></body>
              outcome_id: outcome_031uY9IKV1JxfNKM9n2qCw
            schema:
              $ref: '#/components/schemas/UpdateCallActivity'
        required: true
      responses:
        '200':
          content:
            application/json:
              example:
                _type: Call
                activity_at: '2013-02-01T00:51:33+00:00'
                call_method: regular
                contact_id: cont_q4xYmlGhA3060dEl0NDJuHRxPMuVjqLn30AFSzh1fRk
                cost: '2'
                created_by: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                date_created: '2013-02-20T06:34:33.637000+00:00'
                date_updated: '2013-02-20T06:34:35.656000+00:00'
                dialer_id: null
                dialer_saved_search_id: null
                direction: outbound
                disposition: answered
                duration: 10
                id: acti_Ay0QqN91HKAHVQUesISYV8QlhDobGfWb1Ui3TE75pJR
                lead_id: lead_s6vHFTK1TSRoH6otXOexWDO9jM4xyb1kELHDoU7Fdsp
                local_country_iso: US
                local_phone: '+16505556666'
                local_phone_formatted: +1 650-555-6666
                note: This is some new call note.
                note_html: <body><p>This is some new call note.</p></body>
                organization_id: orga_RbREgmiiwcr1w2b4cOnCMQaQPSIFxMqAD2Dh243uxcH
                outcome_id: outcome_031uY9IKV1JxfNKM9n2qCw
                phone: '+16503334444'
                recording_url: null
                remote_country_iso: US
                remote_phone: '+16503334444'
                remote_phone_formatted: +1 650-333-4444
                source: Close.io
                status: completed
                updated_by: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                user_id: user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA
                users: []
                voicemail_duration: null
                voicemail_url: null
              schema:
                $ref: '#/components/schemas/CallActivity'
          description: Successful response
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: Not found
    delete:
      operationId: activities.calls_delete
      tags:
      - activities.calls
      summary: Delete a Call activity
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: Not found
components:
  parameters:
    ActivityFilters_DateCreatedGteParam:
      in: query
      name: date_created__gte
      required: false
      schema:
        title: Date Created (>=)
        anyOf:
        - type: string
          format: date-time
        - type: string
          format: date
    ActivityFilters_ActivityAtLteParam:
      in: query
      name: activity_at__lte
      required: false
      schema:
        title: Activity At (<=)
        anyOf:
        - type: string
          format: date-time
        - type: string
          format: date
    ActivityFilters_TypeParam:
      description: Filter by activity type, e.g. Call (comma-separated)
      in: query
      name: _type
      required: false
      schema:
        title: Type
        default: null
        anyOf:
        - type: array
          items:
            type: string
        - type: 'null'
    ActivityFilters_OrganizationIdParam:
      in: query
      name: organization_id
      required: false
      schema:
        title: Organization ID
        default: null
        anyOf:
        - type: string
        - type: 'null'
    ActivityFilters_LeadIdParam:
      description: Filter by lead IDs (comma-separated)
      in: query
      name: lead_id
      required: false
      schema:
        title: Lead ID
        default: null
        anyOf:
        - type: array
          items:
            type: string
        - type: 'null'
    ActivityFilters_ActivityAtLtParam:
      in: query
      name: activity_at__lt
      required: false
      schema:
        title: Activity At (<)
        anyOf:
        - type: string
          format: date-time
        - type: string
          format: date
    ActivityFilters_ActivityAtGteParam:
      in: query
      name: activity_at__gte
      required: false
      schema:
        title: Activity At (>=)
        anyOf:
        - type: string
          format: date-time
        - type: string
          format: date
    ActivityFilters_UserIdParam:
      description: Filter by user IDs (comma-separated)
      in: query
      name: user_id
      required: false
      schema:
        title: User ID
        default: null
        anyOf:
        - type: array
          items:
            type: string
        - type: 'null'
    ActivityFilters_ContactIdParam:
      description: Filter by contact IDs (comma-separated)
      in: query
      name: contact_id
      required: false
      schema:
        title: Contact ID
        default: null
        anyOf:
        - type: array
          items:
            type: string
        - type: 'null'
    LimitParam:
      description: Number of results to return.
      in: query
      name: _limit
      required: false
      schema:
        default: 100
        type: integer
    SkipParam:
      description: Number of results to skip before returning, for pagination.
      in: query
      name: _skip
      required: false
      schema:
        default: 0
        type: integer
    ActivityFilters_IdInParam:
      description: Filter by activity IDs (comma-separated)
      in: query
      name: id__in
      required: false
      schema:
        title: ID In
        default: null
        anyOf:
        - type: array
          items:
            type: string
        - type: 'null'
    FieldsParam:
      description: Comma-separated list of fields to include in the response.
      in: query
      name: _fields
      required: false
      schema:
        type: string
    ActivityFilters_DateCreatedLtParam:
      in: query
      name: date_created__lt
      required: false
      schema:
        title: Date Created (<)
        anyOf:
        - type: string
          format: date-time
        - type: string
          format: date
    ActivityFilters_ActivityAtGtParam:
      in: query
      name: activity_at__gt
      required: false
      schema:
        title: Activity At (>)
        anyOf:
        - type: string
          format: date-time
        - type: string
          format: date
    ActivityFilters_DateCreatedGtParam:
      in: query
      name: date_created__gt
      required: false
      schema:
        title: Date Created (>)
        anyOf:
        - type: string
          format: date-time
        - type: string
          format: date
    ActivityFilters_DateCreatedLteParam:
      in: query
      name: date_created__lte
      required: false
      schema:
        title: Date Created (<=)
        anyOf:
        - type: string
          format: date-time
        - type: string
          format: date
  schemas:
    CreateCallActivity:
      type: object
      properties:
        activity_at:
          type:
          - 'null'
          - string
          format: date-time
        contact_id:
          type:
          - 'null'
          - string
        conversation_type_id:
          type:
          - 'null'
          - string
        created_by:
          type:
          - 'null'
          - string
        date_created:
          type:
          - 'null'
          - string
          format: date-time
        direction:
          type:
          - 'null'
          - string
          enum:
          - inbound
          - outbound
          - null
        duration:
          type:
          - integer
          - 'null'
          maximum: 604800
        lead_id:
          type:
          - 'null'
          - string
        note:
          type:
          - 'null'
          - string
        note_html:
          type:
          - 'null'
          - string
        organization_id:
          type:
          - 'null'
          - string
        outcome_id:
          type:
          - 'null'
          - string
        phone:
          description: Phone number in E.164 format
          type:
          - 'null'
          - string
        playbook_id:
          type:
          - 'null'
          - string
        quality_info:
          type:
          - 'null'
          - string
        recording_url:
          type:
          - 'null'
          - string
          format: uri
        source:
          type:
          - 'null'
          - string
          enum:
          - Close.io
          - External
          - null
        status:
          type:
          - 'null'
          - string
          enum:
          - created
          - in-progress
          - completed
          - cancel
          - no-answer
          - busy
          - failed
          - timeout
          - null
        user_id:
          type:
          - 'null'
          - string
        voicemail_url:
          type:
          - 'null'
          - string
          format: uri
      additionalProperties: false
      patternProperties:
        ^custom\.:
          not:
            type: object
    CallStatus:
      title: CallStatus
      description: Current status of the call.
      type: string
      enum:
      - created
      - in-progress
      - completed
      - cancel
      - no-answer
      - busy
      - failed
      - timeout
    PhoneActivitySource:
      title: PhoneActivitySource
      description: Source of a phone activity. Describes whether the phone activity (such as a call or an SMS) was handled by Close's telephony provider or handled externally by a 3rd party and is merely logged in Close.
      type: string
      enum:
      - Close.io
      - External
    UpdateCallActivity:
      type: object
      properties:
        activity_at:
          type:
          - 'null'
          - string
          format: date-time
        contact_id:
          type:
          - 'null'
          - string
        conversation_type_id:
          type:
          - 'null'
          - string
        duration:
          type:
          - integer
          - 'null'
          maximum: 604800
        lead_id:
          type:
          - 'null'
          - string
        note:
          type:
          - 'null'
          - string
        note_html:
          type:
          - 'null'
          - string
        outcome_id:
          type:
          - 'null'
          - string
        phone:
          description: Phone number in E.164 format
          type:
          - 'null'
          - string
        playbook_id:
          type:
          - 'null'
          - string
        quality_info:
          type:
          - 'null'
          - string
        recording_url:
          type:
          - 'null'
          - string
          format: uri
        status:
          type:
          - 'null'
          - string
          enum:
          - created
          - in-progress
          - completed
          - cancel
          - no-answer
          - busy
          - failed
          - timeout
          - null
        user_id:
          type:
          - 'null'
          - string
        voicemail_url:
          type:
          - 'null'
          - string
          format: uri
      additionalProperties: false
      patternProperties:
        ^custom\.:
          not:
            type: object
    CallActivity:
      title: CallActivity
      type: object
      properties:
        _type:
          title: Type
          type: string
        activity_at:
          title: Activity At
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
        contact_id:
          title: Contact ID
          anyOf:
          - type: string
          - type: 'null'
        created_by:
          title: Created By
          anyOf:
          - type: string
          - type: 'null'
        created_by_name:
          title: Created By Name
          default: null
          anyOf:
          - type: string
          - type: 'null'
        date_created:
          title: Date Created
          type: string
          format: date-time
        date_updated:
          title: Date Updated
          type: string
          format: date-time
        id:
          title: ID
          type: string
        lead_id:
          title: Lead ID
          anyOf:
          - type: string
          - type: 'null'
        organization_id:
          title: Organization ID
          type: string
        outcome_id:
          title: Outcome ID
          anyOf:
          - type: string
          - type: 'null'
        sequence_id:
          title: Sequence ID
          default: null
          anyOf:
          - type: string
          - type: 'null'
        sequence_name:
          title: Sequence Name
          default: null
          anyOf:
          - type: string
          - type: 'null'
        sequence_subscription_id:
          title: Sequence Subscription ID
          default: null
          anyOf:
          - type: string
          - type: 'null'
        source:
          $ref: '#/components/schemas/PhoneActivitySource'
        status:
          $ref: '#/components/schemas/CallStatus'
        updated_by:
          title: Updated By
          anyOf:
          - type: string
          - type: 'null'
        updated_by_name:
          title: Updated By Name
          default: null
          anyOf:
          - type: string
          - type: 'null'
        user_id:
          title: User ID
          anyOf:
          - type: string
          - type: 'null'
        user_name:
          title: User Name
          default: null
          anyOf:
          - type: string
          - type: 'null'
        users:
          title: Users
          type: array
          items:
            type: string
      required:
      - _type
      - activity_at
      - contact_id
      - created_by
      - date_created
      - date_updated
      - id
      - lead_id
      - organization_id
      - outcome_id
      - source
      - status
      - updated_by
      - user_id
      - users
  securitySchemes:
    ApiKeyAuth:
      description: Use your API key as the username and leave the password empty.
      scheme: basic
      type: http
    OAuth2:
      flows:
        authorizationCode:
          authorizationUrl: https://app.close.com/oauth2/authorize/
          scopes:
            all.full_access: Full access to all resources
            offline_access: Request a refresh token
          tokenUrl: https://api.close.com/oauth2/token/
      type: oauth2