Part3 Developers

API Overview

Conventions, errors, pagination, and rate limits for the Part3 REST API.

The Part3 API is a JSON-over-HTTPS REST API. All requests must be authenticated with a bearer token — see Authentication.

Base URLs

SurfaceBase URL
REST APIhttps://api.part3.io
MCPhttps://mcp.part3.io

Request format

  • Content type: application/json for all request bodies
  • Auth: Authorization: Bearer <token> header on every request
  • IDs: opaque strings; treat them as case-sensitive
  • Timestamps: ISO 8601 (2026-04-22T14:30:00Z), always UTC

Resource hierarchy

Most resources are scoped under an organization and (where relevant) a project:

/v1/organizations/:orgId
/v1/organizations/:orgId/projects
/v1/organizations/:orgId/projects/:projectId/documents
/v1/organizations/:orgId/projects/:projectId/drawings

Admin endpoints (Part3 staff only) live under /v1/admin/* and are not accessible with client API keys.

Errors

Errors return a JSON body with a machine-readable code:

{
  "error": {
    "code": "unauthorized",
    "message": "Invalid or expired access token"
  }
}
StatusWhen
400Request shape / validation failure
401Missing or invalid bearer token
403Token valid but lacks required permission or scope
404Resource does not exist or is outside your scope
429Rate limit exceeded
5xxServer error — safe to retry with backoff

Pagination

List endpoints use cursor-based pagination:

GET /v1/organizations/:orgId/projects?limit=50&cursor=eyJpZCI6...

The response includes nextCursor when more pages are available:

{
  "items": [ ... ],
  "nextCursor": "eyJpZCI6..."
}

Rate limits

Limits are applied per client ID. Exceeding them returns 429 with a Retry-After header. Contact support if you need higher limits for a production integration.


The full endpoint reference is generated from the OpenAPI specification and lives under the API Reference nav section.

On this page