This endpoint provides detailed device-level usage data for specific contracts and invoices within a given timeframe.
The detailed usage data is structured as a nested format, providing comprehensive records for all end customers (clients) associated with the MSP. Each client record includes:
- A list of devices with detailed information.
- Aggregated total usage by service for each customer, including metrics such as the amount of usage, price, and associated product features.
Response structure
Parameter | Description | Supported values |
---|---|---|
AccountName | The name of the account | <std::string> |
BpAccountId | The unique identifier for the BpAccount | <int> Integer |
Cid | CID, part of contract number | <int> Integer |
ContractId | The unique identifier for the contract | <int> Integer |
ContractNumber | The number of the contract | <std::string> |
ContractStatus | The status of the contract | <std::string> |
Created | Record created date | <datetime> |
PgaCode | 4-character numerical code for the product group | <std::string> |
Pid | Product ID | <int> Integer |
ProductName | The name of the product | <std::string> |
RateClassId | Rate Class ID | <int> Integer |
SfdcAccountId | Salesforce Account ID for the requesting MSP | <std::string> |
TenantId | The unique identifier for the Tenant | <int> Integer |
TimeFrame | The billing period in YYYYMM format | <int> Integer |
Updated | Last update date | <datetime> |
TotalByContracts | Total usage (aggregated) of services under each contract | TotalByContracts (has child objects of its own see the TotalByContracts child objects table below) |
Clients | A list of clients with all devices recorded under invoice | Clients (has child objects of its own see the table below) |
TotalByContracts child objects
Parameter | Description | Supported values |
---|---|---|
AccountName | The name of the account | <std::string> |
BpAccountId | The unique identifier for the Bp account | <int> Integer |
Cid | CID, part of contract number | <int> Integer |
ContractId | The unique identifier for the contract | <int> Integer |
ContractNumber | The number of the contract | <std::string> |
InvoiceId | The unique identifier for the invoice | <int> Integer |
SfdcAccountId | Salesforce Account ID for the requesting MSP | <std::string> |
Clients child objects
Parameter | Description | Supported values |
---|---|---|
ClientId | Client ID | <std::string> |
Devices | The list of all devices recorded under the invoice | <array> |
Name | Client name | <std::string> |
TotalByService | Total usage of services by client | <array> |
Sample response
{
"AccountName": "Best MSP",
"BpAccountId": 12348,
"Cid": "234578",
"ContractId": 234578,
"ContractNumber": "MSP-234578-01",
"ContractStatus": "ACTIVE",
"Created": "2021-01-04 20:02:13.470",
"PgaCode": "0100",
"Pid": "0118M-0000-0000-UK",
"ProductName": "Cove Data Protection | Data Protection Plan | MSP",
"RateClassId": "234567",
"SfdcAccountId": "001H234578asdfIAS",
"TenantId": "0100_678905",
"TimeFrame": 202405,
"Updated": "2023-12-31 22:09:37.204",
"TotalByContracts": [
{
"AccountName": "Best MSP",
"BpAccountId": "345678",
"Cid": "234578",
"ContractId": "234567",
"ContractNumber": "MSP-234578-01",
"InvoiceId": "123467",
"SfdcAccountId": "001H234578asdfIAS"
}
],
"Clients": []
}
Possible errors
{
"PSA Distributor Usage Detail Devices V1 ": "Failed",
"SfdcAccountId": "001H234578asdfIAS",
"Error": "Internal Error. Please contact support."
}
Internal Error: This error could mean you provided an invalid contract or invoice ID or combination of invoice ID and timeframe. Double-check your details. Otherwise, contact support.
{
"message": "Unauthorized",
"http_status_code": 401
}
The above error is 401 unauthorized: Check that you have entered your MSPID and API key correctly.