POST

Recordings.Count

Return only the number of call recordings for one customer using the same filters as Recordings.List. Use this before or beside paging UI.

Permissions

  • User must be logged in with a valid bearer token.
  • Returned or changed records are limited by the user permissions, team access, folder access, and account settings.

Action

  • Returns only the count for Recordings using the same filters as the list function.

Push Service

No push is sent because this function only reads data or returns helper information.

Automation

No automation is run for this function.

Special Instructions

  • Send the bearer token on protected calls with Authorization: Bearer YOUR TOKEN.
  • Send parameters as POST body fields exactly as documented.

Required Parameters

NameTypeSampleExplanation
customer_id
post
int123Customer id whose recordings should be counted. cust_id is also accepted.

Optional Parameters

NameTypeSampleWhat it gives
search
post
string054Searches phone, source, department, note, and message fields before counting.
from_date
post
date2026-07-01Count recordings created from this UTC date. Send date filters and date values as UTC Y-m-d H:i:s when the route accepts date/time; date-only table columns store the Y-m-d date part.
to_date
post
date2026-07-19Count recordings created until this UTC date. Send date filters and date values as UTC Y-m-d H:i:s when the route accepts date/time; date-only table columns store the Y-m-d date part.
direction
post
stringinCount only incoming or outgoing recordings.
answered
post
int1Count only answered or unanswered recordings.
source
post
stringphoneCount only recordings from this source.
department
post
stringsalesCount only recordings from this department.
team_member_id
post
int47Count only recordings for this team member.
transcription_status
post
stringdoneCount only recordings with this transcription status.

Authentication

Send the bearer token returned by Login in the request header.

Authorization: Bearer YOUR TOKEN

Sample Request

{
    "url": "\/app\/Recordings.Count",
    "method": "POST",
    "headers": {
        "Authorization": "Bearer YOUR TOKEN"
    },
    "body": {
        "customer_id": "123"
    },
    "url_user": "https:\/\/{user}.bull36.com\/app\/Recordings.Count",
    "url_domain": "https:\/\/{domain}\/app\/Recordings.Count"
}

Endpoint

POST /app/Recordings.Count
POST https://{user}.bull36.com/app/Recordings.Count
POST https://{domain}/app/Recordings.Count

Sample Output

{
    "success": 1,
    "count": 6,
    "total_record": 6
}

Count Only

Use the matching count route with the same filters when the UI only needs total rows for paging.

{
    "url": "\/app\/Recordings.Count",
    "url_user": "https:\/\/{user}.bull36.com\/app\/Recordings.Count",
    "url_domain": "https:\/\/{domain}\/app\/Recordings.Count",
    "method": "POST",
    "headers": {
        "Authorization": "Bearer YOUR TOKEN"
    },
    "body": {
        "customer_id": "123"
    },
    "sample_output": {
        "success": 1,
        "count": 123
    },
    "notes": {
        "count": "Total matching recordings."
    }
}

Count JavaScript

const token = 'YOUR TOKEN';
const body = new URLSearchParams();
body.set('customer_id', '123');

const res = await fetch('https://{domain}/app/Recordings.Count', {
  method: 'POST',
  headers: { Authorization: `Bearer ${token}` },
  body
});
const data = await res.json();
console.log(data.count);

JavaScript Example

const token = 'YOUR TOKEN';
const body = new URLSearchParams({ customer_id: '123' });
const res = await fetch('/app/Recordings.Count', { method: 'POST', headers: { Authorization: `Bearer ${token}` }, body });
const data = await res.json();
console.log(data.count);

Error Example

{
    "success": "0",
    "message": "Missing required parameter: customer_id"
}