API Version: 6.4

Recording

Permissions

Requires System-Admin, Call-Recording download or Call-Recording per-company download permissions. If the user has only Call-Recording per-company download permissions, it is necessary to include enough information (company id) to limit the scope of the query to a single company.
Additionally, a user may list and download their own call recordings - This is determined by checking whether their owned-extension number is either the caller or callee number.

command 'list'

Path: /rest/call/list
All of the scope parameters are optional except as specified above.
{
	"type": "recording",
	"scope": {
		"company": "company ID",
		"number": "matches either caller or callee",
		"year": "YYYY",
		"month": "MM",
		"day": "DD",
		"hour": "HH",
		"minute": "mm"
	}
}
Return value:
{
    "result": "success",
    "values": [
        {
            "file": "filename",
            "start": epoch-seconds,
            "caller": "caller number",
            "callee": "callee-number",
            "size": bytes,
            "duration": seconds
        },
        ...
    ],
    "numrows": number-of-rows
}

command 'download'

Path: /rest/call/download/recording/
If an error occurs, or the call fails, an HTTP 404 error is returned. The body will then contain JSON explaining the error, otherwise a binary file is returned containing the requested file.
{
    "type": "recording",
    "scope": {
        "company": "company ID",
        "file": "exact filename"
    }
}