Clients API
POST/api/v1/clients/{id}/merge/preview
Product availabilityAlgaPSAAlgaDesk

Preview a client merge

Dry run of absorbing source_client_id into this client as a billing profile. Writes nothing; returns the profiles that would move, per-entity row counts, the contacts and contracts needing a decision, the portal users whose billing-segment access would widen, the accounting mappings that would need re-pointing, and any blockers.

RBAC · client

Path parameters

idstring <uuid>Required

Request body

Content type: application/json · schema ClientMergePreviewBody

source_client_idstring <uuid>Required
The client that would be absorbed.

Response body

Success response 200 · schema ClientMergePreviewEnvelope

dataobjectRequired
sourceClientIdstring <uuid>Required
sourceClientNamestringRequired
targetClientIdstring <uuid>Required
targetClientNamestringRequired
blockersarray of objectRequired
Non-empty means the merge would be refused.
itemsobject
codestringRequired
messagestringRequired
i18nKeystringRequired
profilesarray of objectRequired
itemsobject
billingProfileIdstring <uuid>Required
currentNamestringRequired
mergedNamestringRequired
The name the profile takes on the destination client.
isDefaultbooleanRequired
isActivebooleanRequired
movedDefaultProfileIdstring <uuid>RequiredNullable
countsobjectRequired
Rows that would move, by entity label.
contactsarray of objectRequired
itemsobject
contactNameIdstring <uuid>Required
fullNamestringRequired
emailstringRequiredNullable
suggestedBillingProfileIdstring <uuid>RequiredNullable
contractsarray of objectRequired
itemsobject
clientContractIdstring <uuid>Required
contractNamestringRequiredNullable
startDatestringRequired
endDatestringRequiredNullable
billingProfileIdstring <uuid>RequiredNullable
isActivebooleanRequired
suggestedChoicestringRequired
Enum: originalcutover
suggestedCutoverDatestringRequired
visibilityGroupRenamesarray of objectRequired
itemsobject
groupIdstring <uuid>Required
fromstringRequired
tostringRequired
unrestrictedPortalUserIdsarray of stringRequired
Portal users of the source that currently see every billing profile.
itemsstring <uuid>
externalMappingsarray of objectRequired
itemsobject
mappingIdstringRequired
integrationTypestringRequired
algaEntityTypestringRequired
externalEntityIdstringRequired
externalRealmIdstringRequiredNullable
targetAlreadyMappedbooleanRequired
metaobject

Response codes

200
Merge preview returned.
400
Invalid client id or request payload.
401
API key missing/invalid or key user not found.
403
Permission denied for client update.
404
Client not found.
500
Unexpected merge preview failure.