For the complete documentation index, see llms.txt. This page is also available as Markdown.

Call Recordings

Get a call recording by its ID

get
/call-recordings/{id}

Returns a single call recording by ID.

Rate limit: 300 requests per minute

Authorizations
AuthorizationstringRequired

Authorization: Bearer

Path parameters
idstringRequired

The ID of the call recording to fetch.

Responses
200Success
application/json
request_idstringOptional

The request ID for tracking.

get/call-recordings/{id}
GET /call-recordings/{id} HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": {
    "account_id": "text",
    "calendar_event_id": "text",
    "created_at": "text",
    "custom_fields": {
      "sentiment": {
        "value": "positive"
      }
    },
    "duration_ms": 1,
    "end_time": "text",
    "external_id": "text",
    "id": "text",
    "participant_emails": [
      "text"
    ],
    "source": "text",
    "start_time": "text",
    "summary": "text",
    "title": "text",
    "updated_at": "text",
    "url": "text"
  },
  "request_id": "text"
}

Update a call recording

patch
/call-recordings/{id}

Updates a call recording by ID. Only provided fields are modified.

Rate limit: 120 requests per minute

Authorizations
AuthorizationstringRequired

Authorization: Bearer

Path parameters
idstringRequired

The ID of the call recording to update.

Body
account_idstringOptional

The account ID to associate with the call recording. Pass an empty string to remove the account association.

Responses
200Success
application/json
request_idstringOptional

The request ID for tracking.

patch/call-recordings/{id}
PATCH /call-recordings/{id} HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 88

{
  "account_id": "text",
  "custom_fields": [
    {
      "slug": "text",
      "value": "text",
      "values": [
        "text"
      ]
    }
  ]
}
{
  "data": {
    "account_id": "text",
    "calendar_event_id": "text",
    "created_at": "text",
    "custom_fields": {
      "sentiment": {
        "value": "positive"
      }
    },
    "duration_ms": 1,
    "end_time": "text",
    "external_id": "text",
    "id": "text",
    "participant_emails": [
      "text"
    ],
    "source": "text",
    "start_time": "text",
    "summary": "text",
    "title": "text",
    "updated_at": "text",
    "url": "text"
  },
  "request_id": "text"
}

Search for call recordings by a given filter

post
/call-recordings/search

Filterable fields and their allowed operators:

Field
Allowed operators

account_id

equals, in, not_in, is_set, is_unset

source

equals, in, not_in

title

equals, string_contains

start_time

time_is_after, time_is_before, time_range

Timestamp values use RFC3339 format.

Rate limit: 120 requests per minute

Authorizations
AuthorizationstringRequired

Authorization: Bearer

Body
cursorstringOptional

The cursor to use for pagination.

limitinteger · int64Optional

The number of call recordings to fetch. Defaults to 100. Must be greater than 0 and less than or equal to 1000.

Responses
200Success
application/json
request_idstringOptional

The request ID for tracking.

post/call-recordings/search
POST /call-recordings/search HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 173

{
  "cursor": "text",
  "filter": {
    "field": "text",
    "operator": "equals",
    "subfilters": [
      {
        "field": "state",
        "operator": "equals",
        "value": "new"
      }
    ],
    "value": "text",
    "values": [
      "text"
    ]
  },
  "limit": 1
}
{
  "data": [
    {
      "account_id": "text",
      "calendar_event_id": "text",
      "created_at": "text",
      "custom_fields": {
        "sentiment": {
          "value": "positive"
        }
      },
      "duration_ms": 1,
      "end_time": "text",
      "external_id": "text",
      "id": "text",
      "participant_emails": [
        "text"
      ],
      "source": "text",
      "start_time": "text",
      "summary": "text",
      "title": "text",
      "updated_at": "text",
      "url": "text"
    }
  ],
  "pagination": {
    "cursor": "text",
    "has_next_page": true
  },
  "request_id": "text"
}

Delete a call recording

delete
/call-recordings/{id}

Permanently deletes a call recording by its Pylon ID.

Rate limit: 120 requests per minute

Authorizations
AuthorizationstringRequired

Authorization: Bearer

Path parameters
idstringRequired

The Pylon ID of the call recording to delete.

Responses
200Success
application/json
request_idstringOptional

The request ID for tracking.

delete/call-recordings/{id}
DELETE /call-recordings/{id} HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "request_id": "text"
}

Last updated

Was this helpful?