/listings/{id}/children/merge
Merge standalone listings and their published owner statement history into this listing as a group. Run with dryRun=true first, then apply with the returned planDigest.
Required scope: listings:merge-children
Authorization
apiKey API key provided in dashboard
In: header
Path Parameters
Top-level listing that becomes the group parent.
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$uuidQuery Parameters
Validate this request through the real write path, then roll back all changes. See https://docs.vrplatform.app/api/dry-run-mode.
Request Body
application/json
Standalone listings that join the group with their history.
1 <= items <= 50Accountant-asserted combined opening balance in cents. Must equal the sum of the listing opening balances and the merged opening-month statement balance.
-9007199254740991 <= value <= 9007199254740991Required to apply when the dry run reports balanceMismatch issues.
falseThe planDigest from the dry run. Required to apply; the merge is refused when the recomputed plan differs.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://api.vrplatform.app/listings/497f6eca-6276-4993-bfeb-53cbbbba6f08/children/merge" \ -H "Content-Type: application/json" \ -d '{ "childIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ], "openingBalance": -9007199254740991 }'{
"status": "merged",
"planDigest": "string",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"ownershipPeriodId": "c57a699e-6bf1-422b-96b5-7c5d439de4ed",
"childIds": [
"497f6eca-6276-4993-bfeb-53cbbbba6f08"
],
"alreadyGroupedChildIds": [
"497f6eca-6276-4993-bfeb-53cbbbba6f08"
],
"openingBalance": {
"amount": -9007199254740991,
"month": "string",
"openingMonthBalanceStart": -9007199254740991
},
"statements": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"mergedStatementIds": [
"497f6eca-6276-4993-bfeb-53cbbbba6f08"
],
"month": "string",
"currency": "string",
"balanceStart": -9007199254740991,
"balanceEnd": -9007199254740991,
"netRevenue": -9007199254740991,
"expenses": -9007199254740991,
"transfers": -9007199254740991,
"payout": -9007199254740991,
"rentalRevenue": -9007199254740991,
"total": -9007199254740991
}
],
"deletedDraftStatementIds": [
"497f6eca-6276-4993-bfeb-53cbbbba6f08"
],
"removedOwnershipPeriodIds": [
"497f6eca-6276-4993-bfeb-53cbbbba6f08"
],
"removedOpeningBalanceTransactionIds": [
"497f6eca-6276-4993-bfeb-53cbbbba6f08"
],
"journalEntryUpdateCount": -9007199254740991,
"payoutLineUpdateCount": -9007199254740991,
"issues": [
{
"code": "balanceMismatch",
"severity": "warning",
"context": {
"scope": "source",
"listingId": "8c73d933-f7ed-437e-9da1-caac95adc1ae",
"month": "string",
"previousBalanceEnd": -9007199254740991,
"balanceStart": -9007199254740991,
"delta": -9007199254740991
},
"message": "string"
}
],
"operation": {
"operationId": "3051932a-fdd2-48fa-b330-7e7d41535969",
"type": "ach-verification",
"status": "queued",
"resource": {
"type": "bank-rule",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"role": "source"
}
}
}{
"code": "AUDIT_CURSOR_EXPIRED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}{
"code": "AUDIT_CURSOR_EXPIRED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}{
"code": "AUDIT_CURSOR_EXPIRED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}{
"code": "AUDIT_CURSOR_EXPIRED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}{
"code": "AUDIT_CURSOR_EXPIRED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}{
"code": "AUDIT_CURSOR_EXPIRED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}{
"code": "AUDIT_CURSOR_EXPIRED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}{
"code": "MISDIRECTED_REQUEST",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": {
"teamId": "a4ede8ba-7c0a-4485-8763-cbd9b282fbec",
"dataRegion": "ap",
"apiBaseUrl": "http://example.com"
}
}{
"code": "AUDIT_CURSOR_EXPIRED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}{
"code": "LOCKED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}{
"code": "AUDIT_CURSOR_EXPIRED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}{
"code": "AUDIT_CURSOR_EXPIRED",
"reason": "accountClassificationLocked",
"message": "string",
"links": {
"docs": "string",
"schema": "string"
},
"issues": [
{
"code": "duplicateLast4",
"message": "string",
"path": [
"string"
],
"schema": "string"
}
],
"retryable": true,
"context": null
}