Usage Overview
Below is a quick introduction to the basics of using the usage endpoints.
Base Url
The base url for all usage requests is https://api.pax8.com/v2
Terminology
The Pax8 Usage API provides a way for Vendors to upload usage data for Pax8 Subscriptions. Here are a few key terms
-
Partner
- A Pax8 Partner, also known as a Managed Service Provider (MSP).
Manages cloud software for aCompany
and are Pax8's primary users. -
Company
- A Pax8 Company, also known as an End User. ACompany
buys
cloud software from aPartner
-
Subscription
- A record in Pax8 for a specificPartner
/Company
/Product
combination in the Pax8 system. -
Usage Line
- A single line of usage data represented by a specificSubscription
/Product
/Quantity
combination in the Pax8 system. -
Billing Period
- A monthly timeframe, measured from from the first day to the last day of a month, for which Pax8 will create billable charges forPartners
How Posting Usage Works
- A
Partner
orders from Pax8, and aSubscription
is created using the Provisioning Endpoints. - Vendors will post usage to Pax8 throughout an ongoing
Billing Period
in order to keep usage totals up to date within Pax8. - Three days after the end of a
Billing Period
, Pax8 will create billable charges for thePartner
based on the latest totals posted by Vendor for that billing period. - Vendors will be unable to submit usage for a previous
Billing Period
for anySubscription
after midnight UTC on the 2nd after the following month.
Key Concepts
Daily Usage Tracking
Pax8 tracks usage totals on a daily basis. Best practices:
- Vendors should post the most current usage totals once per day.
- Pax8 does not track usage cumulatively. The latest usage posted will represent the total for a Billing Period.
- When multiple posts occur for the same
Subscription
andsummaryKey
on the same day. The default behavior is that older usage from that day is deleted. However overwriting same-day usage is configurable. See documentation for detailed examples
Billing Period Deadlines
When a Billing Period ends, Vendors have a limited window to post usage:
- Grace Period: 2 days after the Billing Period ends
- Deadline: Based on UTC time standard
- After the grace period, Pax8 creates billable charges and no further usage can be posted for that period
Example:
- Billing Period ends on October 31
- Usage can still be posted on November 1 and November 2
- Starting November 3, attempts to post usage for October will be rejected
Performance Metrics
- Average Latency: 400-500 milliseconds at current volume levels
- Request Limit: Maximum 1000 POST requests per minute
Expectations when Pax8 Creates Billable Charges
- Billable charges are line items that appear on the actual invoice sent to
Partners
- Once created, billable charges cannot be changed
- On the 3rd of each month, Pax8 will:
- Look for the latest usage totals posted for subscriptions from the previous
Billing Period
- Convert these totals into billable charges
- Finalize partner bills and prepare invoices
- Look for the latest usage totals posted for subscriptions from the previous
- After the 2nd, usage data for the previous month cannot be corrected via the API
Note: There are some caveats to this process. For detailed examples, please refer to the billing examples page.
API Limitations
Synchronous Processing
- Usage line posting is currently synchronous, meaning:
- The client waits for the request to complete with an HTTP 200 status code.
- The client remains connected until success or failure is confirmed.
- Asynchronous processing (where Pax8 would accept payloads with a 201 status and provide polling capabilities) is not supported at this time
Payload Size Constraints
- There is an upper limit to payload size before timeouts occur.
- Recommendation: Send no more than fifty (50) usage lines in a single request payload.
- This ensures the Pax8 system can process each request before client timeout.
Managing Large Summaries
When creating summaries with more than 50 usage lines sharing the same summaryKey
:
- Problem: Default behavior causes the second batch of 50 lines to overwrite the first batch when sent on the same day.
- Solution: Include the
overwriteSameDayUsage=false
parameter when posting usage.- This configures the API to append to existing lines rather than overwrite them.
For detailed examples of this configuration, see the overwrite same-day usage documentation.
OpenAPI Spec
You can find the complete OpenAPI Spec for the usage API here
Updated 5 days ago