From 108a3b066c4d836fab8e59803762d7675a96b2d0 Mon Sep 17 00:00:00 2001 From: eho-send <235193333+eho-send@users.noreply.github.com> Date: Sat, 19 Sep 2026 08:34:33 +0000 Subject: [PATCH] chore(spec): refresh Brale OpenAPI contract --- apps/cli/CHANGELOG.md | 9 +++++++++ apps/cli/package.json | 2 +- packages/brale/openapi/brale.json | 2 +- packages/brale/src/spec.ts | 4 ++-- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/apps/cli/CHANGELOG.md b/apps/cli/CHANGELOG.md index 1ce214d..4f46c3e 100644 --- a/apps/cli/CHANGELOG.md +++ b/apps/cli/CHANGELOG.md @@ -1,5 +1,14 @@ # bralecli +## 0.3.0 + +### Minor Changes + +- Refresh the generated CLI for the Brale OpenAPI contract fetched on 2026-09-19 + (SHA-256: `fd1edeaad80666809e719034c20042c7ed26c3fb13e9c05828e27ed8367c0857`). +- Propose a conservative pre-1.0 minor release because upstream contract changes may be breaking. + Maintainers review the contract diff and may adjust this version and release note before merging. + ## 0.2.0 ### Added diff --git a/apps/cli/package.json b/apps/cli/package.json index fcc3635..d027549 100644 --- a/apps/cli/package.json +++ b/apps/cli/package.json @@ -1,6 +1,6 @@ { "name": "bralecli", - "version": "0.2.0", + "version": "0.3.0", "private": true, "bin": { "bralecli": "./src/bin.ts" diff --git a/packages/brale/openapi/brale.json b/packages/brale/openapi/brale.json index a6a0799..456fddd 100644 --- a/packages/brale/openapi/brale.json +++ b/packages/brale/openapi/brale.json @@ -1 +1 @@ -{"components":{"responses":{},"schemas":{"UpdateExternalAddressRequest":{"additionalProperties":false,"properties":{"additional_transfer_types":{"items":{"example":"solana","type":"string"},"type":"array"},"bank_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"description":"For bank (financial institution) addresses only. Supply before adding wire to additional_transfer_types.","nullable":true},"beneficiary_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"description":"For bank (financial institution) addresses only. Supply before adding wire to additional_transfer_types.","nullable":true},"name":{"example":"Company External EVM Address","nullable":true,"type":"string"},"status":{"enum":["active","archived"],"nullable":true,"type":"string"}},"title":"UpdateExternalAddressRequest","type":"object"},"EndUserTosAttestation":{"additionalProperties":false,"properties":{"accepted_at":{"$ref":"#/components/schemas/DateTime"},"ip":{"example":"203.0.113.42","type":"string"},"user_agent":{"example":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:138.0) Gecko/20100101 Firefox/138.0","type":"string"},"version":{"example":"2025-04-01","type":"string"}},"required":["accepted_at"],"title":"EndUserTosAttestation","type":"object"},"BrandData":{"additionalProperties":false,"nullable":true,"properties":{"account_id":{"type":"string"}},"required":["account_id"],"title":"BrandData","type":"object"},"DocumentKindEnum":{"enum":["articles_of_incorporation","certificate_of_good_standing","ein_letter","government_photo_id","other"],"title":"DocumentKindEnum","type":"string"},"CreateAutomation":{"additionalProperties":false,"properties":{"brand":{"$ref":"#/components/schemas/AutomationBrandData"},"destination":{"$ref":"#/components/schemas/AutomationDestination"},"name":{"type":"string"},"source":{"$ref":"#/components/schemas/AutomationSource"}},"required":["name","source","destination"],"title":"CreateAutomation","type":"object"},"AccountList":{"additionalProperties":false,"properties":{"accounts":{"items":{"$ref":"#/components/schemas/Account"},"type":"array"},"pagination":{"allOf":[{"$ref":"#/components/schemas/Pagination"}],"nullable":true}},"required":["accounts"],"title":"AccountList","type":"object"},"Transfer":{"additionalProperties":false,"discriminator":{"propertyName":"transferType"},"oneOf":[{"$ref":"#/components/schemas/BaseTransfer"},{"$ref":"#/components/schemas/AutomationsTransfer"},{"$ref":"#/components/schemas/TransferWithWireInstructions"}],"title":"Transfer","type":"object"},"WebhookReplayAccepted":{"additionalProperties":false,"properties":{"jobIds":{"description":"Oban job ids for scheduled replay deliveries (one per active subscription for the event type).","items":{"type":"string"},"type":"array"},"status":{"description":"Replay delivery jobs were accepted for processing.","enum":["queued"],"type":"string"}},"required":["status","jobIds"],"title":"WebhookReplayAccepted","type":"object"},"PagingParameters":{"description":"Paging query parameters","properties":{"after":{"type":"string"},"before":{"type":"string"},"size":{"format":"int32","maximum":1000,"minimum":1,"type":"integer"}},"title":"PagingParameters","type":"object"},"TokenizationTransferResponse":{"properties":{"amount":{"description":"Amount transferred","type":"string"},"created_at":{"format":"date-time","type":"string"},"destination":{"properties":{"address":{"description":"Destination blockchain address","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain name","type":"string"}},"type":"object"},"id":{"description":"Order ID","type":"string"},"source":{"properties":{"address":{"description":"Source blockchain address","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain name","type":"string"}},"type":"object"},"status":{"description":"Transaction status","type":"string"},"updated_at":{"format":"date-time","type":"string"}},"title":"TokenizationTransferResponse","type":"object"},"CreateInternalBlockchainAddressRequest":{"additionalProperties":false,"properties":{"name":{"example":"Company Internal EVM Address","nullable":true,"type":"string"},"transfer_types":{"description":"Transfer types for the custodial address. All must belong to the same environment (e.g. [\"ethereum\", \"polygon\"] for EVM). Must be non-empty.","items":{"example":"ethereum","type":"string"},"type":"array"}},"required":["name","transfer_types"],"title":"CreateInternalBlockchainAddressRequest","type":"object"},"ThirdPartyFinancialInstitutionPaymentData":{"additionalProperties":false,"properties":{"address_id":{"type":"string"},"payment_details":{"allOf":[{"$ref":"#/components/schemas/PaymentDetails"}],"nullable":true},"requested_transfer_type":{"nullable":true,"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"},"wire_memo":{"description":"OBI memo sent to the receiving bank. Applicable to wire transfers only.","nullable":true,"type":"string"}},"required":["value_type","transfer_type","financial_institution_id"],"title":"ThirdPartyFinancialInstitutionPaymentData","type":"object"},"CreateWebhookSubscription":{"additionalProperties":false,"properties":{"events":{"description":"Event types to subscribe to. Supports concrete types (e.g. `transfer.created`) and namespace wildcards (e.g. `transfer.*` for all transfer events). See the supported event types endpoint.","items":{"type":"string"},"minItems":1,"type":"array"},"url":{"description":"HTTPS URL to receive signed webhook POST requests","maxLength":2048,"type":"string"}},"required":["url","events"],"title":"CreateWebhookSubscription","type":"object"},"AddressV2":{"additionalProperties":false,"oneOf":[{"$ref":"#/components/schemas/BlockchainAddressV2"},{"$ref":"#/components/schemas/FinancialInstitutionV2"}],"title":"AddressV2","type":"object"},"TokenizationTransfersList":{"description":"List of tokenization transfer transactions with pagination metadata","properties":{"pagination":{"type":"object"},"transfers":{"items":{"$ref":"#/components/schemas/TokenizationTransferResponse"},"type":"array"}},"title":"TokenizationTransfersList","type":"object"},"AddressReference":{"additionalProperties":false,"properties":{"address":{"example":"0xb518d4d6221d9a41d23d71cbce8e106e7aab8f9b","type":"string"},"id":{"$ref":"#/components/schemas/ID"}},"required":["id","address"],"title":"AddressReference","type":"object"},"Individual":{"additionalProperties":false,"properties":{"address":{"$ref":"#/components/schemas/IndividualAddress"},"country":{"description":"ISO 3166-1 alpha-2 country code; stored separately for AiPrise routing","example":"US","type":"string"},"date_of_birth":{"description":"YYYY-MM-DD","example":"1990-01-31","type":"string"},"email":{"example":"jane@example.com","type":"string"},"first_name":{"example":"Jane","type":"string"},"identity":{"$ref":"#/components/schemas/IndividualIdentity"},"last_name":{"example":"Doe","type":"string"},"phone_number":{"example":"515-555-1212","type":"string"}},"required":["first_name","last_name","date_of_birth","email","phone_number","address","country","identity"],"title":"Individual","type":"object"},"CreateExternalBlockchainAddressRequest":{"additionalProperties":false,"properties":{"address":{"example":"0xb518d4d6221d9a41d23d71cbce8e106e7aab8f9b","type":"string"},"name":{"example":"Company External EVM Address","nullable":true,"type":"string"},"ownership":{"description":"Ownership type of the address","enum":["self-owned","customer-owned"],"type":"string"},"transfer_types":{"items":{"example":"solana","type":"string"},"type":"array"}},"required":["name","address","transfer_types"],"title":"CreateExternalBlockchainAddressRequest","type":"object"},"FinancialInstitutionListV2":{"additionalProperties":false,"properties":{"financial_institutions":{"items":{"$ref":"#/components/schemas/FinancialInstitutionV2"},"type":"array"}},"required":["financial_institutions"],"title":"FinancialInstitutionListV2","type":"object"},"IdentityDocumentTypeEnum":{"enum":["PASSPORT","DRIVER_LICENSE","NATIONAL_ID","PAN_CARD","ID_CARD","VOTER_ID_CARD","RESIDENT_CARD","GHANA_CARD","GHANA_SSNIT_CARD","KENYA_ALIEN_CARD","COLOMBIA_PPT"],"example":"DRIVER_LICENSE","title":"IdentityDocumentTypeEnum","type":"string"},"AutomationResponse":{"additionalProperties":false,"allOf":[{"properties":{"brand":{"$ref":"#/components/schemas/AutomationBrandData"},"created_at":{"$ref":"#/components/schemas/DateTime"},"destination":{"$ref":"#/components/schemas/AutomationDestination"},"id":{"$ref":"#/components/schemas/ID"},"name":{"type":"string"},"source":{"$ref":"#/components/schemas/AutomationSourceWithFundingInstructions"},"status":{"enum":["pending","active","disabled","archived"],"type":"string"},"updated_at":{"$ref":"#/components/schemas/DateTime"}},"required":["name","status","source","destination"],"type":"object"}],"title":"AutomationResponse","type":"object"},"AutomationSource":{"additionalProperties":false,"properties":{"transfer_type":{"type":"string"},"value_type":{"type":"string"}},"required":["value_type"],"title":"AutomationSource","type":"object"},"ControllingParty":{"additionalProperties":false,"properties":{"address":{"$ref":"#/components/schemas/ControllingPartyAddress"},"dob":{"example":"YYYY-MM-DD","type":"string"},"email":{"example":"a@b.com","type":"string"},"first_name":{"example":"John","type":"string"},"identity":{"allOf":[{"$ref":"#/components/schemas/IndividualIdentity"}],"description":"Typed identity document (number and type). Required for a party outside the US. Mutually exclusive with `ssn`.","nullable":true},"last_name":{"example":"Doe","type":"string"},"ownership_percentage":{"example":40,"nullable":true,"type":"number"},"phone_number":{"example":"515-555-1212","type":"string"},"ssn":{"description":"US Social Security Number. Required for a US party unless `identity` is supplied; not accepted for a party outside the US.","example":"123-45-6789","type":"string"}},"required":["first_name","last_name","dob","address","email","phone_number"],"title":"ControllingParty","type":"object"},"WebhookSubscription":{"additionalProperties":false,"properties":{"events":{"items":{"type":"string"},"type":"array"},"id":{"$ref":"#/components/schemas/ID"},"status":{"description":"Subscription lifecycle: active deliveries or archived (no longer used).","enum":["active","archived"],"type":"string"},"url":{"type":"string"}},"required":["id","events","url","status"],"title":"WebhookSubscription","type":"object"},"LinkTokenResponse":{"properties":{"callback_url":{"description":"The URL to POST the public token tox after Plaid Link completion to register the account","example":"http://localhost:4000/financial_institutions/register_account","type":"string"},"expiration":{"description":"ISO 8601 timestamp when the link token expires","example":"2024-01-01T12:00:00Z","type":"string"},"link_token":{"description":"The Plaid link token for bank authentication","example":"link-sandbox-123456789","type":"string"}},"required":["link_token","expiration","callback_url"],"title":"LinkTokenResponse","type":"object"},"BaseTransfer":{"additionalProperties":false,"properties":{"amount":{"$ref":"#/components/schemas/Amount"},"created_at":{"$ref":"#/components/schemas/DateTime"},"destination":{"$ref":"#/components/schemas/PaymentDataView"},"failure":{"allOf":[{"$ref":"#/components/schemas/Failure"}],"nullable":true},"funding_simulated":{"description":"When true, inbound ACH funding was simulated for testnet or sandbox rather than submitted to Dwolla","type":"boolean"},"id":{"$ref":"#/components/schemas/ID"},"note":{"type":"string"},"source":{"$ref":"#/components/schemas/PaymentDataView"},"status":{"enum":["pending","processing","complete","canceled","failed","compliance review"],"type":"string"},"updated_at":{"$ref":"#/components/schemas/DateTime"}},"title":"BaseTransfer","type":"object"},"DocumentSubmissionCreated":{"additionalProperties":false,"properties":{"doc_submission_id":{"$ref":"#/components/schemas/ID"}},"required":["doc_submission_id"],"title":"DocumentSubmissionCreated","type":"object"},"PaymentData":{"additionalProperties":false,"properties":{"ach_description":{"description":"Description for an ACH payment, which the counterparty's bank may show on the statement. Set it on the ACH leg: `source` when funding from a bank (debit), `destination` when paying out to one (credit). Characters the ACH network does not carry are removed and the value is trimmed, then the leading 10 characters of the result are sent as the Nacha company entry description. A value that is empty once sanitized is not rejected; it falls back to PAYOUT for a credit or PAYMENT for a debit. Applicable to ACH transfers only.","maxLength":255,"nullable":true,"type":"string"},"address_id":{"type":"string"},"financial_institution_id":{"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"},"wire_memo":{"description":"OBI memo sent to the receiving bank. Applicable to wire transfers only.","nullable":true,"type":"string"}},"required":["value_type","transfer_type"],"title":"PaymentData","type":"object"},"TransferWithWireInstructions":{"allOf":[{"$ref":"#/components/schemas/BaseTransfer"},{"properties":{"wire_instructions":{"$ref":"#/components/schemas/WireInstructions"}},"required":["wire_instructions"],"type":"object"}],"title":"TransferWithWireInstructions","type":"object"},"WebhookSubscriptionCreated":{"additionalProperties":false,"properties":{"events":{"items":{"type":"string"},"type":"array"},"id":{"$ref":"#/components/schemas/ID"},"sharedSecret":{"description":"Signing secret (Base64 Encoded). Returned only on create; store it securely to verify signatures.","type":"string"},"status":{"description":"Subscription lifecycle: active deliveries or archived (no longer used).","enum":["active","archived"],"type":"string"},"url":{"type":"string"}},"required":["id","sharedSecret","events","url","status"],"title":"WebhookSubscriptionCreated","type":"object"},"Account":{"properties":{"created":{"$ref":"#/components/schemas/DateTime"},"id":{"$ref":"#/components/schemas/ID"},"name":{"example":"My Account","type":"string"},"status":{"enum":["complete","pending","rejected"],"type":"string"},"updated":{"$ref":"#/components/schemas/DateTime"}},"required":["id","name","status"],"title":"Account","type":"object"},"BurnResponse":{"properties":{"amount":{"description":"Amount burned","type":"string"},"created_at":{"format":"date-time","type":"string"},"id":{"description":"Order ID","type":"string"},"source":{"$ref":"#/components/schemas/BurnSource"},"status":{"description":"Transaction status","type":"string"},"updated_at":{"format":"date-time","type":"string"}},"title":"BurnResponse","type":"object"},"FundingInstructions":{"additionalProperties":false,"properties":{"account_number":{"type":"string"},"bank_address":{"type":"string"},"bank_name":{"type":"string"},"beneficiary_address":{"type":"string"},"beneficiary_name":{"type":"string"},"routing_number":{"type":"string"}},"required":["bank_name","bank_address","account_number","routing_number","beneficiary_name","beneficiary_address"],"title":"FundingInstructions","type":"object"},"ControllingPartyAddress":{"additionalProperties":false,"properties":{"city":{"example":"London","type":"string"},"country":{"description":"ISO 3166-1 country code or name. Defaults to US when omitted.","example":"GB","type":"string"},"state":{"description":"State, province, or region (free-form; not US-only). Required when `country` is US, optional otherwise.","example":"England","type":"string"},"street_line_1":{"example":"10 Downing St","type":"string"},"street_line_2":{"example":"Flat 2","type":"string"},"zip":{"description":"Postal code (any format)","example":"SW1A 2AA","type":"string"}},"required":["street_line_1","city","zip"],"title":"ControllingPartyAddress","type":"object"},"CreateExternalAddressRequest":{"additionalProperties":false,"oneOf":[{"$ref":"#/components/schemas/CreateExternalBlockchainAddressRequest"},{"$ref":"#/components/schemas/CreateExternalFinancialInstitutionRequest"}],"title":"CreateExternalAddressRequest","type":"object"},"AutomationBrandData":{"additionalProperties":false,"properties":{"account_id":{"type":"string"}},"required":["account_id"],"title":"AutomationBrandData","type":"object"},"PaymentDataView":{"additionalProperties":false,"discriminator":{"propertyName":"paymentDataType"},"oneOf":[{"$ref":"#/components/schemas/BasePaymentData"},{"$ref":"#/components/schemas/FinancialInstitutionPaymentData"},{"$ref":"#/components/schemas/ThirdPartyFinancialInstitutionPaymentData"},{"$ref":"#/components/schemas/AddressPaymentData"},{"$ref":"#/components/schemas/AddressPaymentDataWithTransaction"}],"title":"PaymentDataView","type":"object"},"BasePaymentData":{"additionalProperties":false,"properties":{"payment_details":{"allOf":[{"$ref":"#/components/schemas/PaymentDetails"}],"nullable":true},"requested_transfer_type":{"nullable":true,"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"}},"required":["value_type","transfer_type"],"title":"BasePaymentData","type":"object"},"WebhookEventTypeList":{"additionalProperties":false,"properties":{"event_types":{"description":"Supported event types for new subscriptions, sorted by `event_type`.","items":{"$ref":"#/components/schemas/WebhookEventType"},"type":"array"}},"required":["event_types"],"title":"WebhookEventTypeList","type":"object"},"TransfersList":{"description":"List of transfers with pagination metadata","properties":{"pagination":{"type":"object"},"transfers":{"items":{"$ref":"#/components/schemas/Transfer"},"type":"array"}},"title":"TransfersList","type":"object"},"BlockchainAddressV2":{"properties":{"address":{"description":"On-chain address value. Null for pending addresses awaiting API-gateway provisioning.","example":"0xb518d4d6221d9a41d23d71cbce8e106e7aab8f9b","nullable":true,"type":"string"},"created":{"$ref":"#/components/schemas/DateTime"},"id":{"$ref":"#/components/schemas/ID"},"is_primary":{"description":"Whether this is the primary custodial address for the environment","nullable":true,"type":"boolean"},"name":{"example":"Company External EVM Address","nullable":true,"type":"string"},"ownership":{"enum":["self-owned","customer-owned"],"type":"string"},"status":{"enum":["active","archived","pending"],"type":"string"},"transfer_types":{"items":{"example":"solana","type":"string"},"type":"array"},"type":{"enum":["internal","external"],"type":"string"}},"required":["id","status","name","transfer_types"],"title":"BlockchainAddressV2","type":"object"},"BusinessAddress":{"additionalProperties":false,"properties":{"city":{"example":"Springfield","type":"string"},"country":{"description":"ISO 3166-1 alpha-2 country code of the business. Defaults to US when omitted. Determines jurisdiction coverage for the account.","example":"US","type":"string"},"state":{"description":"State, province, or region. When the business's country is US or omitted this is required and must be a US state or territory, by abbreviation or full name (\"CA\", \"California\", \"PR\"). Optional and free-form otherwise.","example":"CA","type":"string"},"street_line_1":{"example":"100 Example St.","type":"string"},"street_line_2":{"example":"Suite 500","type":"string"},"zip":{"description":"Postal code (any format)","example":"90001","type":"string"}},"required":["street_line_1","city","zip"],"title":"BusinessAddress","type":"object"},"Pagination":{"description":"Pagination information for list endpoints","properties":{"next":{"description":"Cursor for the next page of results","nullable":true,"type":"string"},"page_size":{"description":"Number of items per page","type":"integer"},"prev":{"description":"Cursor for the previous page of results","nullable":true,"type":"string"}},"title":"Pagination","type":"object"},"UpdateWebhookSubscription":{"additionalProperties":false,"properties":{"events":{"description":"When present, replaces all subscribed event types. Supports concrete types (e.g. `transfer.created`) and namespace wildcards (e.g. `transfer.*`).","items":{"type":"string"},"nullable":true,"type":"array"},"url":{"description":"HTTPS URL to receive signed webhook POST requests","maxLength":2048,"nullable":true,"type":"string"}},"title":"UpdateWebhookSubscription","type":"object"},"MintDestination":{"properties":{"address_id":{"description":"Brale address ID","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain/chain name","type":"string"},"value_type":{"description":"Token ticker","type":"string"}},"required":["address_id","value_type","transfer_type"],"title":"MintDestination","type":"object"},"VerificationDocumentsList":{"additionalProperties":false,"properties":{"account_id":{"$ref":"#/components/schemas/ID"},"available_person_labels":{"example":["Jane Doe"],"items":{"type":"string"},"type":"array"},"documents":{"items":{"$ref":"#/components/schemas/DocumentRequirement"},"type":"array"},"other_documents_uploaded_count":{"example":0,"type":"integer"}},"required":["account_id","documents","other_documents_uploaded_count","available_person_labels"],"title":"VerificationDocumentsList","type":"object"},"BurnSource":{"properties":{"address_id":{"description":"Brale address ID","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain/chain name","type":"string"},"value_type":{"description":"Token ticker","type":"string"}},"required":["address_id","value_type","transfer_type"],"title":"BurnSource","type":"object"},"USStreetAddress":{"additionalProperties":false,"properties":{"city":{"example":"Springfield","type":"string"},"country":{"example":"US","type":"string"},"state":{"enum":["AL","AK","AS","AZ","AR","CA","CO","CT","DE","DC","FL","GA","GU","HI","ID","IL","IN","IA","KS","KY","LA","ME","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","MP","OH","OK","OR","PA","PR","RI","SC","SD","TN","TX","VI","UT","VT","VA","WA","WV","WI","WY"],"type":"string"},"street_line_1":{"example":"100 Example St.","type":"string"},"street_line_2":{"example":"Suite 500","type":"string"},"zip":{"example":"90001","type":"string"}},"required":["street_line_1","city","state","zip"],"title":"USStreetAddress","type":"object"},"WebhookSubscriptionList":{"additionalProperties":false,"properties":{"subscriptions":{"items":{"$ref":"#/components/schemas/WebhookSubscription"},"type":"array"}},"required":["subscriptions"],"title":"WebhookSubscriptionList","type":"object"},"RegisterAccountRequest":{"properties":{"customer_webhook_url":{"description":"URL where customer will receive webhook notifications when Plaid items need updates (required for account registration)","example":"https://customer.com/webhooks/plaid-updates","format":"uri","type":"string"},"public_token":{"description":"The public token returned from Plaid Link","example":"public-sandbox-123456789","type":"string"}},"required":["public_token","customer_webhook_url"],"title":"RegisterAccountRequest","type":"object"},"UpdateAutomationStatus":{"additionalProperties":false,"properties":{"status":{"enum":["disabled","archived"],"type":"string"}},"required":["status"],"title":"UpdateAutomationStatus","type":"object"},"MintsList":{"description":"List of mint transactions with pagination metadata","properties":{"mints":{"items":{"$ref":"#/components/schemas/MintResponse"},"type":"array"},"pagination":{"type":"object"}},"title":"MintsList","type":"object"},"Link":{"additionalProperties":false,"example":{"href":"/some-resource/2VZvtmVc2j3gQ80CTlcuQXbGrwC"},"properties":{"href":{"example":"/some-resource/2VZvtmVc2j3gQ80CTlcuQXbGrwC","type":"string"}},"required":["href"],"title":"Link","type":"object"},"ApiErrorV2":{"additionalProperties":false,"properties":{"code":{"example":"ValidationError","type":"string"},"detail":{"example":"A validation error occurred","type":"string"},"status":{"example":400,"type":"integer"},"type":{"type":"string"},"values":{"items":{"type":"string"},"type":"array"}},"required":["type"],"title":"ApiErrorV2","type":"object"},"AutomationSourceWithFundingInstructions":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/AutomationSource"},{"properties":{"funding_instructions":{"$ref":"#/components/schemas/FundingInstructions"}},"type":"object"}],"title":"AutomationSourceWithFundingInstructions","type":"object"},"CreateBurn":{"additionalProperties":false,"example":{"amount":"1000","note":"Monthly burn for Q1 2024","source":{"address_id":"2zbcDT1E1K6xjuYT","transfer_type":"solana","value_type":"eSDR"}},"properties":{"amount":{"description":"Amount to burn as a decimal string","example":"1000.50","type":"string"},"note":{"maxLength":255,"type":"string"},"source":{"$ref":"#/components/schemas/BurnSource"}},"required":["amount","source"],"title":"CreateBurn","type":"object"},"CreateTransfer":{"additionalProperties":false,"properties":{"amount":{"$ref":"#/components/schemas/Amount"},"brand":{"$ref":"#/components/schemas/BrandData"},"destination":{"$ref":"#/components/schemas/PaymentData"},"note":{"maxLength":255,"type":"string"},"source":{"$ref":"#/components/schemas/PaymentData"}},"required":["amount","source","destination"],"title":"CreateTransfer","type":"object"},"Failure":{"additionalProperties":false,"properties":{"errors":{"items":{"$ref":"#/components/schemas/ApiError"},"type":"array","uniqueItems":true},"links":{"additionalProperties":{"$ref":"#/components/schemas/Link"},"nullable":true,"type":"object"},"meta":{"additionalProperties":{"type":"string"},"nullable":true,"type":"object"}},"required":["errors"],"title":"Failure","type":"object"},"DocumentRequirement":{"additionalProperties":false,"properties":{"display_name":{"example":"Government-issued photo ID","type":"string"},"document_kind":{"$ref":"#/components/schemas/DocumentKindEnum"},"document_type":{"enum":["business_document","individual_document","misc_document"],"type":"string"},"person_label":{"example":"Jane Doe","nullable":true,"type":"string"},"status":{"enum":["pending_upload","uploaded"],"type":"string"}},"required":["document_kind","document_type","display_name","status"],"title":"DocumentRequirement","type":"object"},"WebhookDeliveryLog":{"additionalProperties":false,"properties":{"attempt_number":{"minimum":1,"type":"integer"},"event_id":{"description":"Envelope id for the event (e.g. payment id for `payment.completed`, transfer / order id for `transfer.completed`, `transfer.canceled`, or `transfer.created`).","type":"string"},"failure_message":{"description":"Present when the attempt failed.","nullable":true,"type":"string"},"id":{"$ref":"#/components/schemas/ID"},"inserted_at":{"$ref":"#/components/schemas/DateTime"},"status_code":{"description":"HTTP status as string, or a short code such as `request_timeout`.","type":"string"},"subscription_id":{"$ref":"#/components/schemas/ID"}},"required":["id","event_id","subscription_id","attempt_number","status_code","inserted_at"],"title":"WebhookDeliveryLog","type":"object"},"CreateLinkTokenRequest":{"properties":{"android_package_name":{"description":"Android package name for OAuth return-to-app. Must be pre-registered for the account and allowlisted in Plaid Dashboard. Required for Android OAuth flows. Cannot be used with redirect_uri.","example":"com.example.myapp","type":"string"},"date_of_birth":{"description":"User's date of birth (optional)","example":"1990-01-01","type":"string"},"email_address":{"description":"User's email address (optional)","example":"user@example.com","type":"string"},"legal_name":{"description":"User's legal name (optional)","example":"John Doe","type":"string"},"phone_number":{"description":"User's phone number (optional)","example":"+1234567890","type":"string"},"redirect_uri":{"description":"Universal link for iOS OAuth return-to-app. Must be pre-registered for the account and allowlisted in Plaid Dashboard. Required for iOS OAuth flows. Cannot be used with android_package_name.","example":"https://app.example.com/plaid-oauth","format":"uri","type":"string"}},"title":"CreateLinkTokenRequest","type":"object"},"TransferSource":{"properties":{"address_id":{"description":"Source Brale address ID","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain/chain name","type":"string"},"value_type":{"description":"Token ticker","type":"string"}},"required":["address_id","value_type","transfer_type"],"title":"TransferSource","type":"object"},"RegisterAccountAddressResponse":{"properties":{"address_id":{"description":"The ID of the created address","example":"addr_123456789","type":"string"}},"required":["address_id"],"title":"RegisterAccountAddressResponse","type":"object"},"TransferDestination":{"properties":{"address_id":{"description":"Destination Brale address ID","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain/chain name","type":"string"},"value_type":{"description":"Token ticker","type":"string"}},"required":["address_id","value_type","transfer_type"],"title":"TransferDestination","type":"object"},"PaymentDetails":{"additionalProperties":false,"properties":{"fallback_at":{"format":"date-time","nullable":true,"type":"string"},"fallback_reason":{"nullable":true,"type":"string"},"fallback_reason_code":{"nullable":true,"type":"string"},"imad":{"nullable":true,"type":"string"},"original_transfer_type":{"nullable":true,"type":"string"},"payment_reference":{"nullable":true,"type":"string"},"received_at":{"format":"date-time","nullable":true,"type":"string"},"sender_bank_name":{"nullable":true,"type":"string"},"sender_bank_routing_number":{"nullable":true,"type":"string"},"sender_name":{"nullable":true,"type":"string"},"sent_at":{"format":"date-time","nullable":true,"type":"string"},"trace_number":{"nullable":true,"type":"string"}},"title":"PaymentDetails","type":"object"},"AutomationsTransfer":{"allOf":[{"$ref":"#/components/schemas/BaseTransfer"},{"properties":{"automation_id":{"type":"string"}},"required":["automation_id"],"type":"object"}],"title":"AutomationsTransfer","type":"object"},"IndividualIdentity":{"additionalProperties":false,"properties":{"number":{"description":"The identity number.","example":"123-45-6789","type":"string"},"type":{"description":"The identity number type.","enum":["SSN9","SSN4","DRIVER_LICENSE","PASSPORT","NATIONAL_ID","VOTER_ID","BVN","NIN","NIN_SLIP","SSNIT","TAX_ID","KENYA_KRA_PIN","ALIEN_CARD","RESIDENT_ID","COLOMBIA_PPT","GHANA_CARD_NUMBER"],"example":"SSN9","type":"string"}},"required":["number","type"],"title":"IndividualIdentity","type":"object"},"AddressListV2":{"additionalProperties":false,"properties":{"addresses":{"items":{"$ref":"#/components/schemas/AddressV2"},"type":"array"},"pagination":{"allOf":[{"$ref":"#/components/schemas/Pagination"}],"nullable":true}},"required":["addresses"],"title":"AddressListV2","type":"object"},"RegisterAccountWithTransferTypesRequest":{"properties":{"customer_webhook_url":{"description":"URL where customer will receive webhook notifications when Plaid items need updates (required for account registration)","example":"https://customer.com/webhooks/plaid-updates","format":"uri","type":"string"},"ownership":{"description":"Ownership type of the financial institution. Defaults to third_party when not provided.","enum":["first_party","third_party"],"type":"string"},"public_token":{"description":"The public token returned from Plaid Link","example":"public-sandbox-123456789","type":"string"},"transfer_types":{"description":"Transfer types to support for this financial institution","example":["ach_credit","wire"],"items":{"example":"ach_credit","type":"string"},"minItems":1,"type":"array"}},"required":["public_token","customer_webhook_url","transfer_types"],"title":"RegisterAccountWithTransferTypesRequest","type":"object"},"AddressBalance":{"additionalProperties":false,"properties":{"address":{"$ref":"#/components/schemas/AddressReference"},"balance":{"$ref":"#/components/schemas/Amount"},"transfer_type":{"example":"Solana","type":"string"},"value_type":{"example":"USDC","type":"string"}},"required":["value","currency"],"title":"AddressBalance","type":"object"},"CreateTokenizationTransfer":{"additionalProperties":false,"example":{"amount":"3200","destination":{"address_id":"36FkHXYoAJo6QVQSHJ37Nmbaaaa","transfer_type":"solana","value_type":"eSDR"},"source":{"address_id":"36FkHXYoAJo6QVQSHJ37NmbisZx","transfer_type":"solana","value_type":"eSDR"}},"properties":{"amount":{"description":"Amount to transfer as a decimal string","example":"3200","type":"string"},"destination":{"$ref":"#/components/schemas/TransferDestination"},"source":{"$ref":"#/components/schemas/TransferSource"}},"required":["amount","source","destination"],"title":"CreateTokenizationTransfer","type":"object"},"CreateAccountRequest":{"additionalProperties":false,"properties":{"account_type":{"default":"custodial","enum":["custodial","transactional"],"type":"string"},"address":{"$ref":"#/components/schemas/BusinessAddress"},"beneficial_owners":{"items":{"$ref":"#/components/schemas/ControllingParty"},"nullable":true,"type":"array"},"business_controller":{"$ref":"#/components/schemas/ControllingParty"},"business_name":{"example":"My Customer","type":"string"},"doc_submission_ids":{"description":"Optional staged document submission IDs to link at account creation","items":{"$ref":"#/components/schemas/ID"},"nullable":true,"type":"array"},"ein":{"example":"123456789","type":"string"},"email":{"example":"a@b.com","type":"string"},"entity_type":{"default":"business","enum":["business","individual"],"type":"string"},"individual":{"$ref":"#/components/schemas/Individual"},"phone_number":{"example":"515-555-1212","nullable":true,"type":"string"},"tos_attestation":{"$ref":"#/components/schemas/EndUserTosAttestation"},"verification_mode":{"default":"standard","enum":["standard","reliance","bypass"],"type":"string"},"website":{"example":"https://example.com","type":"string"}},"title":"CreateAccountRequest","type":"object"},"ApiError":{"additionalProperties":false,"properties":{"code":{"example":"ValidationError","type":"string"},"detail":{"nullable":true,"type":"string"},"id":{"nullable":true,"type":"string"},"links":{"additionalProperties":{"$ref":"#/components/schemas/Link"},"nullable":true,"type":"object"},"meta":{"additionalProperties":{"type":"string"},"nullable":true,"type":"object"},"source":{"nullable":true,"properties":{"parameter":{"example":"page[cursor]","type":"string"},"pointer":{"example":"/body/data/attributes","type":"string"}},"type":"object"},"status":{"example":"400","type":"string"},"title":{"example":"A validation error occurred","type":"string"}},"title":"ApiError","type":"object"},"WebhookEventType":{"additionalProperties":false,"properties":{"event_type":{"description":"Wire string to pass in `POST .../webhooks` body `events`.","type":"string"},"summary":{"description":"Human-readable description of when this event fires.","type":"string"}},"required":["event_type","summary"],"title":"WebhookEventType","type":"object"},"AddressPaymentData":{"additionalProperties":false,"properties":{"address_id":{"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"}},"required":["value_type","transfer_type","address_id"],"title":"AddressPaymentData","type":"object"},"FinancialInstitutionPaymentData":{"additionalProperties":false,"properties":{"financial_institution_id":{"type":"string"},"payment_details":{"allOf":[{"$ref":"#/components/schemas/PaymentDetails"}],"nullable":true},"requested_transfer_type":{"nullable":true,"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"},"wire_memo":{"description":"OBI memo sent to the receiving bank. Applicable to wire transfers only.","nullable":true,"type":"string"}},"required":["value_type","transfer_type","financial_institution_id"],"title":"FinancialInstitutionPaymentData","type":"object"},"RegisterAccountResponse":{"properties":{"financial_institution_id":{"description":"The ID of the created financial institution","example":"fi_123456789","type":"string"}},"required":["financial_institution_id"],"title":"RegisterAccountResponse","type":"object"},"FinancialInstitutionV2":{"properties":{"account_number":{"description":"Masked account number showing only last 4 digits for security (format: ****1234). Full number never returned.","example":"****1234","nullable":true,"type":"string"},"account_type":{"enum":["checking","savings"],"example":"checking","nullable":true,"type":"string"},"bank_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"nullable":true},"beneficiary_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"nullable":true},"created":{"$ref":"#/components/schemas/DateTime"},"id":{"$ref":"#/components/schemas/ID"},"last_updated":{"description":"Last update timestamp","example":"2024-01-15T10:30:00Z","format":"date_time","type":"string"},"name":{"example":"First Last Bank","nullable":true,"type":"string"},"needs_update":{"description":"Whether this FI needs Plaid reauthorization","example":false,"type":"boolean"},"owner":{"description":"Beneficiary name for wire transfers (maps from POST request owner field)","example":"Jane Doe","nullable":true,"type":"string"},"ownership":{"description":"Ownership type of the financial institution","enum":["self-owned","customer-owned"],"example":"customer-owned","type":"string"},"routingNumber":{"example":"123456789","type":"string"},"status":{"enum":["active","archived"],"type":"string"},"transfer_types":{"items":{"example":"ach_debit","type":"string"},"nullable":true,"type":"array"}},"required":["id","name","routingNumber","status","created"],"title":"FinancialInstitutionV2","type":"object"},"CreateExternalFinancialInstitutionRequest":{"additionalProperties":false,"properties":{"account_number":{"example":"123456789","type":"string"},"account_type":{"example":"checking","type":"string"},"bank_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"description":"Bank street address. Optional for ach_credit, same_day_ach_credit, and rtp_credit. Required when transfer_types includes wire.","nullable":true},"beneficiary_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"description":"Beneficiary street address. Optional for ach_credit, same_day_ach_credit, and rtp_credit. Required when transfer_types includes wire.","nullable":true},"name":{"example":"First Last Bank","type":"string"},"owner":{"example":"Jane Doe","type":"string"},"ownership":{"description":"Ownership type of the financial institution","enum":["self-owned","customer-owned"],"example":"customer-owned","type":"string"},"routing_number":{"example":"123456789","type":"string"},"transfer_types":{"description":"Transfer types to support for this financial institution. When wire is included, bank_address and beneficiary_address are required.","example":["ach_credit","wire"],"items":{"example":"ach_debit","type":"string"},"minItems":1,"type":"array"}},"required":["owner","account_number","routing_number","account_type","transfer_types"],"title":"CreateExternalFinancialInstitutionRequest","type":"object"},"IndividualAddress":{"additionalProperties":false,"properties":{"city":{"example":"London","type":"string"},"country":{"description":"Postal country of the address. Coverage and verification read the individual's top-level `country`, not this field.","example":"GB","type":"string"},"state":{"description":"State, province, or region. When the individual's country is US this is required and must be a US state or territory, by abbreviation or full name (\"CA\", \"California\", \"PR\"). Optional and free-form otherwise.","example":"England","type":"string"},"street_line_1":{"example":"10 Downing St","type":"string"},"street_line_2":{"example":"Flat 2","type":"string"},"zip":{"description":"Postal code (any format)","example":"SW1A 2AA","type":"string"}},"required":["street_line_1","city","zip"],"title":"IndividualAddress","type":"object"},"AutomationDestination":{"additionalProperties":false,"properties":{"address_id":{"type":"string"},"financial_institution_id":{"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"}},"required":["value_type","transfer_type"],"title":"AutomationDestination","type":"object"},"WebhookDeliveryLogList":{"additionalProperties":false,"properties":{"deliveries":{"description":"Delivery attempts, newest `inserted_at` first.","items":{"$ref":"#/components/schemas/WebhookDeliveryLog"},"type":"array"},"pagination":{"$ref":"#/components/schemas/Pagination"}},"required":["deliveries","pagination"],"title":"WebhookDeliveryLogList","type":"object"},"Amount":{"additionalProperties":false,"properties":{"currency":{"example":"USD","type":"string"},"value":{"example":"11234.88","type":"string"}},"required":["value","currency"],"title":"Amount","type":"object"},"CreateMint":{"additionalProperties":false,"properties":{"amount":{"description":"Amount to mint as a decimal string","type":"string"},"destination":{"$ref":"#/components/schemas/MintDestination"}},"required":["amount","destination"],"title":"CreateMint","type":"object"},"AddressPaymentDataWithTransaction":{"additionalProperties":false,"properties":{"address_id":{"type":"string"},"transaction_id":{"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"}},"required":["value_type","transfer_type","address_id"],"title":"AddressPaymentDataWithTransaction","type":"object"},"MintResponse":{"properties":{"amount":{"description":"Amount minted","type":"string"},"created_at":{"format":"date-time","type":"string"},"destination":{"$ref":"#/components/schemas/MintDestination"},"id":{"description":"Order ID","type":"string"},"status":{"description":"Transaction status","type":"string"},"updated_at":{"format":"date-time","type":"string"}},"title":"MintResponse","type":"object"},"WireInstructions":{"additionalProperties":false,"properties":{"account_number":{"type":"string"},"bank_address":{"type":"string"},"bank_name":{"type":"string"},"beneficiary_address":{"type":"string"},"beneficiary_name":{"type":"string"},"memo":{"type":"string"},"routing_number":{"type":"string"}},"required":["bank_name","bank_address","account_number","routing_number","beneficiary_name","beneficiary_address"],"title":"WireInstructions","type":"object"},"ID":{"description":"ID of the resource","example":"2VZvtmVc2j3gQ80CTlcuQXbGrwC","title":"ID","type":"string"},"DateTime":{"description":"ISO-8601 timestamp that includes date and time","example":"2020-01-01T12:00:00Z","format":"date-time","title":"DateTime","type":"string"},"FinancialInstitutionStatusResponse":{"properties":{"financial_institution_id":{"description":"The ID of the financial institution","example":"fi_123456789","type":"string"},"last_updated":{"description":"Last update timestamp","example":"2024-01-15T10:30:00Z","format":"date_time","type":"string"},"needs_update":{"description":"Whether this FI needs Plaid reauthorization","example":false,"type":"boolean"},"status":{"description":"Current FI status","enum":["active","archived"],"example":"active","type":"string"}},"required":["needs_update","status","last_updated"],"title":"FinancialInstitutionStatusResponse","type":"object"},"BurnsList":{"description":"List of burn transactions with pagination metadata","properties":{"burns":{"items":{"$ref":"#/components/schemas/BurnResponse"},"type":"array"},"pagination":{"type":"object"}},"title":"BurnsList","type":"object"},"PatchAccountDocumentsRequest":{"additionalProperties":false,"properties":{"doc_submission_ids":{"items":{"$ref":"#/components/schemas/ID"},"minItems":1,"type":"array"}},"required":["doc_submission_ids"],"title":"PatchAccountDocumentsRequest","type":"object"}},"securitySchemes":{"oauth":{"flows":{"clientCredentials":{"scopes":{"addresses:read":"Read address details","financial-institutions:read":"Read financial institution details","mints:write":"Mint more of a specific token on chain","orders:read":"Read order details","redemptions:write":"Redeem/burn a particular token on a specific chain","self_attested_tokens:burn":"Burn attested tokens (tokenization accounts only)","self_attested_tokens:mint":"Mint attested tokens (tokenization accounts only)","self_attested_tokens:transfer":"Transfer attested tokens (tokenization accounts only)","tokens:read":"Read token details","webhooks:read":"Read webhook subscriptions","webhooks:write":"Create and manage webhook subscriptions"},"tokenUrl":"https://auth.brale.xyz/oauth2/token"}},"type":"oauth2"}}},"info":{"contact":{"email":"support@brale.xyz","name":"Brale API Support"},"description":"Update this with a description. Can we use markdown in this section?","termsOfService":"https://brale.xyz/legal","title":"Brale API","version":"1.0"},"openapi":"3.0.3","paths":{"/accounts/{account_id}/financial-institutions/{fi_id}/status":{"get":{"callbacks":{},"operationId":"get_financial_institution_status","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Financial Institution ID","in":"path","name":"fi_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FinancialInstitutionStatusResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["financial-institutions:read"]}],"summary":"Get financial institution status and update requirements","tags":["Financial Institutions"]}},"/accounts/{account_id}/webhooks/deliveries":{"get":{"callbacks":{},"description":"Returns outbound delivery attempts for webhook subscriptions owned by the account, newest first, with cursor pagination (`page[size]`, and either `page[after]` or `page[before]` — not both).","operationId":"list_webhook_deliveries","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookDeliveryLogList"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["webhooks:read"]}],"summary":"List webhook delivery logs","tags":["Webhooks"]}},"/accounts/{account_id}/financial-institutions":{"get":{"callbacks":{},"description":"Returns all financial institutions you have added to your account to receive wired funds.","operationId":"list_account_financial_institutions","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FinancialInstitutionListV2"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["financial-institutions:read"]}],"summary":"List financial institutions V2","tags":["Financial Institutions"]}},"/accounts/{account_id}/plaid/register-account":{"post":{"callbacks":{},"description":"Registers a financial institution account using Plaid public token and returns the address ID","operationId":"register_account_to_address_id","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterAccountWithTransferTypesRequest"}}},"description":"Register account request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterAccountAddressResponse"}}},"description":"Created","headers":{"location":{"schema":{"type":"string"},"style":"simple"}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:write"]}],"summary":"Register financial institution account via Plaid and return address ID","tags":["Financial Institutions"]}},"/accounts/{account_id}/tokens/mints":{"get":{"callbacks":{},"description":"List all mint transactions for a tokenization account. Supports pagination and filtering.","operationId":"list_mints","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}},{"description":"Filter by on-chain transaction hash","in":"query","name":"transaction_id","required":false,"schema":{"type":"string"}},{"description":"Filter by token ticker","in":"query","name":"value_type","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MintsList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"List Mints","tags":["Orders"]},"post":{"callbacks":{},"description":"Mint (create) new tokens. Only available for tokenization/self-attested accounts.","operationId":"create_mint","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateMint"}}},"description":"Mint request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MintResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["self_attested_tokens:mint"]}],"summary":"Mint Tokens","tags":["Orders"]}},"/accounts/{account_id}/automations/{automation_id}":{"get":{"callbacks":{},"description":"Get Automation","operationId":"get_automation","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Automation ID","in":"path","name":"automation_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["automations:read"]}],"summary":"Get Automation","tags":["Automations"]},"patch":{"callbacks":{},"description":"Disable or archive an Automation","operationId":"update_automation_status","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Automation ID","in":"path","name":"automation_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAutomationStatus"}}},"description":"Update Automation Status request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"},"502":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Upstream service error"}},"security":[{"oauth":["automations:write"]}],"summary":"Update Automation Status","tags":["Automations"]}},"/accounts":{"get":{"callbacks":{},"operationId":"list_accounts","parameters":[{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountList"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["accounts:read"]}],"summary":"List accounts managed by organization","tags":["Accounts"]},"post":{"callbacks":{},"operationId":"create_account","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAccountRequest"}}},"description":"Create account request body (business or individual)","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Account"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Service Unavailable"}},"security":[{"oauth":["accounts:write"]}],"summary":"Creates an account managed by organization","tags":["Accounts"]}},"/accounts/{account_id}/verification/documents":{"get":{"callbacks":{},"operationId":"list_verification_documents","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerificationDocumentsList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["accounts:read"]}],"summary":"List required verification documents","tags":["Accounts"]}},"/accounts/{account_id}/financial-institutions/register-account":{"post":{"callbacks":{},"description":"Registers a financial institution account using Plaid public token","operationId":"register_account","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterAccountRequest"}}},"description":"Register account request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterAccountResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:write"]}],"summary":"Register financial institution account","tags":["Financial Institutions"]}},"/accounts/{account_id}/tokens/transfers":{"get":{"callbacks":{},"description":"List all tokenization transfer transactions for a tokenization account. Supports pagination and filtering.","operationId":"list_tokenization_transfers","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}},{"description":"Filter by on-chain transaction hash","in":"query","name":"transaction_id","required":false,"schema":{"type":"string"}},{"description":"Filter by token ticker","in":"query","name":"value_type","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenizationTransfersList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"List Tokenization Transfers","tags":["Orders"]},"post":{"callbacks":{},"description":"Transfer attested tokens between addresses on the same blockchain. Only available for tokenization/self-attested accounts.","operationId":"create_tokenization_transfer","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTokenizationTransfer"}}},"description":"Transfer request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenizationTransferResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["self_attested_tokens:transfer"]}],"summary":"Transfer Tokens","tags":["Orders"]}},"/accounts/{account_id}/webhooks/subscriptions/{subscription_id}":{"delete":{"callbacks":{},"description":"Sets an **active** subscription to **archived** so it no longer receives webhooks. Event subscriptions and delivery history are retained. Returns **409** if the subscription is already archived.","operationId":"delete_webhook_subscription","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Webhook subscription ID","in":"path","name":"subscription_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"204":{"description":"No Content"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"}},"security":[{"oauth":["webhooks:write"]}],"summary":"Archive webhook subscription","tags":["Webhooks"]},"patch":{"callbacks":{},"description":"Updates URL and/or subscribed event types for an **active** subscription. When `events` is sent, it replaces the full set. **Archived** subscriptions return **409**.","operationId":"update_webhook_subscription","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Webhook subscription ID","in":"path","name":"subscription_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWebhookSubscription"}}},"description":"Update webhook subscription","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookSubscription"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"}},"security":[{"oauth":["webhooks:write","webhooks:read"]}],"summary":"Update webhook subscription","tags":["Webhooks"]}},"/accounts/{account_id}/tokens/burns":{"get":{"callbacks":{},"description":"List all burn transactions for a tokenization account. Supports pagination and filtering.","operationId":"list_burns","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}},{"description":"Filter by on-chain transaction hash","in":"query","name":"transaction_id","required":false,"schema":{"type":"string"}},{"description":"Filter by token ticker","in":"query","name":"value_type","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BurnsList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"List Burns","tags":["Orders"]},"post":{"callbacks":{},"description":"Burn (destroy) tokens from an address. Only available for tokenization/self-attested accounts.","operationId":"create_burn","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBurn"}}},"description":"Burn request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BurnResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["self_attested_tokens:burn"]}],"summary":"Burn Tokens","tags":["Orders"]}},"/accounts/{account_id}/transfers":{"get":{"callbacks":{},"description":"Returns all transfers for the specified account.","operationId":"list_transfers","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}},{"description":"On-chain transaction hash","in":"query","name":"transaction_id","required":false,"schema":{"type":"string"}},{"description":"Filter transfers created by a specific automation","in":"query","name":"automation_id","required":false,"schema":{"type":"string"}},{"description":"Filter transfers by status","in":"query","name":"status","required":false,"schema":{"enum":["pending","processing","complete","canceled"],"type":"string"}},{"description":"Filter transfers by address ID","in":"query","name":"address_id","required":false,"schema":{"type":"string"}},{"description":"Filter transfers by blockchain chain (e.g. solana, base, ethereum). Fiat payment types (e.g. same_day_ach_credit, wire) are not supported as filter values.","in":"query","name":"transfer_type","required":false,"schema":{"type":"string"}},{"description":"Filter transfers by token ticker (e.g. USDC, SBC)","in":"query","name":"value_type","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransfersList"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["transfers:read"]}],"summary":"List transfers for an account","tags":["Orders"]},"post":{"callbacks":{},"description":"Create Transfer","operationId":"create_transfer","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTransfer"}}},"description":"Create transfer request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Transfer"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["transfers:write"]}],"summary":"Create Transfer","tags":["Orders"]}},"/accounts/{account_id}/financial-institutions/{fi_id}/update-link-token":{"post":{"callbacks":{},"operationId":"create_update_link_token (2)","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Financial Institution ID","in":"path","name":"fi_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLinkTokenRequest"}}},"description":"Update link token request body","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkTokenResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["financial-institutions:read"]}],"summary":"Create update link token for existing financial institution","tags":["Financial Institutions"]}},"/accounts/{account_id}/balance/enable":{"post":{"callbacks":{},"operationId":"enable_balance","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Active"},"202":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Provisioning"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Service Unavailable"}},"security":[{"oauth":["automations:write"]}],"summary":"Enable wire deposits for an account","tags":["Accounts"]}},"/accounts/{account_id}/addresses":{"get":{"callbacks":{},"description":"Returns wallet addresses associated with your account, including custodial wallets and EOAs. Archived custodial (internal) addresses are omitted.","operationId":"list_account_addresses","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Filter by onchain address (case-insensitive)","in":"query","name":"address","required":false,"schema":{"example":"0xb518d4d6221d9a41d23d71cbce8e106e7aab8f9b","type":"string"}},{"description":"Filter by address type","in":"query","name":"type","required":false,"schema":{"enum":["internal","external"],"example":"internal","type":"string"}},{"description":"Filter by transfer type (can be specified multiple times for OR logic)","in":"query","name":"transfer_type","required":false,"schema":{"example":"ethereum","type":"string"}},{"description":"Pagination parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressListV2"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["addresses:read"]}],"summary":"List addresses for account","tags":["Addresses"]}},"/accounts/{account_id}/plaid/link_token":{"post":{"callbacks":{},"description":"Creates a Plaid link token for bank authentication","operationId":"create_plaid_link_token (2)","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLinkTokenRequest"}}},"description":"Create link token request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkTokenResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:write"]}],"summary":"Create Plaid link token","tags":["Financial Institutions"]}},"/accounts/{account_id}/webhooks/{subscription_id}":{"get":{"callbacks":{},"operationId":"get_webhook_subscription","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Webhook subscription ID","in":"path","name":"subscription_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookSubscription"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["webhooks:read"]}],"summary":"Get webhook subscription","tags":["Webhooks"]}},"/accounts/{account_id}/webhooks":{"get":{"callbacks":{},"operationId":"list_webhook_subscriptions","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookSubscriptionList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["webhooks:read"]}],"summary":"List webhook subscriptions","tags":["Webhooks"]},"post":{"callbacks":{},"description":"Registers a destination URL and one or more event types. The signing secret is returned once in the response.","operationId":"create_webhook_subscription","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWebhookSubscription"}}},"description":"Create webhook subscription","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookSubscriptionCreated"}}},"description":"Created","headers":{"location":{"schema":{"type":"string"},"style":"simple"}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"}},"security":[{"oauth":["webhooks:write","webhooks:read"]}],"summary":"Create webhook subscription","tags":["Webhooks"]}},"/accounts/{account_id}/addresses/{address_id}":{"get":{"callbacks":{},"operationId":"get_account_address","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Address ID","in":"path","name":"address_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressV2"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["addresses:read"]}],"summary":"Get individual address for account","tags":["Addresses"]},"patch":{"callbacks":{},"operationId":"update_account_address","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Address ID","in":"path","name":"address_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExternalAddressRequest"}}},"description":"Update address request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressV2"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["addresses:write"]}],"summary":"Update address details for an account","tags":["Addresses"]}},"/documents":{"post":{"callbacks":{},"operationId":"create_document_submission","parameters":[],"requestBody":{"content":{"multipart/form-data":{"schema":{"properties":{"document_kind":{"$ref":"#/components/schemas/DocumentKindEnum"},"file":{"description":"The document image or PDF. For a two-sided identity document, its front.","format":"binary","type":"string"},"file_back":{"description":"The reverse side of a two-sided identity document. Required when identity_document_type is one of: DRIVER_LICENSE, NATIONAL_ID, ID_CARD, VOTER_ID_CARD, RESIDENT_CARD. Accepted for any other identity document type but not required. Not accepted for a business document.","format":"binary","nullable":true,"type":"string"},"identity_document_type":{"$ref":"#/components/schemas/IdentityDocumentTypeEnum"},"person_label":{"nullable":true,"type":"string"}},"required":["file","document_kind"],"type":"object"}}},"description":"Document submission upload","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentSubmissionCreated"}}},"description":"Created","headers":{"location":{"schema":{"type":"string"},"style":"simple"}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"}},"security":[{"oauth":["accounts:write"]}],"summary":"Stage a verification document for later linking","tags":["Accounts"]}},"/accounts/{account_id}/financial-institutions/external":{"post":{"callbacks":{},"description":"Creates a record of an external financial institution that can be used to receive funds.","operationId":"create_external_financial_institution","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalFinancialInstitutionRequest"}}},"description":"Create external financial institution request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FinancialInstitutionV2"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:write"]}],"summary":"Create External financial institution","tags":["Financial Institutions"]}},"/accounts/{account_id}":{"get":{"callbacks":{},"operationId":"get_account","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Account"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["accounts:read"]}],"summary":"Get individual account","tags":["Accounts"]},"patch":{"callbacks":{},"operationId":"patch_account_documents","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchAccountDocumentsRequest"}}},"description":"Patch account documents request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Account"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"}},"security":[{"oauth":["accounts:write"]}],"summary":"Link staged verification documents to an account","tags":["Accounts"]}},"/accounts/{account_id}/automations":{"get":{"callbacks":{},"description":"Get Automations","operationId":"get_automations","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["automations:read"]}],"summary":"Get Automations","tags":["Automations"]},"post":{"callbacks":{},"description":"Create Automation","operationId":"create_automation","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAutomation"}}},"description":"Create Automation request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"}},"security":[{"oauth":["automations:write"]}],"summary":"Create Automation","tags":["Automations"]}},"/accounts/{account_id}/addresses/{address_id}/update-link-token":{"post":{"callbacks":{},"operationId":"create_update_link_token","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Financial Institution ID","in":"path","name":"fi_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLinkTokenRequest"}}},"description":"Update link token request body","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkTokenResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["financial-institutions:read"]}],"summary":"Create update link token for existing financial institution","tags":["Financial Institutions"]}},"/accounts/{account_id}/webhooks/events/{event_id}/resend":{"post":{"callbacks":{},"description":"Queues one outbound replay delivery job per **active** webhook subscription for this account that subscribes to the event type of the given **`event_id`** (canonical envelope id; e.g. payment id for `payment.completed`, order id for `transfer.completed`, `transfer.canceled`, or `transfer.failed`). Requires **`Idempotency-Key`**. Payload is taken from `webhook_event_payloads` when present, otherwise rebuilt from domain data.","operationId":"replay_webhook_event","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Canonical webhook event id (envelope `id`; e.g. payment id for `payment.completed`, order id for transfer events)","in":"path","name":"event_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookReplayAccepted"}}},"description":"Accepted","headers":{"content-location":{"schema":{"type":"string"},"style":"simple"}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Service Unavailable"}},"security":[{"oauth":["webhooks:write","webhooks:read"]}],"summary":"Replay webhook deliveries for an event","tags":["Webhooks"]}},"/accounts/{account_id}/tokens/mints/{mint_id}":{"get":{"callbacks":{},"description":"Retrieve a specific mint transaction by ID.","operationId":"get_mint","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Mint ID","in":"path","name":"mint_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MintResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"Get Mint","tags":["Orders"]}},"/accounts/{account_id}/addresses/internal":{"post":{"callbacks":{},"description":"Provisions a new custodial (internal) address for the given account and environment. The first custodial address created for an account/environment combination is marked as primary.","operationId":"create_internal_address","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInternalBlockchainAddressRequest"}}},"description":"Create internal address request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressV2"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Service Unavailable"}},"security":[{"oauth":["addresses:write"]}],"summary":"Provision internal (custodial) address","tags":["Addresses"]}},"/accounts/{account_id}/transfers/{transfer_id}":{"get":{"callbacks":{},"operationId":"get_transfer","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Transfer ID","in":"path","name":"transfer_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Transfer"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["transfers:read"]}],"summary":"Get Transfer","tags":["Orders"]}},"/accounts/{account_id}/tokens/burns/{burn_id}":{"get":{"callbacks":{},"description":"Retrieve a specific burn transaction by ID.","operationId":"get_burn","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Burn ID","in":"path","name":"burn_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BurnResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"Get Burn","tags":["Orders"]}},"/accounts/{account_id}/financial-institutions/plaid/link_token":{"post":{"callbacks":{},"description":"Creates a Plaid link token for bank authentication","operationId":"create_plaid_link_token","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLinkTokenRequest"}}},"description":"Create link token request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkTokenResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:write"]}],"summary":"Create Plaid link token","tags":["Financial Institutions"]}},"/accounts/{account_id}/tokens/transfers/{transfer_id}":{"get":{"callbacks":{},"description":"Retrieve a specific tokenization transfer transaction by ID.","operationId":"get_tokenization_transfer","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Transfer ID","in":"path","name":"transfer_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenizationTransferResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"Get Tokenization Transfer","tags":["Orders"]}},"/accounts/{account_id}/webhooks/event_types":{"get":{"callbacks":{},"description":"Returns the event type strings (and short descriptions) that may be passed in `POST .../webhooks` `events` when creating a subscription.","operationId":"list_webhook_event_types","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEventTypeList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["webhooks:read"]}],"summary":"List supported webhook event types","tags":["Webhooks"]}},"/accounts/{account_id}/addresses/external":{"post":{"callbacks":{},"description":"Creates a record of an external address that can be used to receive funds.","operationId":"create_external_address","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalAddressRequest"}}},"description":"Create address request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressV2"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["addresses:write"]}],"summary":"Create external address","tags":["Addresses"]}},"/accounts/{account_id}/wire-instructions":{"get":{"callbacks":{},"operationId":"get_wire_instructions","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Wire instructions"},"202":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Provisioning"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["automations:read"]}],"summary":"Get wire instructions for brale account","tags":["Accounts"]}},"/accounts/{account_id}/financial-institutions/{fi_id}":{"get":{"callbacks":{},"operationId":"get_account_financial_institution","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"FinancialInstitution ID","in":"path","name":"fi_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FinancialInstitutionV2"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:read"]}],"summary":"Get individual financial institution","tags":["Financial Institutions"]}},"/accounts/{account_id}/addresses/{address_id}/balance":{"get":{"callbacks":{},"operationId":"get_address_token_balance","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Address ID","in":"path","name":"address_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Transfer type","in":"query","name":"transfer_type","required":false,"schema":{"type":"string"}},{"description":"Value type","in":"query","name":"value_type","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressBalance"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["addresses:read"]}],"summary":"Get token balance for a given address on a specific chain","tags":["Addresses"]}}},"security":[],"servers":[{"url":"https://api.brale.xyz","variables":{}}],"tags":[]} \ No newline at end of file +{"components":{"responses":{},"schemas":{"DateTime":{"description":"ISO-8601 timestamp that includes date and time","example":"2020-01-01T12:00:00Z","format":"date-time","title":"DateTime","type":"string"},"WebhookSubscriptionList":{"additionalProperties":false,"properties":{"subscriptions":{"items":{"$ref":"#/components/schemas/WebhookSubscription"},"type":"array"}},"required":["subscriptions"],"title":"WebhookSubscriptionList","type":"object"},"VerificationDocumentsList":{"additionalProperties":false,"properties":{"account_id":{"$ref":"#/components/schemas/ID"},"available_person_labels":{"example":["Jane Doe"],"items":{"type":"string"},"type":"array"},"documents":{"items":{"$ref":"#/components/schemas/DocumentRequirement"},"type":"array"},"other_documents_uploaded_count":{"example":0,"type":"integer"}},"required":["account_id","documents","other_documents_uploaded_count","available_person_labels"],"title":"VerificationDocumentsList","type":"object"},"TransferSource":{"properties":{"address_id":{"description":"Source Brale address ID","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain/chain name","type":"string"},"value_type":{"description":"Token ticker","type":"string"}},"required":["address_id","value_type","transfer_type"],"title":"TransferSource","type":"object"},"MintDestination":{"properties":{"address_id":{"description":"Brale address ID","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain/chain name","type":"string"},"value_type":{"description":"Token ticker","type":"string"}},"required":["address_id","value_type","transfer_type"],"title":"MintDestination","type":"object"},"UpdateAutomationStatus":{"additionalProperties":false,"properties":{"status":{"enum":["disabled","archived"],"type":"string"}},"required":["status"],"title":"UpdateAutomationStatus","type":"object"},"AccountList":{"additionalProperties":false,"properties":{"accounts":{"items":{"$ref":"#/components/schemas/Account"},"type":"array"},"pagination":{"allOf":[{"$ref":"#/components/schemas/Pagination"}],"nullable":true}},"required":["accounts"],"title":"AccountList","type":"object"},"DocumentKindEnum":{"enum":["articles_of_incorporation","certificate_of_good_standing","ein_letter","government_photo_id","other"],"title":"DocumentKindEnum","type":"string"},"ControllingPartyAddress":{"additionalProperties":false,"properties":{"city":{"example":"London","type":"string"},"country":{"description":"ISO 3166-1 country code or name. Defaults to US when omitted.","example":"GB","type":"string"},"state":{"description":"State, province, or region (free-form; not US-only). Required when `country` is US, optional otherwise.","example":"England","type":"string"},"street_line_1":{"example":"10 Downing St","type":"string"},"street_line_2":{"example":"Flat 2","type":"string"},"zip":{"description":"Postal code (any format)","example":"SW1A 2AA","type":"string"}},"required":["street_line_1","city","zip"],"title":"ControllingPartyAddress","type":"object"},"CreateLinkTokenRequest":{"properties":{"android_package_name":{"description":"Android package name for OAuth return-to-app. Must be pre-registered for the account and allowlisted in Plaid Dashboard. Required for Android OAuth flows. Cannot be used with redirect_uri.","example":"com.example.myapp","type":"string"},"client_name":{"description":"Name of your application, as shown to users in Plaid Link. Defaults to Brale when not provided. Maximum 30 characters.","example":"Acme Payments","maxLength":30,"type":"string"},"date_of_birth":{"description":"User's date of birth (optional)","example":"1990-01-01","type":"string"},"email_address":{"description":"User's email address (optional)","example":"user@example.com","type":"string"},"language":{"description":"Plaid Link UI language. Omit for English.","enum":["da","nl","en","et","fr","de","hi","it","lv","lt","no","pl","pt","ro","es","sv","vi"],"example":"en","type":"string"},"legal_name":{"description":"User's legal name (optional)","example":"John Doe","type":"string"},"phone_number":{"description":"User's phone number (optional)","example":"+1234567890","type":"string"},"redirect_uri":{"description":"Universal link for iOS OAuth return-to-app. Must be pre-registered for the account and allowlisted in Plaid Dashboard. Required for iOS OAuth flows. Cannot be used with android_package_name.","example":"https://app.example.com/plaid-oauth","format":"uri","type":"string"}},"title":"CreateLinkTokenRequest","type":"object"},"TransferWithWireInstructions":{"allOf":[{"$ref":"#/components/schemas/BaseTransfer"},{"properties":{"wire_instructions":{"$ref":"#/components/schemas/WireInstructions"}},"required":["wire_instructions"],"type":"object"}],"title":"TransferWithWireInstructions","type":"object"},"PaymentDataView":{"additionalProperties":false,"discriminator":{"propertyName":"paymentDataType"},"oneOf":[{"$ref":"#/components/schemas/BasePaymentData"},{"$ref":"#/components/schemas/FinancialInstitutionPaymentData"},{"$ref":"#/components/schemas/ThirdPartyFinancialInstitutionPaymentData"},{"$ref":"#/components/schemas/AddressPaymentData"},{"$ref":"#/components/schemas/AddressPaymentDataWithTransaction"}],"title":"PaymentDataView","type":"object"},"WireInstructions":{"additionalProperties":false,"properties":{"account_number":{"type":"string"},"bank_address":{"type":"string"},"bank_name":{"type":"string"},"beneficiary_address":{"type":"string"},"beneficiary_name":{"type":"string"},"memo":{"type":"string"},"routing_number":{"type":"string"}},"required":["bank_name","bank_address","account_number","routing_number","beneficiary_name","beneficiary_address"],"title":"WireInstructions","type":"object"},"FinancialInstitutionPaymentData":{"additionalProperties":false,"properties":{"financial_institution_id":{"type":"string"},"payment_details":{"allOf":[{"$ref":"#/components/schemas/PaymentDetails"}],"nullable":true},"requested_transfer_type":{"nullable":true,"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"},"wire_memo":{"description":"OBI memo sent to the receiving bank. Applicable to wire transfers only.","nullable":true,"type":"string"}},"required":["value_type","transfer_type","financial_institution_id"],"title":"FinancialInstitutionPaymentData","type":"object"},"CreateTokenizationTransfer":{"additionalProperties":false,"example":{"amount":"3200","destination":{"address_id":"36FkHXYoAJo6QVQSHJ37Nmbaaaa","transfer_type":"solana","value_type":"eSDR"},"source":{"address_id":"36FkHXYoAJo6QVQSHJ37NmbisZx","transfer_type":"solana","value_type":"eSDR"}},"properties":{"amount":{"description":"Amount to transfer as a decimal string","example":"3200","type":"string"},"destination":{"$ref":"#/components/schemas/TransferDestination"},"source":{"$ref":"#/components/schemas/TransferSource"}},"required":["amount","source","destination"],"title":"CreateTokenizationTransfer","type":"object"},"ApiErrorV2":{"additionalProperties":false,"properties":{"code":{"example":"ValidationError","type":"string"},"detail":{"example":"A validation error occurred","type":"string"},"status":{"example":400,"type":"integer"},"type":{"type":"string"},"values":{"items":{"type":"string"},"type":"array"}},"required":["type"],"title":"ApiErrorV2","type":"object"},"AutomationDestination":{"additionalProperties":false,"properties":{"address_id":{"type":"string"},"financial_institution_id":{"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"}},"required":["value_type","transfer_type"],"title":"AutomationDestination","type":"object"},"ThirdPartyFinancialInstitutionPaymentData":{"additionalProperties":false,"properties":{"address_id":{"type":"string"},"payment_details":{"allOf":[{"$ref":"#/components/schemas/PaymentDetails"}],"nullable":true},"requested_transfer_type":{"nullable":true,"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"},"wire_memo":{"description":"OBI memo sent to the receiving bank. Applicable to wire transfers only.","nullable":true,"type":"string"}},"required":["value_type","transfer_type","financial_institution_id"],"title":"ThirdPartyFinancialInstitutionPaymentData","type":"object"},"UpdateWebhookSubscription":{"additionalProperties":false,"properties":{"events":{"description":"When present, replaces all subscribed event types. Supports concrete types (e.g. `transfer.created`) and namespace wildcards (e.g. `transfer.*`).","items":{"type":"string"},"nullable":true,"type":"array"},"url":{"description":"HTTPS URL to receive signed webhook POST requests","maxLength":2048,"nullable":true,"type":"string"}},"title":"UpdateWebhookSubscription","type":"object"},"CreateWebhookSubscription":{"additionalProperties":false,"properties":{"events":{"description":"Event types to subscribe to. Supports concrete types (e.g. `transfer.created`) and namespace wildcards (e.g. `transfer.*` for all transfer events). See the supported event types endpoint.","items":{"type":"string"},"minItems":1,"type":"array"},"url":{"description":"HTTPS URL to receive signed webhook POST requests","maxLength":2048,"type":"string"}},"required":["url","events"],"title":"CreateWebhookSubscription","type":"object"},"AddressV2":{"additionalProperties":false,"oneOf":[{"$ref":"#/components/schemas/BlockchainAddressV2"},{"$ref":"#/components/schemas/FinancialInstitutionV2"}],"title":"AddressV2","type":"object"},"CreateAccountRequest":{"additionalProperties":false,"properties":{"account_type":{"default":"custodial","enum":["custodial","transactional"],"type":"string"},"address":{"$ref":"#/components/schemas/BusinessAddress"},"beneficial_owners":{"items":{"$ref":"#/components/schemas/ControllingParty"},"nullable":true,"type":"array"},"business_controller":{"$ref":"#/components/schemas/ControllingParty"},"business_name":{"example":"My Customer","type":"string"},"doc_submission_ids":{"description":"Optional staged document submission IDs to link at account creation","items":{"$ref":"#/components/schemas/ID"},"nullable":true,"type":"array"},"ein":{"example":"123456789","type":"string"},"email":{"example":"a@b.com","type":"string"},"entity_type":{"default":"business","enum":["business","individual"],"type":"string"},"individual":{"$ref":"#/components/schemas/Individual"},"phone_number":{"example":"515-555-1212","nullable":true,"type":"string"},"tos_attestation":{"$ref":"#/components/schemas/EndUserTosAttestation"},"verification_mode":{"default":"standard","enum":["standard","reliance","bypass"],"type":"string"},"website":{"example":"https://example.com","type":"string"}},"title":"CreateAccountRequest","type":"object"},"BlockchainAddressV2":{"properties":{"address":{"description":"On-chain address value. Null for pending addresses awaiting API-gateway provisioning.","example":"0xb518d4d6221d9a41d23d71cbce8e106e7aab8f9b","nullable":true,"type":"string"},"created":{"$ref":"#/components/schemas/DateTime"},"id":{"$ref":"#/components/schemas/ID"},"is_primary":{"description":"Whether this is the primary custodial address for the environment","nullable":true,"type":"boolean"},"name":{"example":"Company External EVM Address","nullable":true,"type":"string"},"ownership":{"enum":["self-owned","customer-owned"],"type":"string"},"status":{"enum":["active","archived","pending"],"type":"string"},"transfer_types":{"items":{"example":"solana","type":"string"},"type":"array"},"type":{"enum":["internal","external"],"type":"string"}},"required":["id","status","name","transfer_types"],"title":"BlockchainAddressV2","type":"object"},"Failure":{"additionalProperties":false,"properties":{"errors":{"items":{"$ref":"#/components/schemas/ApiError"},"type":"array","uniqueItems":true},"links":{"additionalProperties":{"$ref":"#/components/schemas/Link"},"nullable":true,"type":"object"},"meta":{"additionalProperties":{"type":"string"},"nullable":true,"type":"object"}},"required":["errors"],"title":"Failure","type":"object"},"WebhookSubscriptionCreated":{"additionalProperties":false,"properties":{"events":{"items":{"type":"string"},"type":"array"},"id":{"$ref":"#/components/schemas/ID"},"sharedSecret":{"description":"Signing secret (Base64 Encoded). Returned only on create; store it securely to verify signatures.","type":"string"},"status":{"description":"Subscription lifecycle: active deliveries or archived (no longer used).","enum":["active","archived"],"type":"string"},"url":{"type":"string"}},"required":["id","sharedSecret","events","url","status"],"title":"WebhookSubscriptionCreated","type":"object"},"RegisterAccountWithTransferTypesRequest":{"properties":{"customer_webhook_url":{"description":"URL where customer will receive webhook notifications when Plaid items need updates (required for account registration)","example":"https://customer.com/webhooks/plaid-updates","format":"uri","type":"string"},"ownership":{"description":"Ownership type of the financial institution. Defaults to third_party when not provided.","enum":["first_party","third_party"],"type":"string"},"public_token":{"description":"The public token returned from Plaid Link","example":"public-sandbox-123456789","type":"string"},"transfer_types":{"description":"Transfer types to support for this financial institution","example":["ach_credit","wire"],"items":{"example":"ach_credit","type":"string"},"minItems":1,"type":"array"}},"required":["public_token","customer_webhook_url","transfer_types"],"title":"RegisterAccountWithTransferTypesRequest","type":"object"},"USStreetAddress":{"additionalProperties":false,"properties":{"city":{"example":"Springfield","type":"string"},"country":{"example":"US","type":"string"},"state":{"enum":["AL","AK","AS","AZ","AR","CA","CO","CT","DE","DC","FL","GA","GU","HI","ID","IL","IN","IA","KS","KY","LA","ME","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","MP","OH","OK","OR","PA","PR","RI","SC","SD","TN","TX","VI","UT","VT","VA","WA","WV","WI","WY"],"type":"string"},"street_line_1":{"example":"100 Example St.","type":"string"},"street_line_2":{"example":"Suite 500","type":"string"},"zip":{"example":"90001","type":"string"}},"required":["street_line_1","city","state","zip"],"title":"USStreetAddress","type":"object"},"AutomationSource":{"additionalProperties":false,"properties":{"transfer_type":{"type":"string"},"value_type":{"type":"string"}},"required":["value_type"],"title":"AutomationSource","type":"object"},"Individual":{"additionalProperties":false,"properties":{"address":{"$ref":"#/components/schemas/IndividualAddress"},"country":{"description":"ISO 3166-1 alpha-2 country code; stored separately for AiPrise routing","example":"US","type":"string"},"date_of_birth":{"description":"YYYY-MM-DD","example":"1990-01-31","type":"string"},"email":{"example":"jane@example.com","type":"string"},"first_name":{"example":"Jane","type":"string"},"identity":{"$ref":"#/components/schemas/IndividualIdentity"},"last_name":{"example":"Doe","type":"string"},"phone_number":{"example":"515-555-1212","type":"string"}},"required":["first_name","last_name","date_of_birth","email","phone_number","address","country","identity"],"title":"Individual","type":"object"},"BusinessAddress":{"additionalProperties":false,"properties":{"city":{"example":"Springfield","type":"string"},"country":{"description":"ISO 3166-1 alpha-2 country code of the business. Defaults to US when omitted. Determines jurisdiction coverage for the account.","example":"US","type":"string"},"state":{"description":"State, province, or region. When the business's country is US or omitted this is required and must be a US state or territory, by abbreviation or full name (\"CA\", \"California\", \"PR\"). Optional and free-form otherwise.","example":"CA","type":"string"},"street_line_1":{"example":"100 Example St.","type":"string"},"street_line_2":{"example":"Suite 500","type":"string"},"zip":{"description":"Postal code (any format)","example":"90001","type":"string"}},"required":["street_line_1","city","zip"],"title":"BusinessAddress","type":"object"},"RegisterAccountRequest":{"properties":{"customer_webhook_url":{"description":"URL where customer will receive webhook notifications when Plaid items need updates (required for account registration)","example":"https://customer.com/webhooks/plaid-updates","format":"uri","type":"string"},"public_token":{"description":"The public token returned from Plaid Link","example":"public-sandbox-123456789","type":"string"}},"required":["public_token","customer_webhook_url"],"title":"RegisterAccountRequest","type":"object"},"DocumentSubmissionCreated":{"additionalProperties":false,"properties":{"doc_submission_id":{"$ref":"#/components/schemas/ID"}},"required":["doc_submission_id"],"title":"DocumentSubmissionCreated","type":"object"},"WebhookDeliveryLog":{"additionalProperties":false,"properties":{"attempt_number":{"minimum":1,"type":"integer"},"event_id":{"description":"Envelope id for the event (e.g. payment id for `payment.completed`, transfer / order id for `transfer.completed`, `transfer.canceled`, or `transfer.created`).","type":"string"},"failure_message":{"description":"Present when the attempt failed.","nullable":true,"type":"string"},"id":{"$ref":"#/components/schemas/ID"},"inserted_at":{"$ref":"#/components/schemas/DateTime"},"status_code":{"description":"HTTP status as string, or a short code such as `request_timeout`.","type":"string"},"subscription_id":{"$ref":"#/components/schemas/ID"}},"required":["id","event_id","subscription_id","attempt_number","status_code","inserted_at"],"title":"WebhookDeliveryLog","type":"object"},"Link":{"additionalProperties":false,"example":{"href":"/some-resource/2VZvtmVc2j3gQ80CTlcuQXbGrwC"},"properties":{"href":{"example":"/some-resource/2VZvtmVc2j3gQ80CTlcuQXbGrwC","type":"string"}},"required":["href"],"title":"Link","type":"object"},"CreateMint":{"additionalProperties":false,"properties":{"amount":{"description":"Amount to mint as a decimal string","type":"string"},"destination":{"$ref":"#/components/schemas/MintDestination"}},"required":["amount","destination"],"title":"CreateMint","type":"object"},"FinancialInstitutionStatusResponse":{"properties":{"financial_institution_id":{"description":"The ID of the financial institution","example":"fi_123456789","type":"string"},"last_updated":{"description":"Last update timestamp","example":"2024-01-15T10:30:00Z","format":"date_time","type":"string"},"needs_update":{"description":"Whether this FI needs Plaid reauthorization","example":false,"type":"boolean"},"status":{"description":"Current FI status","enum":["active","archived"],"example":"active","type":"string"}},"required":["needs_update","status","last_updated"],"title":"FinancialInstitutionStatusResponse","type":"object"},"IdentityDocumentTypeEnum":{"enum":["PASSPORT","DRIVER_LICENSE","NATIONAL_ID","PAN_CARD","ID_CARD","VOTER_ID_CARD","RESIDENT_CARD","GHANA_CARD","GHANA_SSNIT_CARD","KENYA_ALIEN_CARD","COLOMBIA_PPT"],"example":"DRIVER_LICENSE","title":"IdentityDocumentTypeEnum","type":"string"},"WebhookEventTypeList":{"additionalProperties":false,"properties":{"event_types":{"description":"Supported event types for new subscriptions, sorted by `event_type`.","items":{"$ref":"#/components/schemas/WebhookEventType"},"type":"array"}},"required":["event_types"],"title":"WebhookEventTypeList","type":"object"},"CreateExternalAddressRequest":{"additionalProperties":false,"oneOf":[{"$ref":"#/components/schemas/CreateExternalBlockchainAddressRequest"},{"$ref":"#/components/schemas/CreateExternalFinancialInstitutionRequest"}],"title":"CreateExternalAddressRequest","type":"object"},"BurnResponse":{"properties":{"amount":{"description":"Amount burned","type":"string"},"created_at":{"format":"date-time","type":"string"},"id":{"description":"Order ID","type":"string"},"source":{"$ref":"#/components/schemas/BurnSource"},"status":{"description":"Transaction status","type":"string"},"updated_at":{"format":"date-time","type":"string"}},"title":"BurnResponse","type":"object"},"AutomationList":{"additionalProperties":false,"properties":{"automations":{"items":{"$ref":"#/components/schemas/AutomationResponse"},"type":"array"},"pagination":{"allOf":[{"$ref":"#/components/schemas/Pagination"}],"nullable":true}},"required":["automations"],"title":"AutomationList","type":"object"},"WebhookEventType":{"additionalProperties":false,"properties":{"event_type":{"description":"Wire string to pass in `POST .../webhooks` body `events`.","type":"string"},"summary":{"description":"Human-readable description of when this event fires.","type":"string"}},"required":["event_type","summary"],"title":"WebhookEventType","type":"object"},"PagingParameters":{"description":"Paging query parameters","properties":{"after":{"type":"string"},"before":{"type":"string"},"size":{"format":"int32","maximum":1000,"minimum":1,"type":"integer"}},"title":"PagingParameters","type":"object"},"PaymentDetails":{"additionalProperties":false,"properties":{"fallback_at":{"format":"date-time","nullable":true,"type":"string"},"fallback_reason":{"nullable":true,"type":"string"},"fallback_reason_code":{"nullable":true,"type":"string"},"imad":{"nullable":true,"type":"string"},"original_transfer_type":{"nullable":true,"type":"string"},"payment_reference":{"nullable":true,"type":"string"},"received_at":{"format":"date-time","nullable":true,"type":"string"},"sender_bank_name":{"nullable":true,"type":"string"},"sender_bank_routing_number":{"nullable":true,"type":"string"},"sender_name":{"nullable":true,"type":"string"},"sent_at":{"format":"date-time","nullable":true,"type":"string"},"trace_number":{"nullable":true,"type":"string"}},"title":"PaymentDetails","type":"object"},"CreateAutomation":{"additionalProperties":false,"properties":{"brand":{"$ref":"#/components/schemas/AutomationBrandData"},"destination":{"$ref":"#/components/schemas/AutomationDestination"},"name":{"type":"string"},"source":{"$ref":"#/components/schemas/AutomationSource"}},"required":["name","source","destination"],"title":"CreateAutomation","type":"object"},"EndUserTosAttestation":{"additionalProperties":false,"properties":{"accepted_at":{"$ref":"#/components/schemas/DateTime"},"ip":{"example":"203.0.113.42","type":"string"},"user_agent":{"example":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:138.0) Gecko/20100101 Firefox/138.0","type":"string"},"version":{"example":"2025-04-01","type":"string"}},"required":["accepted_at"],"title":"EndUserTosAttestation","type":"object"},"BurnSource":{"properties":{"address_id":{"description":"Brale address ID","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain/chain name","type":"string"},"value_type":{"description":"Token ticker","type":"string"}},"required":["address_id","value_type","transfer_type"],"title":"BurnSource","type":"object"},"FinancialInstitutionV2":{"properties":{"account_number":{"description":"Masked account number showing only last 4 digits for security (format: ****1234). Full number never returned.","example":"****1234","nullable":true,"type":"string"},"account_type":{"enum":["checking","savings"],"example":"checking","nullable":true,"type":"string"},"bank_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"nullable":true},"beneficiary_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"nullable":true},"created":{"$ref":"#/components/schemas/DateTime"},"id":{"$ref":"#/components/schemas/ID"},"last_updated":{"description":"Last update timestamp","example":"2024-01-15T10:30:00Z","format":"date_time","type":"string"},"name":{"example":"First Last Bank","nullable":true,"type":"string"},"needs_update":{"description":"Whether this FI needs Plaid reauthorization","example":false,"type":"boolean"},"owner":{"description":"Beneficiary name for wire transfers (maps from POST request owner field)","example":"Jane Doe","nullable":true,"type":"string"},"ownership":{"description":"Ownership type of the financial institution","enum":["self-owned","customer-owned"],"example":"customer-owned","type":"string"},"routingNumber":{"example":"123456789","type":"string"},"status":{"enum":["active","archived"],"type":"string"},"transfer_types":{"items":{"example":"ach_debit","type":"string"},"nullable":true,"type":"array"}},"required":["id","name","routingNumber","status","created"],"title":"FinancialInstitutionV2","type":"object"},"AddressListV2":{"additionalProperties":false,"properties":{"addresses":{"items":{"$ref":"#/components/schemas/AddressV2"},"type":"array"},"pagination":{"allOf":[{"$ref":"#/components/schemas/Pagination"}],"nullable":true}},"required":["addresses"],"title":"AddressListV2","type":"object"},"MintsList":{"description":"List of mint transactions with pagination metadata","properties":{"mints":{"items":{"$ref":"#/components/schemas/MintResponse"},"type":"array"},"pagination":{"type":"object"}},"title":"MintsList","type":"object"},"AutomationsTransfer":{"allOf":[{"$ref":"#/components/schemas/BaseTransfer"},{"properties":{"automation_id":{"type":"string"}},"required":["automation_id"],"type":"object"}],"title":"AutomationsTransfer","type":"object"},"AutomationBrandData":{"additionalProperties":false,"properties":{"account_id":{"type":"string"}},"required":["account_id"],"title":"AutomationBrandData","type":"object"},"ApiError":{"additionalProperties":false,"properties":{"code":{"example":"ValidationError","type":"string"},"detail":{"nullable":true,"type":"string"},"id":{"nullable":true,"type":"string"},"links":{"additionalProperties":{"$ref":"#/components/schemas/Link"},"nullable":true,"type":"object"},"meta":{"additionalProperties":{"type":"string"},"nullable":true,"type":"object"},"source":{"nullable":true,"properties":{"parameter":{"example":"page[cursor]","type":"string"},"pointer":{"example":"/body/data/attributes","type":"string"}},"type":"object"},"status":{"example":"400","type":"string"},"title":{"example":"A validation error occurred","type":"string"}},"title":"ApiError","type":"object"},"WebhookDeliveryLogList":{"additionalProperties":false,"properties":{"deliveries":{"description":"Delivery attempts, newest `inserted_at` first.","items":{"$ref":"#/components/schemas/WebhookDeliveryLog"},"type":"array"},"pagination":{"$ref":"#/components/schemas/Pagination"}},"required":["deliveries","pagination"],"title":"WebhookDeliveryLogList","type":"object"},"Amount":{"additionalProperties":false,"properties":{"currency":{"example":"USD","type":"string"},"value":{"example":"11234.88","type":"string"}},"required":["value","currency"],"title":"Amount","type":"object"},"IndividualAddress":{"additionalProperties":false,"properties":{"city":{"example":"London","type":"string"},"country":{"description":"Postal country of the address. Coverage and verification read the individual's top-level `country`, not this field.","example":"GB","type":"string"},"state":{"description":"State, province, or region. When the individual's country is US this is required and must be a US state or territory, by abbreviation or full name (\"CA\", \"California\", \"PR\"). Optional and free-form otherwise.","example":"England","type":"string"},"street_line_1":{"example":"10 Downing St","type":"string"},"street_line_2":{"example":"Flat 2","type":"string"},"zip":{"description":"Postal code (any format)","example":"SW1A 2AA","type":"string"}},"required":["street_line_1","city","zip"],"title":"IndividualAddress","type":"object"},"TransfersList":{"description":"List of transfers with pagination metadata","properties":{"pagination":{"type":"object"},"transfers":{"items":{"$ref":"#/components/schemas/Transfer"},"type":"array"}},"title":"TransfersList","type":"object"},"Account":{"properties":{"created":{"$ref":"#/components/schemas/DateTime"},"id":{"$ref":"#/components/schemas/ID"},"name":{"example":"My Account","type":"string"},"status":{"enum":["complete","pending","rejected"],"type":"string"},"updated":{"$ref":"#/components/schemas/DateTime"}},"required":["id","name","status"],"title":"Account","type":"object"},"FinancialInstitutionListV2":{"additionalProperties":false,"properties":{"financial_institutions":{"items":{"$ref":"#/components/schemas/FinancialInstitutionV2"},"type":"array"}},"required":["financial_institutions"],"title":"FinancialInstitutionListV2","type":"object"},"AddressReference":{"additionalProperties":false,"properties":{"address":{"example":"0xb518d4d6221d9a41d23d71cbce8e106e7aab8f9b","type":"string"},"id":{"$ref":"#/components/schemas/ID"}},"required":["id","address"],"title":"AddressReference","type":"object"},"BrandData":{"additionalProperties":false,"nullable":true,"properties":{"account_id":{"type":"string"}},"required":["account_id"],"title":"BrandData","type":"object"},"ID":{"description":"ID of the resource","example":"2VZvtmVc2j3gQ80CTlcuQXbGrwC","title":"ID","type":"string"},"CreateBurn":{"additionalProperties":false,"example":{"amount":"1000","note":"Monthly burn for Q1 2024","source":{"address_id":"2zbcDT1E1K6xjuYT","transfer_type":"solana","value_type":"eSDR"}},"properties":{"amount":{"description":"Amount to burn as a decimal string","example":"1000.50","type":"string"},"note":{"maxLength":255,"type":"string"},"source":{"$ref":"#/components/schemas/BurnSource"}},"required":["amount","source"],"title":"CreateBurn","type":"object"},"Transfer":{"additionalProperties":false,"discriminator":{"propertyName":"transferType"},"oneOf":[{"$ref":"#/components/schemas/BaseTransfer"},{"$ref":"#/components/schemas/AutomationsTransfer"},{"$ref":"#/components/schemas/TransferWithWireInstructions"}],"title":"Transfer","type":"object"},"CreateExternalBlockchainAddressRequest":{"additionalProperties":false,"properties":{"address":{"example":"0xb518d4d6221d9a41d23d71cbce8e106e7aab8f9b","type":"string"},"name":{"example":"Company External EVM Address","nullable":true,"type":"string"},"ownership":{"description":"Ownership type of the address","enum":["self-owned","customer-owned"],"type":"string"},"transfer_types":{"items":{"example":"solana","type":"string"},"type":"array"}},"required":["name","address","transfer_types"],"title":"CreateExternalBlockchainAddressRequest","type":"object"},"LinkTokenResponse":{"properties":{"callback_url":{"description":"The URL to POST the public token tox after Plaid Link completion to register the account","example":"http://localhost:4000/financial_institutions/register_account","type":"string"},"expiration":{"description":"ISO 8601 timestamp when the link token expires","example":"2024-01-01T12:00:00Z","type":"string"},"link_token":{"description":"The Plaid link token for bank authentication","example":"link-sandbox-123456789","type":"string"}},"required":["link_token","expiration","callback_url"],"title":"LinkTokenResponse","type":"object"},"TokenizationTransfersList":{"description":"List of tokenization transfer transactions with pagination metadata","properties":{"pagination":{"type":"object"},"transfers":{"items":{"$ref":"#/components/schemas/TokenizationTransferResponse"},"type":"array"}},"title":"TokenizationTransfersList","type":"object"},"RegisterAccountResponse":{"properties":{"financial_institution_id":{"description":"The ID of the created financial institution","example":"fi_123456789","type":"string"}},"required":["financial_institution_id"],"title":"RegisterAccountResponse","type":"object"},"PaymentData":{"additionalProperties":false,"properties":{"ach_description":{"description":"Description for an ACH payment, which the counterparty's bank may show on the statement. Set it on the ACH leg: `source` when funding from a bank (debit), `destination` when paying out to one (credit). Characters the ACH network does not carry are removed and the value is trimmed, then the leading 10 characters of the result are sent as the Nacha company entry description. A value that is empty once sanitized is not rejected; it falls back to PAYOUT for a credit or PAYMENT for a debit. Applicable to ACH transfers only.","maxLength":255,"nullable":true,"type":"string"},"address_id":{"type":"string"},"financial_institution_id":{"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"},"wire_memo":{"description":"OBI memo sent to the receiving bank. Applicable to wire transfers only.","nullable":true,"type":"string"}},"required":["value_type","transfer_type"],"title":"PaymentData","type":"object"},"AutomationSourceWithFundingInstructions":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/AutomationSource"},{"properties":{"funding_instructions":{"$ref":"#/components/schemas/FundingInstructions"}},"type":"object"}],"title":"AutomationSourceWithFundingInstructions","type":"object"},"IndividualIdentity":{"additionalProperties":false,"properties":{"number":{"description":"The identity number.","example":"123-45-6789","type":"string"},"type":{"description":"The identity number type.","enum":["SSN9","SSN4","DRIVER_LICENSE","PASSPORT","NATIONAL_ID","VOTER_ID","BVN","NIN","NIN_SLIP","SSNIT","TAX_ID","KENYA_KRA_PIN","ALIEN_CARD","RESIDENT_ID","COLOMBIA_PPT","GHANA_CARD_NUMBER"],"example":"SSN9","type":"string"}},"required":["number","type"],"title":"IndividualIdentity","type":"object"},"ControllingParty":{"additionalProperties":false,"properties":{"address":{"$ref":"#/components/schemas/ControllingPartyAddress"},"dob":{"example":"YYYY-MM-DD","type":"string"},"email":{"example":"a@b.com","type":"string"},"first_name":{"example":"John","type":"string"},"identity":{"allOf":[{"$ref":"#/components/schemas/IndividualIdentity"}],"description":"Typed identity document (number and type). Required for a party outside the US. Mutually exclusive with `ssn`.","nullable":true},"last_name":{"example":"Doe","type":"string"},"ownership_percentage":{"example":40,"nullable":true,"type":"number"},"phone_number":{"example":"515-555-1212","type":"string"},"ssn":{"description":"US Social Security Number. Required for a US party unless `identity` is supplied; not accepted for a party outside the US.","example":"123-45-6789","type":"string"}},"required":["first_name","last_name","dob","address","email","phone_number"],"title":"ControllingParty","type":"object"},"BaseTransfer":{"additionalProperties":false,"properties":{"amount":{"$ref":"#/components/schemas/Amount"},"created_at":{"$ref":"#/components/schemas/DateTime"},"destination":{"$ref":"#/components/schemas/PaymentDataView"},"failure":{"allOf":[{"$ref":"#/components/schemas/Failure"}],"nullable":true},"funding_simulated":{"description":"When true, inbound ACH funding was simulated for testnet or sandbox rather than submitted to Dwolla","type":"boolean"},"id":{"$ref":"#/components/schemas/ID"},"note":{"type":"string"},"source":{"$ref":"#/components/schemas/PaymentDataView"},"status":{"enum":["pending","processing","complete","canceled","failed","compliance review"],"type":"string"},"updated_at":{"$ref":"#/components/schemas/DateTime"}},"title":"BaseTransfer","type":"object"},"RegisterAccountAddressResponse":{"properties":{"address_id":{"description":"The ID of the created address","example":"addr_123456789","type":"string"}},"required":["address_id"],"title":"RegisterAccountAddressResponse","type":"object"},"MintResponse":{"properties":{"amount":{"description":"Amount minted","type":"string"},"created_at":{"format":"date-time","type":"string"},"destination":{"$ref":"#/components/schemas/MintDestination"},"id":{"description":"Order ID","type":"string"},"status":{"description":"Transaction status","type":"string"},"updated_at":{"format":"date-time","type":"string"}},"title":"MintResponse","type":"object"},"TransferDestination":{"properties":{"address_id":{"description":"Destination Brale address ID","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain/chain name","type":"string"},"value_type":{"description":"Token ticker","type":"string"}},"required":["address_id","value_type","transfer_type"],"title":"TransferDestination","type":"object"},"BurnsList":{"description":"List of burn transactions with pagination metadata","properties":{"burns":{"items":{"$ref":"#/components/schemas/BurnResponse"},"type":"array"},"pagination":{"type":"object"}},"title":"BurnsList","type":"object"},"AddressBalance":{"additionalProperties":false,"properties":{"address":{"$ref":"#/components/schemas/AddressReference"},"balance":{"$ref":"#/components/schemas/Amount"},"transfer_type":{"example":"Solana","type":"string"},"value_type":{"example":"USDC","type":"string"}},"required":["value","currency"],"title":"AddressBalance","type":"object"},"BasePaymentData":{"additionalProperties":false,"properties":{"payment_details":{"allOf":[{"$ref":"#/components/schemas/PaymentDetails"}],"nullable":true},"requested_transfer_type":{"nullable":true,"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"}},"required":["value_type","transfer_type"],"title":"BasePaymentData","type":"object"},"AutomationResponse":{"additionalProperties":false,"allOf":[{"properties":{"brand":{"$ref":"#/components/schemas/AutomationBrandData"},"created_at":{"$ref":"#/components/schemas/DateTime"},"destination":{"$ref":"#/components/schemas/AutomationDestination"},"id":{"$ref":"#/components/schemas/ID"},"name":{"type":"string"},"source":{"$ref":"#/components/schemas/AutomationSourceWithFundingInstructions"},"status":{"enum":["pending","active","disabled","archived"],"type":"string"},"updated_at":{"$ref":"#/components/schemas/DateTime"}},"required":["name","status","source","destination"],"type":"object"}],"title":"AutomationResponse","type":"object"},"Pagination":{"description":"Pagination information for list endpoints","properties":{"next":{"description":"Cursor for the next page of results","nullable":true,"type":"string"},"page_size":{"description":"Number of items per page","type":"integer"},"prev":{"description":"Cursor for the previous page of results","nullable":true,"type":"string"}},"title":"Pagination","type":"object"},"WebhookSubscription":{"additionalProperties":false,"properties":{"events":{"items":{"type":"string"},"type":"array"},"id":{"$ref":"#/components/schemas/ID"},"status":{"description":"Subscription lifecycle: active deliveries or archived (no longer used).","enum":["active","archived"],"type":"string"},"url":{"type":"string"}},"required":["id","events","url","status"],"title":"WebhookSubscription","type":"object"},"FundingInstructions":{"additionalProperties":false,"properties":{"account_number":{"type":"string"},"bank_address":{"type":"string"},"bank_name":{"type":"string"},"beneficiary_address":{"type":"string"},"beneficiary_name":{"type":"string"},"routing_number":{"type":"string"}},"required":["bank_name","bank_address","account_number","routing_number","beneficiary_name","beneficiary_address"],"title":"FundingInstructions","type":"object"},"TokenizationTransferResponse":{"properties":{"amount":{"description":"Amount transferred","type":"string"},"created_at":{"format":"date-time","type":"string"},"destination":{"properties":{"address":{"description":"Destination blockchain address","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain name","type":"string"}},"type":"object"},"id":{"description":"Order ID","type":"string"},"source":{"properties":{"address":{"description":"Source blockchain address","type":"string"},"transaction_id":{"description":"On-chain transaction hash","nullable":true,"type":"string"},"transfer_type":{"description":"Blockchain name","type":"string"}},"type":"object"},"status":{"description":"Transaction status","type":"string"},"updated_at":{"format":"date-time","type":"string"}},"title":"TokenizationTransferResponse","type":"object"},"AddressPaymentDataWithTransaction":{"additionalProperties":false,"properties":{"address_id":{"type":"string"},"transaction_id":{"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"}},"required":["value_type","transfer_type","address_id"],"title":"AddressPaymentDataWithTransaction","type":"object"},"PatchAccountDocumentsRequest":{"additionalProperties":false,"properties":{"doc_submission_ids":{"items":{"$ref":"#/components/schemas/ID"},"minItems":1,"type":"array"}},"required":["doc_submission_ids"],"title":"PatchAccountDocumentsRequest","type":"object"},"CreateInternalBlockchainAddressRequest":{"additionalProperties":false,"properties":{"name":{"example":"Company Internal EVM Address","nullable":true,"type":"string"},"transfer_types":{"description":"Transfer types for the custodial address. All must belong to the same environment (e.g. [\"ethereum\", \"polygon\"] for EVM). Must be non-empty.","items":{"example":"ethereum","type":"string"},"type":"array"}},"required":["name","transfer_types"],"title":"CreateInternalBlockchainAddressRequest","type":"object"},"DocumentRequirement":{"additionalProperties":false,"properties":{"display_name":{"example":"Government-issued photo ID","type":"string"},"document_kind":{"$ref":"#/components/schemas/DocumentKindEnum"},"document_type":{"enum":["business_document","individual_document","misc_document"],"type":"string"},"person_label":{"example":"Jane Doe","nullable":true,"type":"string"},"status":{"enum":["pending_upload","uploaded"],"type":"string"}},"required":["document_kind","document_type","display_name","status"],"title":"DocumentRequirement","type":"object"},"WebhookReplayAccepted":{"additionalProperties":false,"properties":{"jobIds":{"description":"Oban job ids for scheduled replay deliveries (one per active subscription for the event type).","items":{"type":"string"},"type":"array"},"status":{"description":"Replay delivery jobs were accepted for processing.","enum":["queued"],"type":"string"}},"required":["status","jobIds"],"title":"WebhookReplayAccepted","type":"object"},"UpdateExternalAddressRequest":{"additionalProperties":false,"properties":{"additional_transfer_types":{"items":{"example":"solana","type":"string"},"type":"array"},"bank_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"description":"For bank (financial institution) addresses only. Supply before adding wire to additional_transfer_types.","nullable":true},"beneficiary_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"description":"For bank (financial institution) addresses only. Supply before adding wire to additional_transfer_types.","nullable":true},"name":{"example":"Company External EVM Address","nullable":true,"type":"string"},"status":{"enum":["active","archived"],"nullable":true,"type":"string"}},"title":"UpdateExternalAddressRequest","type":"object"},"CreateTransfer":{"additionalProperties":false,"properties":{"amount":{"$ref":"#/components/schemas/Amount"},"brand":{"$ref":"#/components/schemas/BrandData"},"destination":{"$ref":"#/components/schemas/PaymentData"},"note":{"maxLength":255,"type":"string"},"source":{"$ref":"#/components/schemas/PaymentData"}},"required":["amount","source","destination"],"title":"CreateTransfer","type":"object"},"CreateExternalFinancialInstitutionRequest":{"additionalProperties":false,"properties":{"account_number":{"example":"123456789","type":"string"},"account_type":{"example":"checking","type":"string"},"bank_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"description":"Bank street address. Optional for ach_credit, same_day_ach_credit, and rtp_credit. Required when transfer_types includes wire.","nullable":true},"beneficiary_address":{"allOf":[{"$ref":"#/components/schemas/USStreetAddress"}],"description":"Beneficiary street address. Optional for ach_credit, same_day_ach_credit, and rtp_credit. Required when transfer_types includes wire.","nullable":true},"name":{"example":"First Last Bank","type":"string"},"owner":{"example":"Jane Doe","type":"string"},"ownership":{"description":"Ownership type of the financial institution","enum":["self-owned","customer-owned"],"example":"customer-owned","type":"string"},"routing_number":{"example":"123456789","type":"string"},"transfer_types":{"description":"Transfer types to support for this financial institution. When wire is included, bank_address and beneficiary_address are required.","example":["ach_credit","wire"],"items":{"example":"ach_debit","type":"string"},"minItems":1,"type":"array"}},"required":["owner","account_number","routing_number","account_type","transfer_types"],"title":"CreateExternalFinancialInstitutionRequest","type":"object"},"AddressPaymentData":{"additionalProperties":false,"properties":{"address_id":{"type":"string"},"transfer_type":{"type":"string"},"value_type":{"type":"string"}},"required":["value_type","transfer_type","address_id"],"title":"AddressPaymentData","type":"object"}},"securitySchemes":{"oauth":{"flows":{"clientCredentials":{"scopes":{"addresses:read":"Read address details","financial-institutions:read":"Read financial institution details","mints:write":"Mint more of a specific token on chain","orders:read":"Read order details","redemptions:write":"Redeem/burn a particular token on a specific chain","self_attested_tokens:burn":"Burn attested tokens (tokenization accounts only)","self_attested_tokens:mint":"Mint attested tokens (tokenization accounts only)","self_attested_tokens:transfer":"Transfer attested tokens (tokenization accounts only)","tokens:read":"Read token details","webhooks:read":"Read webhook subscriptions","webhooks:write":"Create and manage webhook subscriptions"},"tokenUrl":"https://auth.brale.xyz/oauth2/token"}},"type":"oauth2"}}},"info":{"contact":{"email":"support@brale.xyz","name":"Brale API Support"},"description":"Update this with a description. Can we use markdown in this section?","termsOfService":"https://brale.xyz/legal","title":"Brale API","version":"1.0"},"openapi":"3.0.3","paths":{"/accounts/{account_id}/verification/documents":{"get":{"callbacks":{},"operationId":"list_verification_documents","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerificationDocumentsList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["accounts:read"]}],"summary":"List required verification documents","tags":["Accounts"]}},"/accounts/{account_id}/webhooks":{"get":{"callbacks":{},"operationId":"list_webhook_subscriptions","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookSubscriptionList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["webhooks:read"]}],"summary":"List webhook subscriptions","tags":["Webhooks"]},"post":{"callbacks":{},"description":"Registers a destination URL and one or more event types. The signing secret is returned once in the response.","operationId":"create_webhook_subscription","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWebhookSubscription"}}},"description":"Create webhook subscription","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookSubscriptionCreated"}}},"description":"Created","headers":{"location":{"schema":{"type":"string"},"style":"simple"}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"}},"security":[{"oauth":["webhooks:write","webhooks:read"]}],"summary":"Create webhook subscription","tags":["Webhooks"]}},"/accounts/{account_id}/addresses/{address_id}/update-link-token":{"post":{"callbacks":{},"operationId":"create_update_link_token (2)","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Financial Institution ID","in":"path","name":"fi_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLinkTokenRequest"}}},"description":"Update link token request body","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkTokenResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["financial-institutions:read"]}],"summary":"Create update link token for existing financial institution","tags":["Financial Institutions"]}},"/accounts/{account_id}/tokens/burns/{burn_id}":{"get":{"callbacks":{},"description":"Retrieve a specific burn transaction by ID.","operationId":"get_burn","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Burn ID","in":"path","name":"burn_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BurnResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"Get Burn","tags":["Orders"]}},"/accounts":{"get":{"callbacks":{},"operationId":"list_accounts","parameters":[{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountList"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["accounts:read"]}],"summary":"List accounts managed by organization","tags":["Accounts"]},"post":{"callbacks":{},"operationId":"create_account","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAccountRequest"}}},"description":"Create account request body (business or individual)","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Account"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Service Unavailable"}},"security":[{"oauth":["accounts:write"]}],"summary":"Creates an account managed by organization","tags":["Accounts"]}},"/accounts/{account_id}":{"get":{"callbacks":{},"operationId":"get_account","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Account"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["accounts:read"]}],"summary":"Get individual account","tags":["Accounts"]},"patch":{"callbacks":{},"operationId":"patch_account_documents","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchAccountDocumentsRequest"}}},"description":"Patch account documents request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Account"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"}},"security":[{"oauth":["accounts:write"]}],"summary":"Link staged verification documents to an account","tags":["Accounts"]}},"/accounts/{account_id}/transfers":{"get":{"callbacks":{},"description":"Returns all transfers for the specified account.","operationId":"list_transfers","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}},{"description":"On-chain transaction hash","in":"query","name":"transaction_id","required":false,"schema":{"type":"string"}},{"description":"Filter transfers created by a specific automation","in":"query","name":"automation_id","required":false,"schema":{"type":"string"}},{"description":"Filter transfers by status","in":"query","name":"status","required":false,"schema":{"enum":["pending","processing","complete","canceled"],"type":"string"}},{"description":"Filter transfers by address ID","in":"query","name":"address_id","required":false,"schema":{"type":"string"}},{"description":"Filter transfers by blockchain chain (e.g. solana, base, ethereum). Fiat payment types (e.g. same_day_ach_credit, wire) are not supported as filter values.","in":"query","name":"transfer_type","required":false,"schema":{"type":"string"}},{"description":"Filter transfers by token ticker (e.g. USDC, SBC)","in":"query","name":"value_type","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransfersList"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["transfers:read"]}],"summary":"List transfers for an account","tags":["Orders"]},"post":{"callbacks":{},"description":"Create Transfer","operationId":"create_transfer","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTransfer"}}},"description":"Create transfer request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Transfer"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["transfers:write"]}],"summary":"Create Transfer","tags":["Orders"]}},"/accounts/{account_id}/wire-instructions":{"get":{"callbacks":{},"operationId":"get_wire_instructions","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Wire instructions"},"202":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Provisioning"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["automations:read"]}],"summary":"Get wire instructions for brale account","tags":["Accounts"]}},"/accounts/{account_id}/webhooks/event_types":{"get":{"callbacks":{},"description":"Returns the event type strings (and short descriptions) that may be passed in `POST .../webhooks` `events` when creating a subscription.","operationId":"list_webhook_event_types","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEventTypeList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["webhooks:read"]}],"summary":"List supported webhook event types","tags":["Webhooks"]}},"/accounts/{account_id}/financial-institutions/register-account":{"post":{"callbacks":{},"description":"Registers a financial institution account using Plaid public token","operationId":"register_account","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterAccountRequest"}}},"description":"Register account request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterAccountResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:write"]}],"summary":"Register financial institution account","tags":["Financial Institutions"]}},"/accounts/{account_id}/financial-institutions/{fi_id}":{"get":{"callbacks":{},"operationId":"get_account_financial_institution","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"FinancialInstitution ID","in":"path","name":"fi_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FinancialInstitutionV2"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:read"]}],"summary":"Get individual financial institution","tags":["Financial Institutions"]}},"/accounts/{account_id}/plaid/register-account":{"post":{"callbacks":{},"description":"Registers a financial institution account using Plaid public token and returns the address ID","operationId":"register_account_to_address_id","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterAccountWithTransferTypesRequest"}}},"description":"Register account request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterAccountAddressResponse"}}},"description":"Created","headers":{"location":{"schema":{"type":"string"},"style":"simple"}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:write"]}],"summary":"Register financial institution account via Plaid and return address ID","tags":["Financial Institutions"]}},"/accounts/{account_id}/plaid/link_token":{"post":{"callbacks":{},"description":"Creates a Plaid link token for bank authentication","operationId":"create_plaid_link_token (2)","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLinkTokenRequest"}}},"description":"Create link token request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkTokenResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:write"]}],"summary":"Create Plaid link token","tags":["Financial Institutions"]}},"/accounts/{account_id}/webhooks/events/{event_id}/resend":{"post":{"callbacks":{},"description":"Queues one outbound replay delivery job per **active** webhook subscription for this account that subscribes to the event type of the given **`event_id`** (canonical envelope id; e.g. payment id for `payment.completed`, order id for `transfer.completed`, `transfer.canceled`, or `transfer.failed`). Requires **`Idempotency-Key`**. Payload is taken from `webhook_event_payloads` when present, otherwise rebuilt from domain data.","operationId":"replay_webhook_event","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Canonical webhook event id (envelope `id`; e.g. payment id for `payment.completed`, order id for transfer events)","in":"path","name":"event_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookReplayAccepted"}}},"description":"Accepted","headers":{"content-location":{"schema":{"type":"string"},"style":"simple"}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Service Unavailable"}},"security":[{"oauth":["webhooks:write","webhooks:read"]}],"summary":"Replay webhook deliveries for an event","tags":["Webhooks"]}},"/accounts/{account_id}/automations":{"get":{"callbacks":{},"description":"Get Automations","operationId":"get_automations","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters. Omit to return every automation.","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationList"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["automations:read"]}],"summary":"Get Automations","tags":["Automations"]},"post":{"callbacks":{},"description":"Create Automation","operationId":"create_automation","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAutomation"}}},"description":"Create Automation request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"}},"security":[{"oauth":["automations:write"]}],"summary":"Create Automation","tags":["Automations"]}},"/documents":{"post":{"callbacks":{},"operationId":"create_document_submission","parameters":[],"requestBody":{"content":{"multipart/form-data":{"schema":{"properties":{"document_kind":{"$ref":"#/components/schemas/DocumentKindEnum"},"file":{"description":"The document image or PDF. For a two-sided identity document, its front.","format":"binary","type":"string"},"file_back":{"description":"The reverse side of a two-sided identity document. Required when identity_document_type is one of: DRIVER_LICENSE, NATIONAL_ID, ID_CARD, VOTER_ID_CARD, RESIDENT_CARD. Accepted for any other identity document type but not required. Not accepted for a business document.","format":"binary","nullable":true,"type":"string"},"identity_document_type":{"$ref":"#/components/schemas/IdentityDocumentTypeEnum"},"person_label":{"nullable":true,"type":"string"}},"required":["file","document_kind"],"type":"object"}}},"description":"Document submission upload","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentSubmissionCreated"}}},"description":"Created","headers":{"location":{"schema":{"type":"string"},"style":"simple"}}},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"}},"security":[{"oauth":["accounts:write"]}],"summary":"Stage a verification document for later linking","tags":["Accounts"]}},"/accounts/{account_id}/webhooks/deliveries":{"get":{"callbacks":{},"description":"Returns outbound delivery attempts for webhook subscriptions owned by the account, newest first, with cursor pagination (`page[size]`, and either `page[after]` or `page[before]` — not both).","operationId":"list_webhook_deliveries","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookDeliveryLogList"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["webhooks:read"]}],"summary":"List webhook delivery logs","tags":["Webhooks"]}},"/accounts/{account_id}/webhooks/{subscription_id}":{"get":{"callbacks":{},"operationId":"get_webhook_subscription","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Webhook subscription ID","in":"path","name":"subscription_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookSubscription"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["webhooks:read"]}],"summary":"Get webhook subscription","tags":["Webhooks"]}},"/accounts/{account_id}/financial-institutions/{fi_id}/status":{"get":{"callbacks":{},"operationId":"get_financial_institution_status","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Financial Institution ID","in":"path","name":"fi_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FinancialInstitutionStatusResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["financial-institutions:read"]}],"summary":"Get financial institution status and update requirements","tags":["Financial Institutions"]}},"/accounts/{account_id}/transfers/{transfer_id}":{"get":{"callbacks":{},"operationId":"get_transfer","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Transfer ID","in":"path","name":"transfer_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Transfer"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["transfers:read"]}],"summary":"Get Transfer","tags":["Orders"]}},"/accounts/{account_id}/webhooks/subscriptions/{subscription_id}":{"delete":{"callbacks":{},"description":"Sets an **active** subscription to **archived** so it no longer receives webhooks. Event subscriptions and delivery history are retained. Returns **409** if the subscription is already archived.","operationId":"delete_webhook_subscription","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Webhook subscription ID","in":"path","name":"subscription_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"204":{"description":"No Content"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"}},"security":[{"oauth":["webhooks:write"]}],"summary":"Archive webhook subscription","tags":["Webhooks"]},"patch":{"callbacks":{},"description":"Updates URL and/or subscribed event types for an **active** subscription. When `events` is sent, it replaces the full set. **Archived** subscriptions return **409**.","operationId":"update_webhook_subscription","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Webhook subscription ID","in":"path","name":"subscription_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWebhookSubscription"}}},"description":"Update webhook subscription","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookSubscription"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"}},"security":[{"oauth":["webhooks:write","webhooks:read"]}],"summary":"Update webhook subscription","tags":["Webhooks"]}},"/accounts/{account_id}/tokens/transfers/{transfer_id}":{"get":{"callbacks":{},"description":"Retrieve a specific tokenization transfer transaction by ID.","operationId":"get_tokenization_transfer","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Transfer ID","in":"path","name":"transfer_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenizationTransferResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"Get Tokenization Transfer","tags":["Orders"]}},"/accounts/{account_id}/addresses/{address_id}":{"get":{"callbacks":{},"operationId":"get_account_address","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Address ID","in":"path","name":"address_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressV2"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["addresses:read"]}],"summary":"Get individual address for account","tags":["Addresses"]},"patch":{"callbacks":{},"operationId":"update_account_address","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Address ID","in":"path","name":"address_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExternalAddressRequest"}}},"description":"Update address request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressV2"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["addresses:write"]}],"summary":"Update address details for an account","tags":["Addresses"]}},"/accounts/{account_id}/financial-institutions":{"get":{"callbacks":{},"description":"Returns all financial institutions you have added to your account to receive wired funds.","operationId":"list_account_financial_institutions","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FinancialInstitutionListV2"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["financial-institutions:read"]}],"summary":"List financial institutions V2","tags":["Financial Institutions"]}},"/accounts/{account_id}/financial-institutions/plaid/link_token":{"post":{"callbacks":{},"description":"Creates a Plaid link token for bank authentication","operationId":"create_plaid_link_token","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLinkTokenRequest"}}},"description":"Create link token request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkTokenResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:write"]}],"summary":"Create Plaid link token","tags":["Financial Institutions"]}},"/accounts/{account_id}/addresses":{"get":{"callbacks":{},"description":"Returns wallet addresses associated with your account, including custodial wallets and EOAs. Archived custodial (internal) addresses are omitted.","operationId":"list_account_addresses","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Filter by onchain address (case-insensitive)","in":"query","name":"address","required":false,"schema":{"example":"0xb518d4d6221d9a41d23d71cbce8e106e7aab8f9b","type":"string"}},{"description":"Filter by address type","in":"query","name":"type","required":false,"schema":{"enum":["internal","external"],"example":"internal","type":"string"}},{"description":"Filter by transfer type (can be specified multiple times for OR logic)","in":"query","name":"transfer_type","required":false,"schema":{"example":"ethereum","type":"string"}},{"description":"Pagination parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressListV2"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["addresses:read"]}],"summary":"List addresses for account","tags":["Addresses"]}},"/accounts/{account_id}/addresses/internal":{"post":{"callbacks":{},"description":"Provisions a new custodial (internal) address for the given account and environment. The first custodial address created for an account/environment combination is marked as primary.","operationId":"create_internal_address","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInternalBlockchainAddressRequest"}}},"description":"Create internal address request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressV2"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Service Unavailable"}},"security":[{"oauth":["addresses:write"]}],"summary":"Provision internal (custodial) address","tags":["Addresses"]}},"/accounts/{account_id}/tokens/mints/{mint_id}":{"get":{"callbacks":{},"description":"Retrieve a specific mint transaction by ID.","operationId":"get_mint","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Mint ID","in":"path","name":"mint_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MintResponse"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"Get Mint","tags":["Orders"]}},"/accounts/{account_id}/financial-institutions/{fi_id}/update-link-token":{"post":{"callbacks":{},"operationId":"create_update_link_token","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Financial Institution ID","in":"path","name":"fi_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLinkTokenRequest"}}},"description":"Update link token request body","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkTokenResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["financial-institutions:read"]}],"summary":"Create update link token for existing financial institution","tags":["Financial Institutions"]}},"/accounts/{account_id}/tokens/burns":{"get":{"callbacks":{},"description":"List all burn transactions for a tokenization account. Supports pagination and filtering.","operationId":"list_burns","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}},{"description":"Filter by on-chain transaction hash","in":"query","name":"transaction_id","required":false,"schema":{"type":"string"}},{"description":"Filter by token ticker","in":"query","name":"value_type","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BurnsList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"List Burns","tags":["Orders"]},"post":{"callbacks":{},"description":"Burn (destroy) tokens from an address. Only available for tokenization/self-attested accounts.","operationId":"create_burn","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBurn"}}},"description":"Burn request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BurnResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["self_attested_tokens:burn"]}],"summary":"Burn Tokens","tags":["Orders"]}},"/accounts/{account_id}/tokens/mints":{"get":{"callbacks":{},"description":"List all mint transactions for a tokenization account. Supports pagination and filtering.","operationId":"list_mints","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}},{"description":"Filter by on-chain transaction hash","in":"query","name":"transaction_id","required":false,"schema":{"type":"string"}},{"description":"Filter by token ticker","in":"query","name":"value_type","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MintsList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"List Mints","tags":["Orders"]},"post":{"callbacks":{},"description":"Mint (create) new tokens. Only available for tokenization/self-attested accounts.","operationId":"create_mint","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateMint"}}},"description":"Mint request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MintResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["self_attested_tokens:mint"]}],"summary":"Mint Tokens","tags":["Orders"]}},"/accounts/{account_id}/addresses/external":{"post":{"callbacks":{},"description":"Creates a record of an external address that can be used to receive funds.","operationId":"create_external_address","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalAddressRequest"}}},"description":"Create address request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressV2"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["addresses:write"]}],"summary":"Create external address","tags":["Addresses"]}},"/accounts/{account_id}/automations/{automation_id}":{"get":{"callbacks":{},"description":"Get Automation","operationId":"get_automation","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Automation ID","in":"path","name":"automation_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["automations:read"]}],"summary":"Get Automation","tags":["Automations"]},"patch":{"callbacks":{},"description":"Disable or archive an Automation","operationId":"update_automation_status","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Automation ID","in":"path","name":"automation_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAutomationStatus"}}},"description":"Update Automation Status request body","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutomationResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"},"502":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Upstream service error"}},"security":[{"oauth":["automations:write"]}],"summary":"Update Automation Status","tags":["Automations"]}},"/accounts/{account_id}/balance/enable":{"post":{"callbacks":{},"operationId":"enable_balance","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Active"},"202":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Provisioning"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unprocessable Entity"},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Service Unavailable"}},"security":[{"oauth":["automations:write"]}],"summary":"Enable wire deposits for an account","tags":["Accounts"]}},"/accounts/{account_id}/addresses/{address_id}/balance":{"get":{"callbacks":{},"operationId":"get_address_token_balance","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Address ID","in":"path","name":"address_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Transfer type","in":"query","name":"transfer_type","required":false,"schema":{"type":"string"}},{"description":"Value type","in":"query","name":"value_type","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddressBalance"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["addresses:read"]}],"summary":"Get token balance for a given address on a specific chain","tags":["Addresses"]}},"/accounts/{account_id}/financial-institutions/external":{"post":{"callbacks":{},"description":"Creates a record of an external financial institution that can be used to receive funds.","operationId":"create_external_financial_institution","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalFinancialInstitutionRequest"}}},"description":"Create external financial institution request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FinancialInstitutionV2"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Conflict"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Unknown"}},"security":[{"oauth":["financial-institutions:write"]}],"summary":"Create External financial institution","tags":["Financial Institutions"]}},"/accounts/{account_id}/tokens/transfers":{"get":{"callbacks":{},"description":"List all tokenization transfer transactions for a tokenization account. Supports pagination and filtering.","operationId":"list_tokenization_transfers","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}},{"description":"Paging query parameters","in":"query","name":"page","required":false,"schema":{"$ref":"#/components/schemas/PagingParameters"}},{"description":"Filter by on-chain transaction hash","in":"query","name":"transaction_id","required":false,"schema":{"type":"string"}},{"description":"Filter by token ticker","in":"query","name":"value_type","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenizationTransfersList"}}},"description":"OK"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Not Found"}},"security":[{"oauth":["self_attested_tokens:read"]}],"summary":"List Tokenization Transfers","tags":["Orders"]},"post":{"callbacks":{},"description":"Transfer attested tokens between addresses on the same blockchain. Only available for tokenization/self-attested accounts.","operationId":"create_tokenization_transfer","parameters":[{"description":"Account ID","in":"path","name":"account_id","required":true,"schema":{"$ref":"#/components/schemas/ID"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTokenizationTransfer"}}},"description":"Transfer request body","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenizationTransferResponse"}}},"description":"OK"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorV2"}}},"description":"Bad Request"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Failure"}}},"description":"Forbidden"}},"security":[{"oauth":["self_attested_tokens:transfer"]}],"summary":"Transfer Tokens","tags":["Orders"]}}},"security":[],"servers":[{"url":"https://api.brale.xyz","variables":{}}],"tags":[]} \ No newline at end of file diff --git a/packages/brale/src/spec.ts b/packages/brale/src/spec.ts index 3ef5476..b280605 100644 --- a/packages/brale/src/spec.ts +++ b/packages/brale/src/spec.ts @@ -35,10 +35,10 @@ export const SPEC_SOURCE_URL: string = 'https://api.brale.xyz/openapi' * compares against this so a no-op refresh is visibly a no-op. */ export const SPEC_SHA256: string = - '9c74b137981b0a98efedcc72ea3bb08acd2ab6bab6012e60ff83b98e826503fb' + 'fd1edeaad80666809e719034c20042c7ed26c3fb13e9c05828e27ed8367c0857' /** When `SPEC_SHA256` was observed at `SPEC_SOURCE_URL`. */ -export const SPEC_FETCHED_AT: string = '2026-09-09' +export const SPEC_FETCHED_AT: string = '2026-09-19' /** The single server the document advertises, and the only API host this CLI talks to. */ export const BRALE_API_BASE_URL: string = 'https://api.brale.xyz'