Partner
Assign controlled, unregistered hardware to a managed client
MSP only. Pre-registers hardware under the MSP's PARTNER control that is not registered anywhere (shelf stock, or units unregistered from a previous client) to a managed client org, so each unit lands in that client when it comes online. A registered unit is refused (HARDWARE_NOT_AVAILABLE; move it with /hardware/moveToClient); a unit already pending to another client is refused (CONFLICT); one already pending to this client is reported as assigned without a second pending registration. Per-serial results; one failing serial never aborts the others. Errors: 400 VALIDATION_FAILED (missing toClientOrgUuid, 0 or more than 50 serials); 403 NOT_VERIFIED_MSP, NOT_MANAGED_CLIENT; LOCATION_NOT_FOUND when locationUuid is not in the client org.
POST/ api/ partner/ hardware/ assignToClientAuthorizations
Your Rhombus API key. Must be accompanied by the x-auth-scheme header set to api-token (or partner-api-token for partner endpoints).
Instead of an API key, an OAuth access token: Bearer <token>, with the write scope.
OAuth explains tokens and scopes.
Headers
Authentication scheme identifier. Use api-token or partner-api-token with the x-auth-apikey header, api or partner-api with x-auth-apikey plus a client certificate, api-oauth-token or partner-api-oauth-token with x-auth-access-token, and federated-token with x-auth-ft. A request with Authorization: Bearer <token> and no x-auth-scheme is treated as OAuth, and federated-token may also be sent as the x-auth-scheme and x-auth-ft query parameters.
Available options: api-token, api, api-oauth-token, federated-token, partner-api-token, partner-api, partner-api-oauth-token
Client organization UUID (22-character RUUID), for partner credentials only. With it the call runs in that client organization with the partner support authority's role. Without it a partner credential runs as the partner organization, which outside the partner endpoints is deprecated (responses carry Deprecation and Sunset: Tue, 05 Jan 2027 00:00:00 GMT). A malformed value returns 400 INVALID_AUTH_ORG; a client organization the partner cannot access returns 403 PARTNER_CLIENT_ACCESS_DENIED.
Length: 22 to 22
Body
application/json · object
Pre-register controlled, unregistered hardware to a managed client.
base 64 (url-safe) uuid string
Example: "AAAAAAAAAAAAAAAAAAAAAA"
Serial numbers of controlled, unregistered hardware units (1 to 50). Trimmed and de-duplicated.
base 64 (url-safe) uuid string
Example: "AAAAAAAAAAAAAAAAAAAAAA"
Response
200 OK
application/json · object
Per-serial outcome of a hardware assignment.
Serials now pending registration to the client (including units that were already pending to it).
Stable, machine-readable code for the failure (one of the ApiErrorCode catalog) when error is true. Branch on this, not on errorMsg.
Serials that could not be assigned, each with a code and message.
Errors
Like every operation, this one can also answer with the standard error body (errorCode, errorMsg). Errors explains each status and how to retry.
400Bad Request. errorCode is one of: BAD_REQUEST, VALIDATION_FAILED, MISSING_REQUIRED_FIELD, INVALID_JSON, INVALID_REQUEST_BODY, FEATURE_NOT_ENABLED, INVALID_AUTH_ORG, LOCATION_NOT_FOUND, SELF_PROVISIONING_DISABLED, SKU_NOT_ALLOWED, QUANTITY_INVALID, AUTO_RENEW_REQUIRED, PROVISION_CAP_EXCEEDED, ACKNOWLEDGEMENT_REQUIRED, SIGNATURE_REQUIRED, APEX_VALIDATION, SKU_NOT_IN_PRICEBOOK.401Unauthorized. errorCode is one of: UNAUTHENTICATED, INVALID_CREDENTIAL, CREDENTIAL_EXPIRED, CREDENTIAL_REVOKED, CERTIFICATE_MISMATCH.403Forbidden. errorCode is one of: FORBIDDEN, DOMAIN_NOT_ALLOWED, DEVICE_SCOPE_MISMATCH, ROLE_NOT_PERMITTED, FUNCTIONALITY_REQUIRED, PARTNER_FUNCTIONALITY_REQUIRED, PERMISSION_REQUIRED, PARTNER_CLIENT_ACCESS_DENIED, HARDWARE_NOT_AVAILABLE, HARDWARE_ALREADY_REGISTERED, PARTNER_PORTAL_NOT_ENABLED, MANAGED_BY_MSP, SUPER_ADMIN_RESTRICTED_BY_MSP, MSP_DESIGNATION_INVALID, NOT_MANAGED_CLIENT, NOT_VERIFIED_MSP, ORDER_NOT_YOURS.429Too Many Requests. errorCode is one of: RATE_LIMITED, QUOTE_RATE_LIMITED.500Internal Server Error. errorCode is one of: INTERNAL_ERROR.503Service Unavailable. errorCode is one of: SERVICE_UNAVAILABLE, SALESFORCE_UNAVAILABLE.