Logs Store Process
Contents
Mobile_API » Store Device Logs
Base URL
https://apimobile.callproof.com
Endpoint
/api/logs
Purpose
Uploads a device log ZIP file for the authenticated user to cloud storage, records the log metadata, and notifies CallProof support by email. If the log type is Automatic, device logging is turned off for the user after upload.
HTTP Method
POST
Headers
| Header | Required | Description |
|---|---|---|
| Authorization | Yes | Bearer access token |
| Content-Type | Yes | multipart/form-data (file upload)
|
| Version-Number | No | App version header; when >= 5.070, subject and message are included in the notification email
|
Security
- Yes – Requires Bearer Token authentication.
Parameters
Path Parameters
None.
Query Parameters
None.
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| file | file | Yes | Log archive file (must be a .zip)
|
| log_type | string | No | Log type (for example, Automatic). Defaults to None when omitted
|
| os_type | string | No | Device OS type. Defaults to None when omitted
|
| version | string | No | App version. Defaults to None when omitted
|
| subject | string | No | Email subject text (used when app Version-Number is >= 5.070)
|
| message | string | No | Email message text (used when app Version-Number is >= 5.070)
|
cURL Example for Android
curl --location 'https://apimobile.callproof.com/api/logs' \ --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \ --header 'Version-Number: YOUR_APP_VERSION' \ --form 'file=@"/path/to/your/device-logs.zip"' \ --form 'log_type="Automatic"' \ --form 'os_type="Android"' \ --form 'version="YOUR_APP_VERSION"' \ --form 'subject=""' \ --form 'message=""'
cURL Example for iOS
curl --location 'https://apimobile.callproof.com/api/logs' \ --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \ --header 'Version-Number: YOUR_APP_VERSION' \ --form 'file=@"/path/to/your/device-logs.zip"' \ --form 'log_type="Automatic"' \ --form 'os_type="iOS"' \ --form 'version="YOUR_APP_VERSION"' \ --form 'subject=""' \ --form 'message=""'
Successful Response (200)
Indicates that the log file was uploaded and recorded successfully.
| Field | Type | Description |
|---|---|---|
| clientStatusCode | integer | Status indicator for the client (for example, 200) |
| user_id | integer | Identifier of the authenticated user |
| company_id | integer | Identifier of the authenticated user’s company |
| message | string | Confirmation message (for example, "Your device logs have now been sent to CallProof.") |
| uri | string | Requested resource URI |
Error Responses
| Status Code | Meaning |
|---|---|
| 200 | Validation failed – response body uses clientStatusCode 401 with the first validation error message
|
| 400 | Bad Request – the log file could not be stored |
| 401 | Unauthorized – missing, invalid, or expired Bearer token |
- Validation (HTTP 200, clientStatusCode 401) – Missing
file, or the file is not a valid ZIP. - 400 – An error occurred while storing the log file or sending the notification.
- 401 – Authentication failed or the access token is missing/expired.