PaxExact API
Create and price estimates with your own PaxExact credentials.
PaxExact is an estimating and pricing engine with its own data intelligence. This API creates and works estimates against the same engine the product uses internally — it never invents a price: when a line can't be priced, it says so, with a reason.
Base URL
https://accurate-warmth-production-4f18.up.railway.app/v1/external
Every path below is relative to this base.
Environments
- sandbox — self-service: issue a key yourself from the API Center once your organization has access.
- live — issued only after an approved production access request.
A sandbox key only sees sandbox estimates; a live key only live ones. The two never cross.
Scopes
| Scope | Grants |
|---|---|
| pricing:read | Read the pricing contract and resolve line pricing |
| estimates:read | List and read your estimates |
| estimates:write | Create and edit draft estimates |
Authentication
Every request carries a Bearer key shaped pxk_<environment>_<key_id>_<secret>. The secret is shown exactly once, when a key is issued or rotated — PaxExact stores only a verifier and cannot show it again. Each key carries an explicit scope list, environment, and rate limit. (A sandbox key's wire token reads pxk_test_… —testis that token segment's own name, while "sandbox" is what this platform calls the environment it belongs to.)
Rate limits
120 requests/minute by default, per key, on a fixed one-minute window. Every authenticated response carries X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset. Over the limit returns 429 with a Retry-After header.
Ready to go deeper?
The full developer guide has every endpoint, error code, and request sample.