---
title: "CloudPrint Partner Platform"
description: "Provision and operate isolated CloudPrint customer accounts from an embedded or white-label product."
---
<nav class="docs-breadcrumb" aria-label="Breadcrumb"><a href="/docs/">CloudPrint Documentation</a><span aria-hidden="true">/</span><span>Partner Platform</span></nav>

# CloudPrint Partner Platform

<p class="docs-lead">Use Partner Platform when your product must create and operate isolated CloudPrint accounts for customers who should not complete CloudPrint registration themselves. Partner Platform extends Developer Platform; it does not replace Applications or App Installations.</p>

## Choose the correct customer model

Developer Platform is for customers who own an existing CloudPrint Account and approve installation themselves. Partner Platform is for embedded or white-label onboarding where your backend provisions a managed customer account. If you only print for your own company, the simpler [API Credentials](../api/authentication/) flow remains the correct choice.

## Meet the prerequisites

API access requires an active Developer Account, an active Developer Application with a valid RS256 key and an active Partner Program enrollment. Production use is billed to the partner organization under its signed commercial agreement.

## Register the onboarding callback

Add the exact callback as a Developer Application `redirect_uri`, then send the same value as `agent_onboarding.return_uri` when provisioning an account or creating an Enrollment. CloudPrint returns the operator to this callback with the original `state`; validate it before accepting the result.

## Understand the resulting resources

Provisioning creates an isolated CloudPrint Account, a stable App Installation for your Developer Application and a Partner Account Relationship. Your `external_customer_id` maps the relationship to your customer. Store `relationship_id` for Partner lifecycle calls and `installation_id` for Print API token issuance. `cloudprint_account_id` is read-only verification data.

## Separate management from printing

For each `/partner-api/v1/*` request, sign a fresh single-use RS256 assertion with `aud=https://public-api.cloudprint.me/partner-api/v1` and send it as `Authorization: Bearer <application_assertion>`. Printing uses a different credential: exchange another assertion through `POST /developer-api/v1/app-installations/{installationId}/access-tokens`, then call `/api/v1/*` with the Installation Access Token.

## Own the customer experience

The partner controls onboarding, customer mapping and first-line support. CloudPrint maintains account isolation, authorization and printing infrastructure. Show relationship health, Agents, printers and usage in your own product; retain `X-Request-Id` and never expose private keys, assertions or Enrollment codes in logs.

## Plan operational and commercial controls

Partner calls allow 300 requests per source IP and 1,200 per authenticated Application in each 60-second window. On `429`, follow `Retry-After` and the `X-RateLimit-*` headers. CloudPrint invoices the partner organization monthly at the fixed price in the signed agreement; managed accounts, Agents and print jobs are unlimited unless that agreement says otherwise.

## Production checklist

- Use an outbound agent connection; do not expose printer ports to the internet.
- Store the stable printer identity instead of relying only on a display name.
- Validate document format, page size and orientation before creating the job.
- Handle terminal status, retry policy and duplicate-print protection explicitly.

## Next steps

<div class="docs-card-grid"><a class="docs-card" href="/docs/partner-platform/customer-accounts/"><strong>Provision and manage customer accounts</strong><span>Authenticate Partner API requests, provision managed customer accounts and control their lifecycle safely.</span></a>
<a class="docs-card" href="/docs/partner-platform/agent-enrollment/"><strong>Enroll an agent for a customer</strong><span>Connect a local CloudPrint Agent to the correct managed customer account without requiring a customer portal login.</span></a>
<a class="docs-card" href="/docs/developer-platform/"><strong>CloudPrint Developer Platform</strong><span>Build one application that customers install into their own CloudPrint accounts through stable App Installations.</span></a></div>

<nav class="docs-resource-links" aria-label="Next steps"><a href="/docs/api/v1/explorer/">OpenAPI</a><a href="https://my.cloudprint.me">Open account</a><a href="/docs/legal/privacy/">Privacy Policy</a><a href="/docs/legal/terms/">Terms</a><a href="/docs/legal/payments-and-refunds/">Payment and refunds</a><a href="/docs/legal/data-processing/">DPA</a></nav>