{"items":[{"type":"group","label":"Get started","items":[{"type":"link","fsPath":"v2/index.md","metadata":{"type":"markdown"},"label":"🏠 Overview","link":"/v2","routeSlug":"/v2"},{"type":"link","fsPath":"v2/authentication.md","metadata":{"type":"markdown"},"label":"🔐 Authentication","link":"/v2/authentication","routeSlug":"/v2/authentication"},{"type":"link","fsPath":"v2/webhooks.md","metadata":{"type":"markdown"},"label":"🔔 Webhooks","link":"/v2/webhooks","routeSlug":"/v2/webhooks"},{"type":"link","fsPath":"v2/mcp.md","metadata":{"type":"markdown"},"label":"🤖 MCP (AI agents)","link":"/v2/mcp","routeSlug":"/v2/mcp"},{"type":"link","fsPath":"v2/private-label.md","metadata":{"type":"markdown"},"label":"🔒 Private label","link":"/v2/private-label","routeSlug":"/v2/private-label"}]},{"type":"group","label":"Reference","items":[{"type":"link","label":"Boya API","link":"/v2/openapi","routeSlug":"/v2/openapi"},{"type":"separator","label":"Money movement"},{"type":"group","label":"Bills · Manage","link":"/v2/openapi/bills","routeSlug":"/v2/openapi/bills","items":[{"label":"List bills","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills/billscontroller_listbills","routeSlug":"/v2/openapi/bills/billscontroller_listbills","metadata":{"seo":{"title":"List bills","description":"List bills"}},"httpPath":"/bills"},{"label":"Create a bill","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills/billscontroller_createbill","routeSlug":"/v2/openapi/bills/billscontroller_createbill","metadata":{"seo":{"title":"Create a bill","description":"Create a bill"}},"httpPath":"/bills"},{"label":"Create multiple bills in one request","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills/billscontroller_bulkcreatebills","routeSlug":"/v2/openapi/bills/billscontroller_bulkcreatebills","metadata":{"seo":{"title":"Create multiple bills in one request","description":"Create multiple bills in one request"}},"httpPath":"/bills/create-bulk-bills"},{"label":"Get bill counts by status","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills/billscontroller_getbillscount","routeSlug":"/v2/openapi/bills/billscontroller_getbillscount","metadata":{"seo":{"title":"Get bill counts by status","description":"Get bill counts by status"}},"httpPath":"/bills/count"},{"label":"Get bill approvers","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills/billscontroller_getbillapprovers","routeSlug":"/v2/openapi/bills/billscontroller_getbillapprovers","metadata":{"seo":{"title":"Get bill approvers","description":"Get bill approvers"}},"httpPath":"/bills/{billId}/approvers"},{"label":"Get bill detail","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills/billscontroller_getbill","routeSlug":"/v2/openapi/bills/billscontroller_getbill","metadata":{"seo":{"title":"Get bill detail","description":"Get bill detail"}},"httpPath":"/bills/{billId}"},{"label":"Update a bill","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills/billscontroller_updatebill","routeSlug":"/v2/openapi/bills/billscontroller_updatebill","metadata":{"seo":{"title":"Update a bill","description":"Update a bill"}},"httpPath":"/bills/{billId}"},{"label":"Cancel a bill","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills/billscontroller_cancelbill","routeSlug":"/v2/openapi/bills/billscontroller_cancelbill","metadata":{"seo":{"title":"Cancel a bill","description":"Cancel a bill"}},"httpPath":"/bills/{billId}"},{"label":"Return a bill to draft","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills/billscontroller_returntodraft","routeSlug":"/v2/openapi/bills/billscontroller_returntodraft","metadata":{"seo":{"title":"Return a bill to draft","description":"Return a bill to draft"}},"httpPath":"/bills/{billId}/return-to-draft"}]},{"type":"group","label":"Bills · Payments","link":"/v2/openapi/bills-payments","routeSlug":"/v2/openapi/bills-payments","items":[{"label":"Check bill payment status","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-payments/billscontroller_checkpaymentstatus","routeSlug":"/v2/openapi/bills-payments/billscontroller_checkpaymentstatus","metadata":{"seo":{"title":"Check bill payment status","description":"Check bill payment status"}},"httpPath":"/bills/payments/{paymentRef}/status"},{"label":"Add another payment to a bill","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-payments/billscontroller_addpayment","routeSlug":"/v2/openapi/bills-payments/billscontroller_addpayment","metadata":{"seo":{"title":"Add another payment to a bill","description":"Add another payment to a bill"}},"httpPath":"/bills/{billId}/payments"},{"label":"Request approval for a bill payment","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-payments/billscontroller_requestapproval","routeSlug":"/v2/openapi/bills-payments/billscontroller_requestapproval","metadata":{"seo":{"title":"Request approval for a bill payment","description":"Request approval for a bill payment"}},"httpPath":"/bills/{billId}/payments/{paymentRef}/request-approval"},{"label":"Approve a bill payment","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-payments/billscontroller_approvepayment","routeSlug":"/v2/openapi/bills-payments/billscontroller_approvepayment","metadata":{"seo":{"title":"Approve a bill payment","description":"Approve a bill payment"}},"httpPath":"/bills/{billId}/payments/{paymentRef}/approve"},{"label":"Reject a bill payment","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-payments/billscontroller_rejectpayment","routeSlug":"/v2/openapi/bills-payments/billscontroller_rejectpayment","metadata":{"seo":{"title":"Reject a bill payment","description":"Reject a bill payment"}},"httpPath":"/bills/{billId}/payments/{paymentRef}/reject"},{"label":"Withdraw approval request and return bill to draft","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-payments/billscontroller_withdrawapproval","routeSlug":"/v2/openapi/bills-payments/billscontroller_withdrawapproval","metadata":{"seo":{"title":"Withdraw approval request and return bill to draft","description":"Withdraw approval request and return bill to draft"}},"httpPath":"/bills/{billId}/payments/{paymentRef}/withdraw"},{"label":"Retry a failed bill payment","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-payments/billscontroller_retrypayment","routeSlug":"/v2/openapi/bills-payments/billscontroller_retrypayment","metadata":{"seo":{"title":"Retry a failed bill payment","description":"Retry a failed bill payment"}},"httpPath":"/bills/payments/{paymentRef}/retry"}]},{"type":"group","label":"Bills · Approval workflows","link":"/v2/openapi/bills-workflows","routeSlug":"/v2/openapi/bills-workflows","items":[{"label":"Get bill approval workflow configuration","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-workflows/billscontroller_getworkflow","routeSlug":"/v2/openapi/bills-workflows/billscontroller_getworkflow","metadata":{"seo":{"title":"Get bill approval workflow configuration","description":"Get bill approval workflow configuration"}},"httpPath":"/bills/workflow"},{"label":"Create bill approval workflow","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-workflows/billscontroller_createworkflow","routeSlug":"/v2/openapi/bills-workflows/billscontroller_createworkflow","metadata":{"seo":{"title":"Create bill approval workflow","description":"Create bill approval workflow"}},"httpPath":"/bills/workflow"},{"label":"Update bill approval workflow","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-workflows/billscontroller_updateworkflow","routeSlug":"/v2/openapi/bills-workflows/billscontroller_updateworkflow","metadata":{"seo":{"title":"Update bill approval workflow","description":"Update bill approval workflow"}},"httpPath":"/bills/workflow/{workflowId}"},{"label":"Delete bill approval workflow","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-workflows/billscontroller_deleteworkflow","routeSlug":"/v2/openapi/bills-workflows/billscontroller_deleteworkflow","metadata":{"seo":{"title":"Delete bill approval workflow","description":"Delete bill approval workflow"}},"httpPath":"/bills/workflow/{workflowId}"}]},{"type":"group","label":"Bills · Budgets & setup","link":"/v2/openapi/bills-budgets","routeSlug":"/v2/openapi/bills-budgets","items":[{"label":"Get business budgets for bill assignment","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-budgets/billscontroller_getbudgets","routeSlug":"/v2/openapi/bills-budgets/billscontroller_getbudgets","metadata":{"seo":{"title":"Get business budgets for bill assignment","description":"Get business budgets for bill assignment"}},"httpPath":"/bills/budgets"},{"label":"Get a single budget (with its wallet) for bill assignment","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-budgets/billscontroller_getbudget","routeSlug":"/v2/openapi/bills-budgets/billscontroller_getbudget","metadata":{"seo":{"title":"Get a single budget (with its wallet) for bill assignment","description":"Get a single budget (with its wallet) for bill assignment"}},"httpPath":"/bills/budgets/{budgetId}"},{"label":"Add or update vendor payment method","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-budgets/billscontroller_addvendorpaymentmethod","routeSlug":"/v2/openapi/bills-budgets/billscontroller_addvendorpaymentmethod","metadata":{"seo":{"title":"Add or update vendor payment method","description":"Add or update vendor payment method"}},"httpPath":"/bills/vendors/{vendorId}/payment-method"}]},{"type":"group","label":"Bills · Attachments","link":"/v2/openapi/bills-attachments","routeSlug":"/v2/openapi/bills-attachments","items":[{"label":"Upload a bill attachment file and get its URL","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-attachments/billscontroller_uploadbillfile","routeSlug":"/v2/openapi/bills-attachments/billscontroller_uploadbillfile","metadata":{"seo":{"title":"Upload a bill attachment file and get its URL","description":"Upload a bill attachment file and get its URL"}},"httpPath":"/bills/upload"},{"label":"Attach an uploaded file to a bill","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/bills-attachments/billscontroller_addbillattachment","routeSlug":"/v2/openapi/bills-attachments/billscontroller_addbillattachment","metadata":{"seo":{"title":"Attach an uploaded file to a bill","description":"Attach an uploaded file to a bill"}},"httpPath":"/bills/{billId}/attachments"}]},{"type":"group","label":"payments","link":"/v2/openapi/payments","routeSlug":"/v2/openapi/payments","items":[{"label":"Get payment channels for a country","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/payments/paymentscontroller_getpaymentchannels","routeSlug":"/v2/openapi/payments/paymentscontroller_getpaymentchannels","metadata":{"seo":{"title":"Get payment channels for a country","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/payments/channels"},{"label":"List bulk payments with pagination","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/payments/paymentscontroller_listpayments","routeSlug":"/v2/openapi/payments/paymentscontroller_listpayments","metadata":{"seo":{"title":"List bulk payments with pagination","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/payments"},{"label":"Create bulk payout","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/payments/paymentscontroller_createbulkpayout","routeSlug":"/v2/openapi/payments/paymentscontroller_createbulkpayout","metadata":{"seo":{"title":"Create bulk payout","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/payments"},{"label":"Get banks for a country","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/payments/paymentscontroller_getbanks","routeSlug":"/v2/openapi/payments/paymentscontroller_getbanks","metadata":{"seo":{"title":"Get banks for a country","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/payments/banks"},{"label":"Create payment intent","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/payments/paymentscontroller_createpaymentintent","routeSlug":"/v2/openapi/payments/paymentscontroller_createpaymentintent","metadata":{"seo":{"title":"Create payment intent","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/payments/intent"},{"label":"Confirm payment intent with OTP","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/payments/paymentscontroller_confirmpaymentintent","routeSlug":"/v2/openapi/payments/paymentscontroller_confirmpaymentintent","metadata":{"seo":{"title":"Confirm payment intent with OTP","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/payments/confirm"},{"label":"Request M-Pesa STK push payment","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/payments/paymentscontroller_requestmpesapayment","routeSlug":"/v2/openapi/payments/paymentscontroller_requestmpesapayment","metadata":{"seo":{"title":"Request M-Pesa STK push payment","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/payments/request-mpesa-payment"},{"label":"Initiate draft payout","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/payments/paymentscontroller_initiatedraftpayout","routeSlug":"/v2/openapi/payments/paymentscontroller_initiatedraftpayout","metadata":{"seo":{"title":"Initiate draft payout","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/payments/{batch_no}/initiate"},{"label":"Return payout to draft status","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/payments/paymentscontroller_cancelpayout","routeSlug":"/v2/openapi/payments/paymentscontroller_cancelpayout","metadata":{"seo":{"title":"Return payout to draft status","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/payments/{batch_no}/draft"},{"label":"cancel a payout batch","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/payments/paymentscontroller_rejectpayout","routeSlug":"/v2/openapi/payments/paymentscontroller_rejectpayout","metadata":{"seo":{"title":"cancel a payout batch","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/payments/payout/cancel"}]},{"type":"group","label":"approvals","link":"/v2/openapi/approvals","routeSlug":"/v2/openapi/approvals","items":[{"label":"List all approvals with filtering and pagination","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/approvals/approvalscontroller_listapprovals","routeSlug":"/v2/openapi/approvals/approvalscontroller_listapprovals","metadata":{"seo":{"title":"List all approvals with filtering and pagination","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/approvals/all"},{"label":"List approvals with UX-friendly digest format","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/approvals/approvalscontroller_listapprovalsdigest","routeSlug":"/v2/openapi/approvals/approvalscontroller_listapprovalsdigest","metadata":{"seo":{"title":"List approvals with UX-friendly digest format","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/approvals/all/digest"},{"label":"Approve a payment request","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/approvals/approvalscontroller_approvepaymentrequest","routeSlug":"/v2/openapi/approvals/approvalscontroller_approvepaymentrequest","metadata":{"seo":{"title":"Approve a payment request","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/approvals/approve"},{"label":"Reject a payment request","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/approvals/approvalscontroller_rejectpaymentrequest","routeSlug":"/v2/openapi/approvals/approvalscontroller_rejectpaymentrequest","metadata":{"seo":{"title":"Reject a payment request","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/approvals/reject"},{"label":"Reject a bill payment","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/approvals/approvalscontroller_rejectbillpayment","routeSlug":"/v2/openapi/approvals/approvalscontroller_rejectbillpayment","metadata":{"seo":{"title":"Reject a bill payment","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/approvals/bills/reject"}]},{"type":"group","label":"fx","link":"/v2/openapi/fx","routeSlug":"/v2/openapi/fx","items":[{"label":"Get current FX conversion rate","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/fx/fxcontroller_getconversionrate","routeSlug":"/v2/openapi/fx/fxcontroller_getconversionrate","metadata":{"seo":{"title":"Get current FX conversion rate","description":"Returns the current exchange rate between two currencies, including buy/sell markup."}},"httpPath":"/fx/conversion-rate"},{"label":"Get historic FX rate","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/fx/fxcontroller_gethistoricrate","routeSlug":"/v2/openapi/fx/fxcontroller_gethistoricrate","metadata":{"seo":{"title":"Get historic FX rate","description":"Returns the exchange rate between two currencies for a specific historical date."}},"httpPath":"/fx/historic-rate"},{"label":"Fetch available FX currencies","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/fx/fxcontroller_fetchcurrencies","routeSlug":"/v2/openapi/fx/fxcontroller_fetchcurrencies","metadata":{"seo":{"title":"Fetch available FX currencies","description":"Returns all currencies available for foreign exchange operations."}},"httpPath":"/fx/currencies"},{"label":"Execute FX transfer between wallets","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/fx/fxcontroller_createfxtransfer","routeSlug":"/v2/openapi/fx/fxcontroller_createfxtransfer","metadata":{"seo":{"title":"Execute FX transfer between wallets","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/fx/transfer"}]},{"type":"separator","label":"Spend & cards"},{"type":"group","label":"Expenses · Retrieve","link":"/v2/openapi/expenses","routeSlug":"/v2/openapi/expenses","items":[{"label":"List expenses (role-scoped)","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses/expensescontroller_listuserexpenses","routeSlug":"/v2/openapi/expenses/expensescontroller_listuserexpenses","metadata":{"seo":{"title":"List expenses (role-scoped)","description":"Returns a paginated list of expenses filtered by the caller's role."}},"httpPath":"/expenses"},{"label":"Get expense by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses/expensescontroller_getexpense","routeSlug":"/v2/openapi/expenses/expensescontroller_getexpense","metadata":{"seo":{"title":"Get expense by ID","description":"Get expense by ID"}},"httpPath":"/expenses/{id}"},{"label":"Get expenses by category","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses/expensescontroller_getexpensesbycategory","routeSlug":"/v2/openapi/expenses/expensescontroller_getexpensesbycategory","metadata":{"seo":{"title":"Get expenses by category","description":"Get expenses by category"}},"httpPath":"/expenses/byCategory/{categoryId}"},{"label":"Get expenses by subcategory _id","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses/expensescontroller_getexpensesbysubcategory","routeSlug":"/v2/openapi/expenses/expensescontroller_getexpensesbysubcategory","metadata":{"seo":{"title":"Get expenses by subcategory _id","description":"Get expenses by subcategory _id"}},"httpPath":"/expenses/bySubCategory/{subcategoryId}"},{"label":"Get expenses by vendor","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses/expensescontroller_getexpensesbyvendor","routeSlug":"/v2/openapi/expenses/expensescontroller_getexpensesbyvendor","metadata":{"seo":{"title":"Get expenses by vendor","description":"Get expenses by vendor"}},"httpPath":"/expenses/byVendor/{vendor}"}]},{"type":"group","label":"Expenses · Review & approvals","link":"/v2/openapi/expenses-review","routeSlug":"/v2/openapi/expenses-review","items":[{"label":"Update an expense description or notes","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-review/expensescontroller_updateexpensenotes","routeSlug":"/v2/openapi/expenses-review/expensescontroller_updateexpensenotes","metadata":{"seo":{"title":"Update an expense description or notes","description":"Update an expense description or notes"}},"httpPath":"/expenses/notes/{id}"},{"label":"Update expense subcategory","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-review/expensescontroller_updateexpensesubcategory","routeSlug":"/v2/openapi/expenses-review/expensescontroller_updateexpensesubcategory","metadata":{"seo":{"title":"Update expense subcategory","description":"Update expense subcategory"}},"httpPath":"/expenses/changeSubCategory/{expenseId}"},{"label":"Approve multiple expenses","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-review/expensescontroller_approvemultipleexpenses","routeSlug":"/v2/openapi/expenses-review/expensescontroller_approvemultipleexpenses","metadata":{"seo":{"title":"Approve multiple expenses","description":"Approve multiple expenses"}},"httpPath":"/expenses/approve"},{"label":"Approve single expense","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-review/expensescontroller_approvesingleexpense","routeSlug":"/v2/openapi/expenses-review/expensescontroller_approvesingleexpense","metadata":{"seo":{"title":"Approve single expense","description":"Approve single expense"}},"httpPath":"/expenses/approve/{expenseId}"},{"label":"Reject multiple expenses","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-review/expensescontroller_rejectmultipleexpenses","routeSlug":"/v2/openapi/expenses-review/expensescontroller_rejectmultipleexpenses","metadata":{"seo":{"title":"Reject multiple expenses","description":"Reject multiple expenses"}},"httpPath":"/expenses/reject"},{"label":"Reject single expense","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-review/expensescontroller_rejectsingleexpense","routeSlug":"/v2/openapi/expenses-review/expensescontroller_rejectsingleexpense","metadata":{"seo":{"title":"Reject single expense","description":"Reject single expense"}},"httpPath":"/expenses/reject/{expenseId}"},{"label":"Request details for a specific expense with mandatory notes","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-review/expensescontroller_requestexpensedetails","routeSlug":"/v2/openapi/expenses-review/expensescontroller_requestexpensedetails","metadata":{"seo":{"title":"Request details for a specific expense with mandatory notes","description":"Request details for a specific expense with mandatory notes"}},"httpPath":"/expenses/requestDetails/{expenseId}"}]},{"type":"group","label":"Expenses · Reports","link":"/v2/openapi/expenses-reports","routeSlug":"/v2/openapi/expenses-reports","items":[{"label":"Get category report for expenses","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-reports/expensescontroller_getcategoryreport","routeSlug":"/v2/openapi/expenses-reports/expensescontroller_getcategoryreport","metadata":{"seo":{"title":"Get category report for expenses","description":"Get category report for expenses"}},"httpPath":"/expenses/category-report"},{"label":"Get hierarchical team-category-subcategory expense report","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-reports/expensescontroller_getteamcategoryreport","routeSlug":"/v2/openapi/expenses-reports/expensescontroller_getteamcategoryreport","metadata":{"seo":{"title":"Get hierarchical team-category-subcategory expense report","description":"Returns a hierarchical report of expenses grouped by team, category, and subcategory. Supports filtering by period, account reference, team code, and category."}},"httpPath":"/expenses/team-category-report"}]},{"type":"group","label":"Expenses · Exports","link":"/v2/openapi/expenses-exports","routeSlug":"/v2/openapi/expenses-exports","items":[{"label":"Start receipt export job","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-exports/expensescontroller_exportreceipts","routeSlug":"/v2/openapi/expenses-exports/expensescontroller_exportreceipts","metadata":{"seo":{"title":"Start receipt export job","description":"Forwards the receipt export request to the expenses service and returns a background job id."}},"httpPath":"/expenses/export-receipts"},{"label":"Get receipt export job status","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-exports/expensescontroller_getreceiptexportstatus","routeSlug":"/v2/openapi/expenses-exports/expensescontroller_getreceiptexportstatus","metadata":{"seo":{"title":"Get receipt export job status","description":"Returns progress, completion state, and download URL for a receipt export job."}},"httpPath":"/expenses/export-receipts/status/{jobId}"},{"label":"Get a signed download URL for an expense receipt","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/expenses-exports/expensescontroller_downloadexpensereceipt","routeSlug":"/v2/openapi/expenses-exports/expensescontroller_downloadexpensereceipt","metadata":{"seo":{"title":"Get a signed download URL for an expense receipt","description":"Get a signed download URL for an expense receipt"}},"httpPath":"/expenses/downloadExpenseReceipt/{transactionRef}"}]},{"type":"group","label":"Cards · Manage","link":"/v2/openapi/cards","routeSlug":"/v2/openapi/cards","items":[{"label":"List user cards","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards/cardscontroller_listusercards","routeSlug":"/v2/openapi/cards/cardscontroller_listusercards","metadata":{"seo":{"title":"List user cards","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards"},{"label":"Create a new card","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards/cardscontroller_createcard","routeSlug":"/v2/openapi/cards/cardscontroller_createcard","metadata":{"seo":{"title":"Create a new card","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards"},{"label":"List cards for a specific employee","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards/cardscontroller_listemployeecards","routeSlug":"/v2/openapi/cards/cardscontroller_listemployeecards","metadata":{"seo":{"title":"List cards for a specific employee","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/employee/{employeeId}"},{"label":"List business cards","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards/cardscontroller_listbusinesscards","routeSlug":"/v2/openapi/cards/cardscontroller_listbusinesscards","metadata":{"seo":{"title":"List business cards","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/business"},{"label":"Get card by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards/cardscontroller_getcard","routeSlug":"/v2/openapi/cards/cardscontroller_getcard","metadata":{"seo":{"title":"Get card by ID","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/{id}"},{"label":"Update card details","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards/cardscontroller_updatecard","routeSlug":"/v2/openapi/cards/cardscontroller_updatecard","metadata":{"seo":{"title":"Update card details","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/{id}"},{"label":"Get card balance","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards/cardscontroller_getcardbalance","routeSlug":"/v2/openapi/cards/cardscontroller_getcardbalance","metadata":{"seo":{"title":"Get card balance","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/{id}/balance"},{"label":"Get card transactions","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards/cardscontroller_getcardtransactions","routeSlug":"/v2/openapi/cards/cardscontroller_getcardtransactions","metadata":{"seo":{"title":"Get card transactions","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/{id}/transactions"}]},{"type":"group","label":"Cards · Controls","link":"/v2/openapi/cards-controls","routeSlug":"/v2/openapi/cards-controls","items":[{"label":"Block a card","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-controls/cardscontroller_blockcard","routeSlug":"/v2/openapi/cards-controls/cardscontroller_blockcard","metadata":{"seo":{"title":"Block a card","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/{id}/block"},{"label":"Unblock a card","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-controls/cardscontroller_unblockcard","routeSlug":"/v2/openapi/cards-controls/cardscontroller_unblockcard","metadata":{"seo":{"title":"Unblock a card","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/{id}/unblock"},{"label":"Retire (cancel) a card","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-controls/cardscontroller_retirecard","routeSlug":"/v2/openapi/cards-controls/cardscontroller_retirecard","metadata":{"seo":{"title":"Retire (cancel) a card","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/{id}/retire"},{"label":"Re-issue a virtual card (retire old, create new)","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-controls/cardscontroller_reissuecard","routeSlug":"/v2/openapi/cards-controls/cardscontroller_reissuecard","metadata":{"seo":{"title":"Re-issue a virtual card (retire old, create new)","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/{id}/reissue"}]},{"type":"group","label":"Cards · Single-use","link":"/v2/openapi/cards-single-use","routeSlug":"/v2/openapi/cards-single-use","items":[{"label":"Request a Single Use Card","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-single-use/cardscontroller_requestsingleusecard","routeSlug":"/v2/openapi/cards-single-use/cardscontroller_requestsingleusecard","metadata":{"seo":{"title":"Request a Single Use Card","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/single-use/request"},{"label":"Get the business SUC policy","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-single-use/cardscontroller_getsucpolicy","routeSlug":"/v2/openapi/cards-single-use/cardscontroller_getsucpolicy","metadata":{"seo":{"title":"Get the business SUC policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/single-use/policy"}]},{"type":"group","label":"Cards · Physical cards","link":"/v2/openapi/cards-physical","routeSlug":"/v2/openapi/cards-physical","items":[{"label":"List physical card orders with pagination","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-physical/cardscontroller_getphysicalcardorders","routeSlug":"/v2/openapi/cards-physical/cardscontroller_getphysicalcardorders","metadata":{"seo":{"title":"List physical card orders with pagination","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/physical/orders"},{"label":"Approve one or multiple physical card orders","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-physical/cardscontroller_approvephysicalcardorders","routeSlug":"/v2/openapi/cards-physical/cardscontroller_approvephysicalcardorders","metadata":{"seo":{"title":"Approve one or multiple physical card orders","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/physical/orders"},{"label":"Reject one or multiple physical card orders","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-physical/cardscontroller_rejectphysicalcardorders","routeSlug":"/v2/openapi/cards-physical/cardscontroller_rejectphysicalcardorders","metadata":{"seo":{"title":"Reject one or multiple physical card orders","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/physical/orders"}]},{"type":"group","label":"Cards · Authorization","link":"/v2/openapi/cards-auth","routeSlug":"/v2/openapi/cards-auth","items":[{"label":"Authorize a BT session for card","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-auth/cardscontroller_authorizebtsession","routeSlug":"/v2/openapi/cards-auth/cardscontroller_authorizebtsession","metadata":{"seo":{"title":"Authorize a BT session for card","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/authorize"},{"label":"Get card fingerprint by VCN","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/cards-auth/cardscontroller_getcardfingerprint","routeSlug":"/v2/openapi/cards-auth/cardscontroller_getcardfingerprint","metadata":{"seo":{"title":"Get card fingerprint by VCN","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/cards/getFingerPrint/{vcn}"}]},{"type":"group","label":"subscriptions","link":"/v2/openapi/subscriptions","routeSlug":"/v2/openapi/subscriptions","items":[{"label":"List subscriptions","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/subscriptions/subscriptionscontroller_listsubscriptions","routeSlug":"/v2/openapi/subscriptions/subscriptionscontroller_listsubscriptions","metadata":{"seo":{"title":"List subscriptions","description":"Retrieves a paginated list of subscriptions with optional filtering by search term and status"}},"httpPath":"/subscriptions"},{"label":"Get subscription expenses","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/subscriptions/subscriptionscontroller_getsubscriptionexpenses","routeSlug":"/v2/openapi/subscriptions/subscriptionscontroller_getsubscriptionexpenses","metadata":{"seo":{"title":"Get subscription expenses","description":"Retrieves paginated list of expenses for a specific subscription"}},"httpPath":"/subscriptions/expenses"},{"label":"Get amount spent per subscription","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/subscriptions/subscriptionscontroller_getamountspent","routeSlug":"/v2/openapi/subscriptions/subscriptionscontroller_getamountspent","metadata":{"seo":{"title":"Get amount spent per subscription","description":"Retrieves amount spent per subscription with period breakdown"}},"httpPath":"/subscriptions/amount-spent"},{"label":"Create subscription","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/subscriptions/subscriptionscontroller_createsubscription","routeSlug":"/v2/openapi/subscriptions/subscriptionscontroller_createsubscription","metadata":{"seo":{"title":"Create subscription","description":"Creates a new subscription with specified configuration"}},"httpPath":"/subscriptions/create"},{"label":"Update subscription status","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/subscriptions/subscriptionscontroller_updatestatus","routeSlug":"/v2/openapi/subscriptions/subscriptionscontroller_updatestatus","metadata":{"seo":{"title":"Update subscription status","description":"Updates the status of a subscription (ACTIVE or PAUSED)"}},"httpPath":"/subscriptions/status"},{"label":"Update subscription team","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/subscriptions/subscriptionscontroller_updateteam","routeSlug":"/v2/openapi/subscriptions/subscriptionscontroller_updateteam","metadata":{"seo":{"title":"Update subscription team","description":"Updates team information for a subscription"}},"httpPath":"/subscriptions/team"},{"label":"Update subscription limits and billing frequency","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/subscriptions/subscriptionscontroller_updatelimitsbillingfrequency","routeSlug":"/v2/openapi/subscriptions/subscriptionscontroller_updatelimitsbillingfrequency","metadata":{"seo":{"title":"Update subscription limits and billing frequency","description":"Updates the limits and billing frequency for a subscription"}},"httpPath":"/subscriptions/limits-billing-frequency"},{"label":"Assign employee to subscription","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/subscriptions/subscriptionscontroller_assignemployee","routeSlug":"/v2/openapi/subscriptions/subscriptionscontroller_assignemployee","metadata":{"seo":{"title":"Assign employee to subscription","description":"Assigns an employee and card to a subscription"}},"httpPath":"/subscriptions/assign-employee"},{"label":"Update subscription subcategory","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/subscriptions/subscriptionscontroller_updatesubcategory","routeSlug":"/v2/openapi/subscriptions/subscriptionscontroller_updatesubcategory","metadata":{"seo":{"title":"Update subscription subcategory","description":"Updates the subcategory for a subscription"}},"httpPath":"/subscriptions/subcategory"},{"label":"Auto generate subscriptions","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/subscriptions/subscriptionscontroller_autogeneratesubscriptions","routeSlug":"/v2/openapi/subscriptions/subscriptionscontroller_autogeneratesubscriptions","metadata":{"seo":{"title":"Auto generate subscriptions","description":"Automatically generates subscriptions from transaction patterns"}},"httpPath":"/subscriptions/auto-generate"}]},{"type":"group","label":"tags","link":"/v2/openapi/tags","routeSlug":"/v2/openapi/tags","items":[{"label":"List all expense tags","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/tags/tagscontroller_listtags","routeSlug":"/v2/openapi/tags/tagscontroller_listtags","metadata":{"seo":{"title":"List all expense tags","description":"Returns all active expense tags for the business. Used to populate the tags dropdown on the single-use card request form and expense forms."}},"httpPath":"/tags"},{"label":"List tag groups with their tags","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/tags/tagscontroller_listtaggroups","routeSlug":"/v2/openapi/tags/tagscontroller_listtaggroups","metadata":{"seo":{"title":"List tag groups with their tags","description":"Returns all tag groups (e.g. \"Project\", \"Department\") and their associated tags for the business."}},"httpPath":"/tags/groups"}]},{"type":"separator","label":"Ledger & accounting"},{"type":"group","label":"transactions","link":"/v2/openapi/transactions","routeSlug":"/v2/openapi/transactions","items":[{"label":"Create a new transaction","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_createtransaction","routeSlug":"/v2/openapi/transactions/transactionscontroller_createtransaction","metadata":{"seo":{"title":"Create a new transaction","description":"Create a new transaction"}},"httpPath":"/transactions/new"},{"label":"Get money movement analytics for a specific month","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_getmoneymovement","routeSlug":"/v2/openapi/transactions/transactionscontroller_getmoneymovement","metadata":{"seo":{"title":"Get money movement analytics for a specific month","description":"Returns aggregated money in/out data with top sources, top spends, and last 3 months trend"}},"httpPath":"/transactions/money-movement"},{"label":"Get transaction fees","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_getfees","routeSlug":"/v2/openapi/transactions/transactionscontroller_getfees","metadata":{"seo":{"title":"Get transaction fees","description":"Get transaction fees"}},"httpPath":"/transactions/fees"},{"label":"Get recent transactions","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_getrecenttransactions","routeSlug":"/v2/openapi/transactions/transactionscontroller_getrecenttransactions","metadata":{"seo":{"title":"Get recent transactions","description":"Get recent transactions"}},"httpPath":"/transactions/recent"},{"label":"Get transaction by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_gettransaction","routeSlug":"/v2/openapi/transactions/transactionscontroller_gettransaction","metadata":{"seo":{"title":"Get transaction by ID","description":"Get transaction by ID"}},"httpPath":"/transactions/{id}"},{"label":"List transactions","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_listalltransactions","routeSlug":"/v2/openapi/transactions/transactionscontroller_listalltransactions","metadata":{"seo":{"title":"List transactions","description":"List transactions"}},"httpPath":"/transactions"},{"label":"Approve a transaction","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_approvetransaction","routeSlug":"/v2/openapi/transactions/transactionscontroller_approvetransaction","metadata":{"seo":{"title":"Approve a transaction","description":"Approve a transaction"}},"httpPath":"/transactions/{id}/approve"},{"label":"Reject a transaction","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_rejecttransaction","routeSlug":"/v2/openapi/transactions/transactionscontroller_rejecttransaction","metadata":{"seo":{"title":"Reject a transaction","description":"Reject a transaction"}},"httpPath":"/transactions/{id}/reject"},{"label":"Tag a transaction with a subcategory","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_tagtransaction","routeSlug":"/v2/openapi/transactions/transactionscontroller_tagtransaction","metadata":{"seo":{"title":"Tag a transaction with a subcategory","description":"Tags an expense or topup transaction with a subcategory. IFT and REFUND transactions are not supported."}},"httpPath":"/transactions/{id}/tag"},{"label":"Upload a supporting document for a transaction","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_uploadsupportingdocument","routeSlug":"/v2/openapi/transactions/transactionscontroller_uploadsupportingdocument","metadata":{"seo":{"title":"Upload a supporting document for a transaction","description":"Uploads a supporting document (PDF, XLS, XLSX, DOCX, CSV, PNG, JPEG) to S3 for a specific transaction. Maximum file size is 10MB."}},"httpPath":"/transactions/{id}/supporting-document"},{"label":"Remove a document from a transaction","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_removetransactiondocument","routeSlug":"/v2/openapi/transactions/transactionscontroller_removetransactiondocument","metadata":{"seo":{"title":"Remove a document from a transaction","description":"Removes an attachment from an EXPENSE or TOPUP transaction"}},"httpPath":"/transactions/{id}/remove-document"},{"label":"Upload a supporting document for a transaction","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/transactions/transactionscontroller_uploadanysupportingdocument","routeSlug":"/v2/openapi/transactions/transactionscontroller_uploadanysupportingdocument","metadata":{"seo":{"title":"Upload a supporting document for a transaction","description":"Uploads a supporting document (PDF, XLS, XLSX, DOCX, CSV, PNG, JPEG) to S3 for a specific transaction. Maximum file size is 10MB."}},"httpPath":"/transactions/supporting-document"}]},{"type":"group","label":"accounts","link":"/v2/openapi/accounts","routeSlug":"/v2/openapi/accounts","items":[{"label":"List user accounts","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_listuseraccounts","routeSlug":"/v2/openapi/accounts/accountscontroller_listuseraccounts","metadata":{"seo":{"title":"List user accounts","description":"List user accounts"}},"httpPath":"/accounts"},{"label":"Create a new account","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_createaccount","routeSlug":"/v2/openapi/accounts/accountscontroller_createaccount","metadata":{"seo":{"title":"Create a new account","description":"Create a new account"}},"httpPath":"/accounts"},{"label":"Get business wallet references/currencies","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_getbusinesscurrencies","routeSlug":"/v2/openapi/accounts/accountscontroller_getbusinesscurrencies","metadata":{"seo":{"title":"Get business wallet references/currencies","description":"Get business wallet references/currencies"}},"httpPath":"/accounts/business-currencies"},{"label":"Provision a new business currency","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_createnewcurrency","routeSlug":"/v2/openapi/accounts/accountscontroller_createnewcurrency","metadata":{"seo":{"title":"Provision a new business currency","description":"Creates a new currency record for the business on the upstream service. The currency is required before any wallet can be created in that currency."}},"httpPath":"/accounts/create-new-currency"},{"label":"Create a new account (wallet) for the business","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_addnewaccount","routeSlug":"/v2/openapi/accounts/accountscontroller_addnewaccount","metadata":{"seo":{"title":"Create a new account (wallet) for the business","description":"Creates a wallet for the business in the requested currency. If the currency does not yet exist for the business it is provisioned first. Wallets are unique per (currency, walletType)."}},"httpPath":"/accounts/add-new-account"},{"label":"Get cashflow report for accounts","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_getcashflowreport","routeSlug":"/v2/openapi/accounts/accountscontroller_getcashflowreport","metadata":{"seo":{"title":"Get cashflow report for accounts","description":"Get cashflow report for accounts"}},"httpPath":"/accounts/cashflow-report"},{"label":"Get account by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_getaccount","routeSlug":"/v2/openapi/accounts/accountscontroller_getaccount","metadata":{"seo":{"title":"Get account by ID","description":"Get account by ID"}},"httpPath":"/accounts/{id}"},{"label":"Update account details","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_updateaccount","routeSlug":"/v2/openapi/accounts/accountscontroller_updateaccount","metadata":{"seo":{"title":"Update account details","description":"Update account details"}},"httpPath":"/accounts/{id}"},{"label":"Get account balance","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_getaccountbalance","routeSlug":"/v2/openapi/accounts/accountscontroller_getaccountbalance","metadata":{"seo":{"title":"Get account balance","description":"Get account balance"}},"httpPath":"/accounts/{id}/balance"},{"label":"Get account transactions","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_getaccounttransactions","routeSlug":"/v2/openapi/accounts/accountscontroller_getaccounttransactions","metadata":{"seo":{"title":"Get account transactions","description":"Get account transactions"}},"httpPath":"/accounts/{id}/transactions"},{"label":"Suspend account","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_suspendaccount","routeSlug":"/v2/openapi/accounts/accountscontroller_suspendaccount","metadata":{"seo":{"title":"Suspend account","description":"Suspend account"}},"httpPath":"/accounts/{id}/suspend"},{"label":"Activate account","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/accounts/accountscontroller_activateaccount","routeSlug":"/v2/openapi/accounts/accountscontroller_activateaccount","metadata":{"seo":{"title":"Activate account","description":"Activate account"}},"httpPath":"/accounts/{id}/activate"}]},{"type":"group","label":"categories","link":"/v2/openapi/categories","routeSlug":"/v2/openapi/categories","items":[{"label":"List categories","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_listcategories","routeSlug":"/v2/openapi/categories/categoriescontroller_listcategories","metadata":{"seo":{"title":"List categories","description":"List categories"}},"httpPath":"/categories"},{"label":"Create a new category","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_createcategory","routeSlug":"/v2/openapi/categories/categoriescontroller_createcategory","metadata":{"seo":{"title":"Create a new category","description":"Create a new category"}},"httpPath":"/categories"},{"label":"Get category by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_getcategory","routeSlug":"/v2/openapi/categories/categoriescontroller_getcategory","metadata":{"seo":{"title":"Get category by ID","description":"Get category by ID"}},"httpPath":"/categories/{id}"},{"label":"Update a category","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_updatecategory","routeSlug":"/v2/openapi/categories/categoriescontroller_updatecategory","metadata":{"seo":{"title":"Update a category","description":"Update a category"}},"httpPath":"/categories/{id}"},{"label":"Delete category","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_deletecategory","routeSlug":"/v2/openapi/categories/categoriescontroller_deletecategory","metadata":{"seo":{"title":"Delete category","description":"Delete category"}},"httpPath":"/categories/{id}"},{"label":"Bulk create categories and subcategories","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_bulkcreatecategories","routeSlug":"/v2/openapi/categories/categoriescontroller_bulkcreatecategories","metadata":{"seo":{"title":"Bulk create categories and subcategories","description":"Creates multiple categories and subcategories in a single request. Automatically groups subcategories under their parent categories."}},"httpPath":"/categories/bulk"},{"label":"List subcategories for a category","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_listsubcategories","routeSlug":"/v2/openapi/categories/categoriescontroller_listsubcategories","metadata":{"seo":{"title":"List subcategories for a category","description":"List subcategories for a category"}},"httpPath":"/categories/{categoryId}/subcategories"},{"label":"Create a new subcategory","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_createsubcategory","routeSlug":"/v2/openapi/categories/categoriescontroller_createsubcategory","metadata":{"seo":{"title":"Create a new subcategory","description":"Create a new subcategory"}},"httpPath":"/categories/{categoryId}/subcategories"},{"label":"Get subcategory by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_getsubcategory","routeSlug":"/v2/openapi/categories/categoriescontroller_getsubcategory","metadata":{"seo":{"title":"Get subcategory by ID","description":"Get subcategory by ID"}},"httpPath":"/categories/{categoryId}/subcategories/{subcategoryId}"},{"label":"Update a subcategory","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_updatesubcategory","routeSlug":"/v2/openapi/categories/categoriescontroller_updatesubcategory","metadata":{"seo":{"title":"Update a subcategory","description":"Update a subcategory"}},"httpPath":"/categories/{categoryId}/subcategories/{subcategoryId}"},{"label":"Delete subcategory","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/categories/categoriescontroller_deletesubcategory","routeSlug":"/v2/openapi/categories/categoriescontroller_deletesubcategory","metadata":{"seo":{"title":"Delete subcategory","description":"Delete subcategory"}},"httpPath":"/categories/{categoryId}/subcategories/{subcategoryId}"}]},{"type":"group","label":"taxes","link":"/v2/openapi/taxes","routeSlug":"/v2/openapi/taxes","items":[{"label":"List all withholding tax settings","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/taxes/taxescontroller_listtaxes","routeSlug":"/v2/openapi/taxes/taxescontroller_listtaxes","metadata":{"seo":{"title":"List all withholding tax settings","description":"List all withholding tax settings"}},"httpPath":"/taxes"},{"label":"Create a new withholding tax setting","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/taxes/taxescontroller_createtax","routeSlug":"/v2/openapi/taxes/taxescontroller_createtax","metadata":{"seo":{"title":"Create a new withholding tax setting","description":"Create a new withholding tax setting"}},"httpPath":"/taxes/create"},{"label":"Edit a withholding tax setting","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/taxes/taxescontroller_updatetax","routeSlug":"/v2/openapi/taxes/taxescontroller_updatetax","metadata":{"seo":{"title":"Edit a withholding tax setting","description":"Edit a withholding tax setting"}},"httpPath":"/taxes/{taxId}/edit"},{"label":"Archive/delete a withholding tax setting","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/taxes/taxescontroller_archivetax","routeSlug":"/v2/openapi/taxes/taxescontroller_archivetax","metadata":{"seo":{"title":"Archive/delete a withholding tax setting","description":"Archive/delete a withholding tax setting"}},"httpPath":"/taxes/{taxId}/archive"},{"label":"Fetch all withholding tax transactions","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/taxes/taxescontroller_gettaxtransactions","routeSlug":"/v2/openapi/taxes/taxescontroller_gettaxtransactions","metadata":{"seo":{"title":"Fetch all withholding tax transactions","description":"Fetch all withholding tax transactions"}},"httpPath":"/taxes/transactions"}]},{"type":"separator","label":"Relationships"},{"type":"group","label":"vendors","link":"/v2/openapi/vendors","routeSlug":"/v2/openapi/vendors","items":[{"label":"List vendors","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/vendors/vendorscontroller_listvendors","routeSlug":"/v2/openapi/vendors/vendorscontroller_listvendors","metadata":{"seo":{"title":"List vendors","description":"List vendors"}},"httpPath":"/vendors"},{"label":"Create a new vendor","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/vendors/vendorscontroller_createvendor","routeSlug":"/v2/openapi/vendors/vendorscontroller_createvendor","metadata":{"seo":{"title":"Create a new vendor","description":"Create a new vendor"}},"httpPath":"/vendors"},{"label":"Get recent vendors by channel","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/vendors/vendorscontroller_getrecentvendors","routeSlug":"/v2/openapi/vendors/vendorscontroller_getrecentvendors","metadata":{"seo":{"title":"Get recent vendors by channel","description":"Returns a merged list of recently paid vendors from suppliers and expenses. Vendors from suppliers have an _id, while vendors derived from expenses lack an _id to indicate they can be created as new vendors."}},"httpPath":"/vendors/recent/{channel}"},{"label":"Get vendor by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/vendors/vendorscontroller_getvendor","routeSlug":"/v2/openapi/vendors/vendorscontroller_getvendor","metadata":{"seo":{"title":"Get vendor by ID","description":"Get vendor by ID"}},"httpPath":"/vendors/{id}"},{"label":"Update a vendor","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/vendors/vendorscontroller_updatevendor","routeSlug":"/v2/openapi/vendors/vendorscontroller_updatevendor","metadata":{"seo":{"title":"Update a vendor","description":"Update a vendor"}},"httpPath":"/vendors/{id}"},{"label":"Delete vendor","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/vendors/vendorscontroller_deletevendor","routeSlug":"/v2/openapi/vendors/vendorscontroller_deletevendor","metadata":{"seo":{"title":"Delete vendor","description":"Delete vendor"}},"httpPath":"/vendors/{id}"},{"label":"Update vendor payment instruction","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/vendors/vendorscontroller_updatepaymentinstruction","routeSlug":"/v2/openapi/vendors/vendorscontroller_updatepaymentinstruction","metadata":{"seo":{"title":"Update vendor payment instruction","description":"Update vendor payment instruction"}},"httpPath":"/vendors/{id}/payment-instruction"},{"label":"Add vendor payment instruction","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/vendors/vendorscontroller_addpaymentinstruction","routeSlug":"/v2/openapi/vendors/vendorscontroller_addpaymentinstruction","metadata":{"seo":{"title":"Add vendor payment instruction","description":"Add vendor payment instruction"}},"httpPath":"/vendors/{id}/payment-instruction/add"}]},{"type":"group","label":"customers","link":"/v2/openapi/customers","routeSlug":"/v2/openapi/customers","items":[{"label":"List business customers","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/customers/customerscontroller_listcustomers","routeSlug":"/v2/openapi/customers/customerscontroller_listcustomers","metadata":{"seo":{"title":"List business customers","description":"Returns customers associated with the business. By default returns only ACTIVE customers; pass ?status=DELETED to list soft-deleted customers or ?status=ALL to list both populations."}},"httpPath":"/customers"},{"label":"Create a customer","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/customers/customerscontroller_createcustomer","routeSlug":"/v2/openapi/customers/customerscontroller_createcustomer","metadata":{"seo":{"title":"Create a customer","description":"Creates a new customer."}},"httpPath":"/customers"},{"label":"Get a customer by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/customers/customerscontroller_getcustomer","routeSlug":"/v2/openapi/customers/customerscontroller_getcustomer","metadata":{"seo":{"title":"Get a customer by ID","description":"Fetches a single customer document by its MongoDB ObjectId."}},"httpPath":"/customers/{id}"},{"label":"Update a customer by ID","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/customers/customerscontroller_updatecustomer","routeSlug":"/v2/openapi/customers/customerscontroller_updatecustomer","metadata":{"seo":{"title":"Update a customer by ID","description":"Updates an active regular customer. Walk-In customers are immutable and cannot be edited."}},"httpPath":"/customers/{id}"},{"label":"Soft-delete a customer by ID","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/customers/customerscontroller_deletecustomer","routeSlug":"/v2/openapi/customers/customerscontroller_deletecustomer","metadata":{"seo":{"title":"Soft-delete a customer by ID","description":"Marks an active customer as deleted. The record is retained but excluded from all active customer queries."}},"httpPath":"/customers/{id}"},{"label":"Reactivate a soft-deleted customer by ID","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/customers/customerscontroller_reactivatecustomer","routeSlug":"/v2/openapi/customers/customerscontroller_reactivatecustomer","metadata":{"seo":{"title":"Reactivate a soft-deleted customer by ID","description":"Flips a soft-deleted customer back to ACTIVE. Idempotent: calling on an already-active customer is a no-op."}},"httpPath":"/customers/{id}/reactivate"},{"label":"Search active customers","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/customers/customerscontroller_searchcustomers","routeSlug":"/v2/openapi/customers/customerscontroller_searchcustomers","metadata":{"seo":{"title":"Search active customers","description":"Full-text search across customer name, phone, and email. Returns up to 10 active matches."}},"httpPath":"/customers/search"}]},{"type":"group","label":"employees","link":"/v2/openapi/employees","routeSlug":"/v2/openapi/employees","items":[{"label":"List employees","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_listemployees","routeSlug":"/v2/openapi/employees/employeescontroller_listemployees","metadata":{"seo":{"title":"List employees","description":"List employees"}},"httpPath":"/employees"},{"label":"Create new employee","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_createemployee","routeSlug":"/v2/openapi/employees/employeescontroller_createemployee","metadata":{"seo":{"title":"Create new employee","description":"Create new employee"}},"httpPath":"/employees"},{"label":"Get employee wallet balances","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_getemployeebalances","routeSlug":"/v2/openapi/employees/employeescontroller_getemployeebalances","metadata":{"seo":{"title":"Get employee wallet balances","description":"Get employee wallet balances"}},"httpPath":"/employees/balances"},{"label":"View employee transaction statement","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_viewstatement","routeSlug":"/v2/openapi/employees/employeescontroller_viewstatement","metadata":{"seo":{"title":"View employee transaction statement","description":"View employee transaction statement"}},"httpPath":"/employees/view-statement"},{"label":"Get employee by employee_id","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_getemployee","routeSlug":"/v2/openapi/employees/employeescontroller_getemployee","metadata":{"seo":{"title":"Get employee by employee_id","description":"Get employee by employee_id"}},"httpPath":"/employees/{employee_id}"},{"label":"Delete employee","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_deleteemployee","routeSlug":"/v2/openapi/employees/employeescontroller_deleteemployee","metadata":{"seo":{"title":"Delete employee","description":"Delete employee"}},"httpPath":"/employees/{employee_id}"},{"label":"Remove employee from team reviewers","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_removeemployeeteamreviewer","routeSlug":"/v2/openapi/employees/employeescontroller_removeemployeeteamreviewer","metadata":{"seo":{"title":"Remove employee from team reviewers","description":"Remove employee from team reviewers"}},"httpPath":"/employees/remove-employee-team-reviewer"},{"label":"Move employee to a different team","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_moveemployeetoteam","routeSlug":"/v2/openapi/employees/employeescontroller_moveemployeetoteam","metadata":{"seo":{"title":"Move employee to a different team","description":"Move employee to a different team"}},"httpPath":"/employees/move-to-team"},{"label":"Add employee as team reviewer","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_makeemployeeteamreviewer","routeSlug":"/v2/openapi/employees/employeescontroller_makeemployeeteamreviewer","metadata":{"seo":{"title":"Add employee as team reviewer","description":"Add employee as team reviewer"}},"httpPath":"/employees/make-employee-team-reviewer"},{"label":"Update employee profile","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_updateemployeeprofile","routeSlug":"/v2/openapi/employees/employeescontroller_updateemployeeprofile","metadata":{"seo":{"title":"Update employee profile","description":"Update employee profile"}},"httpPath":"/employees/update-profile"},{"label":"Activate an employee","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_activateemployee","routeSlug":"/v2/openapi/employees/employeescontroller_activateemployee","metadata":{"seo":{"title":"Activate an employee","description":"Activate an employee"}},"httpPath":"/employees/activate-employee"},{"label":"Suspend an employee","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_suspendemployee","routeSlug":"/v2/openapi/employees/employeescontroller_suspendemployee","metadata":{"seo":{"title":"Suspend an employee","description":"Suspend an employee"}},"httpPath":"/employees/{_id}/suspend-employee"},{"label":"Transfer employee ownership to a new person","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_transferownership","routeSlug":"/v2/openapi/employees/employeescontroller_transferownership","metadata":{"seo":{"title":"Transfer employee ownership to a new person","description":"Suspends (or deletes) the existing employee account and provisions a new employee in its place, inheriting the same team and supervisor. Requires the caller to have PEOPLE_EDIT permission."}},"httpPath":"/employees/transfer-ownership"},{"label":"Allocate funds to employee wallet","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_allocatefunds","routeSlug":"/v2/openapi/employees/employeescontroller_allocatefunds","metadata":{"seo":{"title":"Allocate funds to employee wallet","description":"Allocate funds to employee wallet"}},"httpPath":"/employees/allocate-funds"},{"label":"Remove funds from employee wallet","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/employees/employeescontroller_removefunds","routeSlug":"/v2/openapi/employees/employeescontroller_removefunds","metadata":{"seo":{"title":"Remove funds from employee wallet","description":"Remove funds from employee wallet"}},"httpPath":"/employees/remove-funds"}]},{"type":"group","label":"teams","link":"/v2/openapi/teams","routeSlug":"/v2/openapi/teams","items":[{"label":"List teams","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/teams/teamscontroller_listteams","routeSlug":"/v2/openapi/teams/teamscontroller_listteams","metadata":{"seo":{"title":"List teams","description":"List teams"}},"httpPath":"/teams"},{"label":"Create new team","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/teams/teamscontroller_createteam","routeSlug":"/v2/openapi/teams/teamscontroller_createteam","metadata":{"seo":{"title":"Create new team","description":"Create new team"}},"httpPath":"/teams"},{"label":"Get team by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/teams/teamscontroller_getteam","routeSlug":"/v2/openapi/teams/teamscontroller_getteam","metadata":{"seo":{"title":"Get team by ID","description":"Get team by ID"}},"httpPath":"/teams/{id}"},{"label":"Update team","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/teams/teamscontroller_updateteam","routeSlug":"/v2/openapi/teams/teamscontroller_updateteam","metadata":{"seo":{"title":"Update team","description":"Update team"}},"httpPath":"/teams/{id}"},{"label":"Delete team","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/teams/teamscontroller_deleteteam","routeSlug":"/v2/openapi/teams/teamscontroller_deleteteam","metadata":{"seo":{"title":"Delete team","description":"Delete team"}},"httpPath":"/teams/{id}"}]},{"type":"separator","label":"Treasury"},{"type":"group","label":"Investments · Portfolio & accounts","link":"/v2/openapi/investments","routeSlug":"/v2/openapi/investments","items":[{"label":"List fund catalogue","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments/investmentscontroller_listfunds","routeSlug":"/v2/openapi/investments/investmentscontroller_listfunds","metadata":{"seo":{"title":"List fund catalogue","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/funds"},{"label":"List business's investment accounts","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments/investmentscontroller_listaccounts","routeSlug":"/v2/openapi/investments/investmentscontroller_listaccounts","metadata":{"seo":{"title":"List business's investment accounts","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts"},{"label":"Single fund account detail (header + KPIs + cash allocation)","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments/investmentscontroller_getaccount","routeSlug":"/v2/openapi/investments/investmentscontroller_getaccount","metadata":{"seo":{"title":"Single fund account detail (header + KPIs + cash allocation)","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts/{fundAccountId}"},{"label":"Interest credited series for the account","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments/investmentscontroller_getinterestseries","routeSlug":"/v2/openapi/investments/investmentscontroller_getinterestseries","metadata":{"seo":{"title":"Interest credited series for the account","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts/{fundAccountId}/interest-series"},{"label":"Projected interest at EOM / 3M / 6M / 12M horizons","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments/investmentscontroller_getprojections","routeSlug":"/v2/openapi/investments/investmentscontroller_getprojections","metadata":{"seo":{"title":"Projected interest at EOM / 3M / 6M / 12M horizons","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts/{fundAccountId}/projections"},{"label":"Transaction history with type filter + pagination","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments/investmentscontroller_gettransactions","routeSlug":"/v2/openapi/investments/investmentscontroller_gettransactions","metadata":{"seo":{"title":"Transaction history with type filter + pagination","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts/{fundAccountId}/transactions"},{"label":"Aggregate portfolio across all fund accounts","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments/investmentscontroller_getportfolio","routeSlug":"/v2/openapi/investments/investmentscontroller_getportfolio","metadata":{"seo":{"title":"Aggregate portfolio across all fund accounts","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/portfolio"},{"label":"Portfolio performance grouped by currency","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments/investmentscontroller_getportfolioperformance","routeSlug":"/v2/openapi/investments/investmentscontroller_getportfolioperformance","metadata":{"seo":{"title":"Portfolio performance grouped by currency","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/portfolio/performance-by-currency"},{"label":"Unified activity feed across fund accounts","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments/investmentscontroller_getportfolioactivity","routeSlug":"/v2/openapi/investments/investmentscontroller_getportfolioactivity","metadata":{"seo":{"title":"Unified activity feed across fund accounts","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/portfolio/activity"}]},{"type":"group","label":"Investments · Fund movements","link":"/v2/openapi/investments-movements","routeSlug":"/v2/openapi/investments-movements","items":[{"label":"Opt in to a fund","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments-movements/investmentscontroller_optin","routeSlug":"/v2/openapi/investments-movements/investmentscontroller_optin","metadata":{"seo":{"title":"Opt in to a fund","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/opt-in"},{"label":"Fetch pending MMF opt-in approval request","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments-movements/investmentscontroller_getoptinapproval","routeSlug":"/v2/openapi/investments-movements/investmentscontroller_getoptinapproval","metadata":{"seo":{"title":"Fetch pending MMF opt-in approval request","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/opt-in/{ref}"},{"label":"Approve pending MMF opt-in request","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments-movements/investmentscontroller_approveoptin","routeSlug":"/v2/openapi/investments-movements/investmentscontroller_approveoptin","metadata":{"seo":{"title":"Approve pending MMF opt-in request","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/opt-in/{ref}/approve"},{"label":"Top up an existing fund account","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments-movements/investmentscontroller_invest","routeSlug":"/v2/openapi/investments-movements/investmentscontroller_invest","metadata":{"seo":{"title":"Top up an existing fund account","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts/{fundAccountId}/invest"},{"label":"Top up an MMF investment wallet from a business wallet","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments-movements/investmentscontroller_topup","routeSlug":"/v2/openapi/investments-movements/investmentscontroller_topup","metadata":{"seo":{"title":"Top up an MMF investment wallet from a business wallet","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts/{fundAccountId}/top-up"},{"label":"Withdraw from a fund account","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments-movements/investmentscontroller_withdraw","routeSlug":"/v2/openapi/investments-movements/investmentscontroller_withdraw","metadata":{"seo":{"title":"Withdraw from a fund account","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts/{fundAccountId}/withdraw"}]},{"type":"group","label":"Investments · Access & permissions","link":"/v2/openapi/investments-access","routeSlug":"/v2/openapi/investments-access","items":[{"label":"Treasury operators allowed to transfer funds from this account","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments-access/investmentscontroller_getpermissions","routeSlug":"/v2/openapi/investments-access/investmentscontroller_getpermissions","metadata":{"seo":{"title":"Treasury operators allowed to transfer funds from this account","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts/{fundAccountId}/permissions"},{"label":"Replace the treasury operators for this account","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments-access/investmentscontroller_updatepermissions","routeSlug":"/v2/openapi/investments-access/investmentscontroller_updatepermissions","metadata":{"seo":{"title":"Replace the treasury operators for this account","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts/{fundAccountId}/permissions"},{"label":"Current employee's effective MMF access","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/investments-access/investmentscontroller_getcurrentaccess","routeSlug":"/v2/openapi/investments-access/investmentscontroller_getcurrentaccess","metadata":{"seo":{"title":"Current employee's effective MMF access","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/investments/accounts/{fundAccountId}/access"}]},{"type":"separator","label":"Governance"},{"type":"group","label":"business-policies","link":"/v2/openapi/business-policies","routeSlug":"/v2/openapi/business-policies","items":[{"label":"List all business policy groups","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_listpolicygroups","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_listpolicygroups","metadata":{"seo":{"title":"List all business policy groups","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies"},{"label":"Fetch all policy groups with their policies","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_getpolicygrouppolicies","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_getpolicygrouppolicies","metadata":{"seo":{"title":"Fetch all policy groups with their policies","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/policy-group-policies"},{"label":"Get business policies by policy group ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_getpoliciesbygroupid","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_getpoliciesbygroupid","metadata":{"seo":{"title":"Get business policies by policy group ID","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/{policyId}/policies"},{"label":"Get a single business policy by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_getpolicybyid","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_getpolicybyid","metadata":{"seo":{"title":"Get a single business policy by ID","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/single/{businessPolicyId}"},{"label":"Get full business policy summary","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_getbusinesspolicysummary","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_getbusinesspolicysummary","metadata":{"seo":{"title":"Get full business policy summary","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/summary/{businessId}"},{"label":"Get category or subcategory policies","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_getcategorypolicies","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_getcategorypolicies","metadata":{"seo":{"title":"Get category or subcategory policies","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/category-policies"},{"label":"Create or update a category / subcategory policy","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_upsertcategorypolicy","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_upsertcategorypolicy","metadata":{"seo":{"title":"Create or update a category / subcategory policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/category-policies"},{"label":"Update a category or subcategory policy","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_updatecategorypolicy","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_updatecategorypolicy","metadata":{"seo":{"title":"Update a category or subcategory policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/category-policies/{businessPolicyId}"},{"label":"Delete a category or subcategory policy","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_deletecategorypolicy","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_deletecategorypolicy","metadata":{"seo":{"title":"Delete a category or subcategory policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/category-policies/{businessPolicyId}"},{"label":"List policy approval workflows for the selected currency","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_getpolicyworkflows","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_getpolicyworkflows","metadata":{"seo":{"title":"List policy approval workflows for the selected currency","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/workflows"},{"label":"Create a policy approval workflow for a currency","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_createpolicyworkflow","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_createpolicyworkflow","metadata":{"seo":{"title":"Create a policy approval workflow for a currency","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/workflows"},{"label":"Create a new business policy","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_createbusinesspolicy","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_createbusinesspolicy","metadata":{"seo":{"title":"Create a new business policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/create/{policyId}"},{"label":"Update a business policy","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_updatebusinesspolicy","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_updatebusinesspolicy","metadata":{"seo":{"title":"Update a business policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/{businessPolicyId}"},{"label":"Delete a business policy","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/business-policies/businesspoliciescontroller_deletebusinesspolicy","routeSlug":"/v2/openapi/business-policies/businesspoliciescontroller_deletebusinesspolicy","metadata":{"seo":{"title":"Delete a business policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/business-policies/{businessPolicyId}"}]},{"type":"group","label":"Wallet policies · Policies","link":"/v2/openapi/wallet-policies","routeSlug":"/v2/openapi/wallet-policies","items":[{"label":"Get policies by wallet ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_getpoliciesbywallet","routeSlug":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_getpoliciesbywallet","metadata":{"seo":{"title":"Get policies by wallet ID","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/wallet/{walletId}"},{"label":"Get policies by employee ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_getpoliciesbyemployee","routeSlug":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_getpoliciesbyemployee","metadata":{"seo":{"title":"Get policies by employee ID","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/employee/{employeeId}"},{"label":"Get single policy by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_getpolicy","routeSlug":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_getpolicy","metadata":{"seo":{"title":"Get single policy by ID","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/{policyId}"},{"label":"Modify policy","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_modifypolicy","routeSlug":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_modifypolicy","metadata":{"seo":{"title":"Modify policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/{policyId}"},{"label":"Revoke policy","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_revokepolicy","routeSlug":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_revokepolicy","metadata":{"seo":{"title":"Revoke policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/{policyId}"},{"label":"Suspend policy","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_suspendpolicy","routeSlug":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_suspendpolicy","metadata":{"seo":{"title":"Suspend policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/{policyId}/suspend"},{"label":"Reactivate policy","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_reactivatepolicy","routeSlug":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_reactivatepolicy","metadata":{"seo":{"title":"Reactivate policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/{policyId}/reactivate"},{"label":"Grant access (create policy)","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_grantaccess","routeSlug":"/v2/openapi/wallet-policies/walletaccesspolicycontroller_grantaccess","metadata":{"seo":{"title":"Grant access (create policy)","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies"}]},{"type":"group","label":"Wallet policies · Permissions","link":"/v2/openapi/wallet-policies-permissions","routeSlug":"/v2/openapi/wallet-policies-permissions","items":[{"label":"List all available permissions","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies-permissions/walletaccesspolicycontroller_listpermissions","routeSlug":"/v2/openapi/wallet-policies-permissions/walletaccesspolicycontroller_listpermissions","metadata":{"seo":{"title":"List all available permissions","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/permissions"},{"label":"Sync permission seed data","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies-permissions/walletaccesspolicycontroller_syncpermissions","routeSlug":"/v2/openapi/wallet-policies-permissions/walletaccesspolicycontroller_syncpermissions","metadata":{"seo":{"title":"Sync permission seed data","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/permissions/sync"},{"label":"Get computed permissions for employee on wallet","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies-permissions/walletaccesspolicycontroller_getcomputedpermissions","routeSlug":"/v2/openapi/wallet-policies-permissions/walletaccesspolicycontroller_getcomputedpermissions","metadata":{"seo":{"title":"Get computed permissions for employee on wallet","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/permissions/{employeeId}/{walletId}"}]},{"type":"group","label":"Wallet policies · Access checks","link":"/v2/openapi/wallet-policies-checks","routeSlug":"/v2/openapi/wallet-policies-checks","items":[{"label":"Check if employee has permission on wallet","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies-checks/walletaccesspolicycontroller_checkaccess","routeSlug":"/v2/openapi/wallet-policies-checks/walletaccesspolicycontroller_checkaccess","metadata":{"seo":{"title":"Check if employee has permission on wallet","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/check-access"},{"label":"Check transaction limits","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies-checks/walletaccesspolicycontroller_checklimits","routeSlug":"/v2/openapi/wallet-policies-checks/walletaccesspolicycontroller_checklimits","metadata":{"seo":{"title":"Check transaction limits","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/check-limits"}]},{"type":"group","label":"Wallet policies · Audit","link":"/v2/openapi/wallet-policies-audit","routeSlug":"/v2/openapi/wallet-policies-audit","items":[{"label":"Query audit logs with filters","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies-audit/walletaccesspolicycontroller_queryauditlogs","routeSlug":"/v2/openapi/wallet-policies-audit/walletaccesspolicycontroller_queryauditlogs","metadata":{"seo":{"title":"Query audit logs with filters","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/audit/query"},{"label":"Get audit log for wallet","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies-audit/walletaccesspolicycontroller_getwalletauditlog","routeSlug":"/v2/openapi/wallet-policies-audit/walletaccesspolicycontroller_getwalletauditlog","metadata":{"seo":{"title":"Get audit log for wallet","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/wallet/{walletId}/audit"},{"label":"Get audit log for specific policy","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/wallet-policies-audit/walletaccesspolicycontroller_getpolicyauditlog","routeSlug":"/v2/openapi/wallet-policies-audit/walletaccesspolicycontroller_getpolicyauditlog","metadata":{"seo":{"title":"Get audit log for specific policy","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/wallet-policies/{policyId}/audit"}]},{"type":"group","label":"roles","link":"/v2/openapi/roles","routeSlug":"/v2/openapi/roles","items":[{"label":"list all permissions","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/roles/permissionscontroller_listallpermissions","routeSlug":"/v2/openapi/roles/permissionscontroller_listallpermissions","metadata":{"seo":{"title":"list all permissions","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/permissions"},{"label":"Update users role","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/roles/permissionscontroller_updateusersrole","routeSlug":"/v2/openapi/roles/permissionscontroller_updateusersrole","metadata":{"seo":{"title":"Update users role","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/permissions/employees/{employee_id}/role"},{"label":"Update employee permissions","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/roles/permissionscontroller_updateemployeepermissions","routeSlug":"/v2/openapi/roles/permissionscontroller_updateemployeepermissions","metadata":{"seo":{"title":"Update employee permissions","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/permissions/employees/{employee_id}"},{"label":"Fetch employee permissions","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/roles/permissionscontroller_getemployeepermissions","routeSlug":"/v2/openapi/roles/permissionscontroller_getemployeepermissions","metadata":{"seo":{"title":"Fetch employee permissions","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/permissions/employees/{employee_id}"},{"label":"Update role permissions","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/roles/permissionscontroller_updaterolepermissions","routeSlug":"/v2/openapi/roles/permissionscontroller_updaterolepermissions","metadata":{"seo":{"title":"Update role permissions","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/permissions/update/{role_id}"},{"label":"get set mandates","deprecated":false,"httpVerb":"put","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/roles/permissionscontroller_listmandates","routeSlug":"/v2/openapi/roles/permissionscontroller_listmandates","metadata":{"seo":{"title":"get set mandates","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/permissions/mandates"},{"label":"Update mandate minimum approvers","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/roles/permissionscontroller_updatemandate","routeSlug":"/v2/openapi/roles/permissionscontroller_updatemandate","metadata":{"seo":{"title":"Update mandate minimum approvers","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/permissions/mandates/{mandate_id}"},{"label":"update user mandate","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/roles/permissionscontroller_updatesingleapprover","routeSlug":"/v2/openapi/roles/permissionscontroller_updatesingleapprover","metadata":{"seo":{"title":"update user mandate","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/permissions/mandates/{mandate_id}/approvers/{approver_id}"},{"label":"Remove approvers from mandate","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/roles/permissionscontroller_removeapproverfrommandate","routeSlug":"/v2/openapi/roles/permissionscontroller_removeapproverfrommandate","metadata":{"seo":{"title":"Remove approvers from mandate","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/permissions/mandates/{mandate_id}/approvers"},{"label":"Add approvers to mandate","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/roles/permissionscontroller_addapproverstomandate","routeSlug":"/v2/openapi/roles/permissionscontroller_addapproverstomandate","metadata":{"seo":{"title":"Add approvers to mandate","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/permissions/mandates/{mandate_id}/approvers"}]},{"type":"group","label":"audit-trail","link":"/v2/openapi/audit-trail","routeSlug":"/v2/openapi/audit-trail","items":[{"label":"List audit trail events","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/audit-trail/audittrailcontroller_listauditevents","routeSlug":"/v2/openapi/audit-trail/audittrailcontroller_listauditevents","metadata":{"seo":{"title":"List audit trail events","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/audit-trail"},{"label":"Get intelligent audit trail digest with grouped insights","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/v2/openapi/audit-trail/audittrailcontroller_getauditdigest","routeSlug":"/v2/openapi/audit-trail/audittrailcontroller_getauditdigest","metadata":{"seo":{"title":"Get intelligent audit trail digest with grouped insights","description":"🔒 Private label — contact sales. Requires a private-label entitlement on your API client."}},"httpPath":"/audit-trail/digest"}]}]},{"type":"group","label":"Platform","items":[{"type":"link","fsPath":"v2/migrating-from-v1.md","metadata":{"type":"markdown"},"label":"🧭 Migrating from v1","link":"/v2/migrating-from-v1","routeSlug":"/v2/migrating-from-v1"},{"type":"link","fsPath":"v2/versioning.md","metadata":{"type":"markdown"},"label":"🔄 Versioning","link":"/v2/versioning","routeSlug":"/v2/versioning"},{"type":"link","fsPath":"v2/errors.md","metadata":{"type":"markdown"},"label":"⚠️ Errors","link":"/v2/errors","routeSlug":"/v2/errors"},{"type":"link","fsPath":"v2/rate-limits.md","metadata":{"type":"markdown"},"label":"🚦 Rate limits","link":"/v2/rate-limits","routeSlug":"/v2/rate-limits"}]}]}