# Post Reconciliation Signatures This API endpoint updates the signature status of a reconciliation. Endpoint: POST /api/v1/reconciliations/{reconciliationId}/sign Version: 1.0.0 Security: x-api-key ## Path parameters: - `reconciliationId` (string, required) The ID of the reconciliation item ## Request fields (application/json): - `signatureId` (string) If provided, only signoff on this signature Example: "5e94d5b63f557b001420bbe5" - `userId` (string) If provided, only signoff on signatures assigned to this user Example: "5e94d5b63f557b001420bbe6" - `group` (string) If provided, only signoff on signatures in this group Enum: "preparer", "reviewer", "unassigned" - `setSignedOff` (boolean) The status of the signature. Defaults to true Example: true ## Response 200 fields (application/json): - `_id` (string) Id of reconciliation Example: "5e94d5b63f557b001420bbe3" - `entity` (object) - `entity._id` (string) Id of entity Example: "5e94d5b63f557b001420bbe2" - `entity.name` (string) Name of entity Example: "John Smith's company" - `entity.workflow` (object) Workflow of entity - `entity.workflow.name` (string) Name of workflow Example: "Close" - `folder` (object) - `folder.id` (string) Id of folder Example: "5e94d5b63f557b001420bbe4" - `folder.name` (string) Name of folder Example: "Q1 2024 Reconciliations" - `type` (any) Enum: "SINGLE", "GROUPED" - `name` (string) Name of reconciliation Example: "1200 Accounts Receivable" - `updatedAt` (any) Date when reconciliation was last updated Example: "2024-01-01T00:00:00.000Z" - `glBalance` (string) Balance per general ledger provider Example: "39.8" - `gl` (object) - `gl.internalId` (string) Internal id of general ledger Example: "1234" - `gl.internalPeriod` (string) Internal period of general ledger Example: "334" - `gl.provider` (any) Provider of general ledger Enum: "TB", "NETSUITE", "INTACCT", "QBO", "MSDYNAMICS", "SAP", "XERO" - `gl.TB` (object) Populated if provider is TB - `gl.TB.internalPeriod` (string) Example: "334" - `gl.NETSUITE` (object) Populated if provider is NETSUITE - `gl.NETSUITE.internalId` (string) Example: "1234" - `gl.NETSUITE.parentCompany` (string) Example: "3" - `gl.NETSUITE.reportingBookId` (string) Example: "4" - `gl.NETSUITE.subsidiaries` (array) An empty array means the reconciliation is not filtered by subsidiary. All subsidiaries are required - `gl.NETSUITE.subsidiaries.name` (string) Example: "name" - `gl.INTACCT` (object) Populated if provider is INTACCT - `gl.INTACCT.adjustmentBookIds` (array) Example: ["1234"] - `gl.INTACCT.excludeReportingBook` (boolean) Example: true - `gl.INTACCT.locations` (array) - `gl.INTACCT.locations.parentId` (string) Example: "1234" - `gl.INTACCT.locations.excludeChildLocations` (boolean) Example: true - `gl.QBO` (object) Populated if provider is QBO - `gl.MSDYNAMICS` (object) Populated if provider is MSDYNAMICS - `gl.SAP` (object) Populated if provider is SAP - `gl.SAP.currencyType` (string) Example: "COMPANY" - `gl.SAP.ledger` (string) Example: "0L" - `gl.SAP.companyCodes` (array) Example: ["1234"] - `gl.XERO` (object) Populated if provider is XERO - `currency` (object) - `currency.code` (string) Currency code Example: "USD" - `currency.symbol` (string) Currency symbol Example: "$" - `currency.name` (string) Currency name Example: "US Dollar" - `currency.decimalDigits` (integer) Number of decimal digits Example: 2 - `accounts` (array) Accounts is only used if the type is . Otherwise, it is an empty array - `accounts.identifier` (string) Account identifier Example: "0001" - `period` (object) - `period.month` (string) Month of period Example: "december" - `period.year` (string) Year of period Example: "2023" - `journalSource` (string) Indicates whether the reconciliation uses general ledger or subledger balance to reconcile Enum: "GENERAL_LEDGER", "SUB_LEDGER" - `templateId` (string) Template Id of reconciliation Example: "5e94d5b63f557b001420bbe3" - `tags` (array) - `tags.name` (string) Name of tag Example: "non_close" - `signatures` (array) - `signatures.assignedTo` (object) - `signatures.assignedTo.email` (string) User email address Example: "john.smith@example.com" - `signatures.signedBy` (object) - `signatures.signedDate` (string) Date when reconciliation was signed - `signatures.dueDate` (string) Date when reconciliation is due - `signatures.estimatedTimeMinutes` (integer) Estimated completion time (minutes) Example: 90 - `signatures.group` (string) Enum: "preparer", "reviewer", "unassigned" ## Response 303 fields (application/json): - `data` (object) - `data.url` (string) The URL to the new location of the resource. ## Response 400 fields (application/json): - `message` (object) Reason(s) for the errors related to incorrect query keys or values that are out of bound - `message.errors` (array) - `message.errors.field` (string) The field that caused the error Example: "filter[month]" - `message.errors.message` (string) The error message Example: "filter[month] is required" - `name` (string) BadRequest Example: "BadRequest" - `status` (integer) The HTTP status code. Example: 400 ## Response 401 fields (application/json): - `message` (string) Reason for the error such as incorrect service access, malformed, expired or deactivated token. Example: "Invalid token" - `name` (string) Unauthorized Example: "Unauthorized" - `status` (integer) The HTTP status code. Example: 401 ## Response 413 fields (application/json): - `message` (string) Reason for the error related to the payload size Example: "Response size is greater than 1MB" - `name` (string) PayloadTooLarge Example: "PayloadTooLarge" - `status` (integer) The HTTP status code. Example: 413