NFON Call History API (2.0-early-access)

Download OpenAPI specification:Download

The NFON Call History API provides endpoints for retrieving, streaming, and deleting call history records for an authenticated NFON Cloud Telephony user.

This API is currently offered as part of Login with NFON (Early Access). As an early access offering, the API is subject to change. Updates may occur on short notice, though we strive to provide advance notice where possible.

For more information, see: https://www.nfon.com/en/integrations/login-with-nfon/

records

Call Records Management

Get, stream, and search call records

Get the latest call records. They can be filtered by number, name, time or type.

The response format is controlled by the Accept request header:

application/json (default):

Returns a JSON array of call records.

text/event-stream:

Streams call records as Server-Sent Events (SSE).

Each event carries one JSON-encoded call record in its data field. A record will be re-sent if it is updated after initial delivery. The most common update case is transcription processing: a call with transcription activated is first streamed with transcription.available: false (audio processing still in progress). Once processing completes, the same record — identified by the same uuid — is streamed again with transcription.available: true and an updated timestamp. Clients should use uuid to detect such updates and replace the previously received record accordingly.

Authorizations:
bearer_auth
query Parameters
search
string

Search the records. The search looks at the caller and callee names and numbers. Any other call record fields are currently not considered when searching

filter
string
Enum: "status:missed" "status:answered" "status:cancelled" "direction:inbound" "direction:outbound" "transcription" "internal:<extension-number>" "global:<number>"

Filter call records that match certain property values.

It is possible to specify multiple filters by providing a comma separated list. In this case only records that match all filters will be returned in the result.

For compatibility reasons, the customer and extension filters are treated as separate query parameters.

customer
string

The K-number for which to return call records. Applies only to admin level access with appropriate permissions

extension
string

The extension (user) for which to return call records. Applies to admin level access with appropriate permissions

from
number

Limit the list to records that are newer than this timestamp.

to
number

Limit the list to records that are older than this timestamp

limit
integer
Default: 0

Limit the number of call records in the result.

offset
integer
Default: 0

Generate the list starting from offset

complete
boolean
Default: false

Should the records include the complete transcripts and summaries (for transcribed calls).

sort
string
Default: "desc"
Enum: "asc" "desc"

Set creation time sort order

Responses

Response samples

Content type
[
  • {
    },
  • {
    },
  • {
    }
]

Delete multiple call records

Delete some or all call records (depending on the filters)

Authorizations:
bearer_auth
query Parameters
uuid
Array of strings

Delete call records with a given uuid. Multiple uuid parameters in a single query are supported as well.

filter
string
Enum: "status:missed" "status:answered" "status:cancelled" "direction:inbound" "direction:outbound" "transcription" "internal:<extension-number>" "global:<number>"

Only delete call records that match the filter.

It is possible to specify multiple filters by providing a comma separated list. In this case only the records that match all filters will be deleted.

customer
string

The K-number for which to return call records. Applies only to admin level access with appropriate permissions

extension
string

The extension (user) for which to return call records. Applies only to admin level access with appropriate permissions

from
number

Limit the list to records that are newer than this timestamp.

to
number

Limit the list to records that are older than this timestamp

Responses

Response samples

Content type
application/json
{
  • "error": "some error message"
}

Get call record details

Return call record details for a given call record uuid

Authorizations:
bearer_auth
path Parameters
uuid
required
string

The uuid of the call record

Responses

Response samples

Content type
application/json
Example
{
  • "uuid": "000e8400-e29b-41d4-a716-446655440000",
  • "duration": 30,
  • "direction": "inbound",
  • "caller": {
    },
  • "callee": {
    },
  • "status": "answered",
  • "created": "2025-06-03T10:22:24Z"
}

Delete single call record

Deletes the call record for the given call record uuid

Authorizations:
bearer_auth
path Parameters
uuid
required
string

The uuid of the call record

Responses

Response samples

Content type
application/json
{
  • "error": "some error message"
}