{"openapi":"3.1.0","info":{"title":"Lithic (BYOK) API","version":"0.1.0","description":"Lithic (BYOK) lets an AI assistant read your own Lithic data through the Lithic API with a key you supply (production API key (sent as the Authorization header)). Read-only: 10 tools (list_cards, get_card, list_accounts, list_financial_accounts, list_balances, list_account_activity, list_payments, list_book_transfers, list_disputes, list_events). The BYOK key travels with each request, is used...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-lithic.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-lithic/docs"},"termsOfService":"https://connectorbay.com/byok-lithic/terms"},"servers":[{"url":"https://byok-lithic.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-lithic/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_cards":{"post":{"operationId":"list_cards","summary":"List cards with type, state, memo, last four digits, expiry, spend limit and PIN status; full card numbers are never ret","description":"List cards with type, state, memo, last four digits, expiry, spend limit and PIN status; full card numbers are never returned. Use for \"Which of my Lithic cards are paused or closed\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only cards of this account token.","title":"Account Token"},"state":{"anyOf":[{"enum":["OPEN","PAUSED","CLOSED","PENDING_ACTIVATION","PENDING_FULFILLMENT"],"type":"string"},{"type":"null"}],"default":null,"description":"Only cards in this state.","title":"State"},"memo":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only cards whose memo contains this text.","title":"Memo"},"begin":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this RFC 3339 time, for example 2026-01-01T00:00:00Z.","title":"Begin"},"end":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this RFC 3339 time.","title":"End"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many items to return (1 to 100, default 50).","title":"Page Size"},"starting_after":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the last item of the previous page, to get the next page.","title":"Starting After"},"ending_before":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the first item of a later page, to get the page before it.","title":"Ending Before"}},"title":"list_cardsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_card":{"post":{"operationId":"get_card","summary":"Get one card by token: type, state, memo, last four digits, expiry, spend limit, PIN status (no card number or CVV). Use","description":"Get one card by token: type, state, memo, last four digits, expiry, spend limit, PIN status (no card number or CVV). Use for \"Show the Lithic card with token 7ef7d65c-9023-4da3-b113-3b8583fd7951\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"card_token":{"description":"Card token (UUID), for example '7ef7d65c-9023-4da3-b113-3b8583fd7951'.","maxLength":200,"title":"Card Token","type":"string"}},"required":["card_token"],"title":"get_cardArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_accounts":{"post":{"operationId":"list_accounts","summary":"List card accounts with state, spend limit, cardholder currency and creation time. Use for \"List my Lithic accounts and ","description":"List card accounts with state, spend limit, cardholder currency and creation time. Use for \"List my Lithic accounts and their spend limits\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"begin":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this RFC 3339 time, for example 2026-01-01T00:00:00Z.","title":"Begin"},"end":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this RFC 3339 time.","title":"End"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many items to return (1 to 100, default 50).","title":"Page Size"},"starting_after":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the last item of the previous page, to get the next page.","title":"Starting After"},"ending_before":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the first item of a later page, to get the page before it.","title":"Ending Before"}},"title":"list_accountsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_financial_accounts":{"post":{"operationId":"list_financial_accounts","summary":"List financial accounts (issuing, operating, reserve, security) with type, nickname, status and owning account; account ","description":"List financial accounts (issuing, operating, reserve, security) with type, nickname, status and owning account; account numbers are left out. Use for \"What financial accounts do I have in Lithic\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only financial accounts of this account token.","title":"Account Token"},"business_account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only financial accounts of this business account token.","title":"Business Account Token"},"type":{"anyOf":[{"enum":["ISSUING","OPERATING","RESERVE","SECURITY","EARLY_DIRECT_DEPOSIT_FLOAT"],"type":"string"},{"type":"null"}],"default":null,"description":"Only this type.","title":"Type"}},"title":"list_financial_accountsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_balances":{"post":{"operationId":"list_balances","summary":"List balances (available, pending, total, in minor units) of financial accounts, latest or as of a given time. Use for \"","description":"List balances (available, pending, total, in minor units) of financial accounts, latest or as of a given time. Use for \"What is the balance of each of my Lithic financial accounts\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only financial accounts of this account token.","title":"Account Token"},"business_account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only financial accounts of this business account token.","title":"Business Account Token"},"balance_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"UTC RFC 3339 time of the balances to read; the latest by default.","title":"Balance Date"},"financial_account_type":{"anyOf":[{"enum":["ISSUING","OPERATING","RESERVE","SECURITY"],"type":"string"},{"type":"null"}],"default":null,"description":"Only this financial account type.","title":"Financial Account Type"}},"title":"list_balancesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_account_activity":{"post":{"operationId":"list_account_activity","summary":"List transactions across your accounts (card, ACH, wire, fees, transfers) with category, status, amounts in minor units ","description":"List transactions across your accounts (card, ACH, wire, fees, transfers) with category, status, amounts in minor units and descriptor. Use for \"Show my latest Lithic transactions that were declined\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"financial_account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items of this financial account token.","title":"Financial Account Token"},"account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only activity of this account token.","title":"Account Token"},"status":{"anyOf":[{"enum":["DECLINED","EXPIRED","PENDING","RETURNED","REVERSED","SETTLED","VOIDED"],"type":"string"},{"type":"null"}],"default":null,"description":"Only this status.","title":"Status"},"result":{"anyOf":[{"enum":["APPROVED","DECLINED"],"type":"string"},{"type":"null"}],"default":null,"description":"Only approved or declined activity.","title":"Result"},"category":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only this category, for example CARD, ACH, WIRE or FEE.","title":"Category"},"begin":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this RFC 3339 time, for example 2026-01-01T00:00:00Z.","title":"Begin"},"end":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this RFC 3339 time.","title":"End"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many items to return (1 to 100, default 50).","title":"Page Size"},"starting_after":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the last item of the previous page, to get the next page.","title":"Starting After"},"ending_before":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the first item of a later page, to get the page before it.","title":"Ending Before"}},"title":"list_account_activityArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_payments":{"post":{"operationId":"list_payments","summary":"List ACH payments with direction, status, amounts in minor units, method and descriptor. Use for \"What ACH payments did ","description":"List ACH payments with direction, status, amounts in minor units, method and descriptor. Use for \"What ACH payments did Lithic process this month\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"financial_account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items of this financial account token.","title":"Financial Account Token"},"account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only payments of this account token.","title":"Account Token"},"status":{"anyOf":[{"enum":["DECLINED","PENDING","RETURNED","REVERSED","SETTLED"],"type":"string"},{"type":"null"}],"default":null,"description":"Only this status.","title":"Status"},"result":{"anyOf":[{"enum":["APPROVED","DECLINED"],"type":"string"},{"type":"null"}],"default":null,"description":"Only approved or declined payments.","title":"Result"},"category":{"anyOf":[{"enum":["ACH","STABLECOIN"],"type":"string"},{"type":"null"}],"default":null,"description":"Only this category.","title":"Category"},"begin":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this RFC 3339 time, for example 2026-01-01T00:00:00Z.","title":"Begin"},"end":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this RFC 3339 time.","title":"End"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many items to return (1 to 100, default 50).","title":"Page Size"},"starting_after":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the last item of the previous page, to get the next page.","title":"Starting After"},"ending_before":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the first item of a later page, to get the page before it.","title":"Ending Before"}},"title":"list_paymentsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_book_transfers":{"post":{"operationId":"list_book_transfers","summary":"List book transfers between financial accounts with category, status, amounts in minor units and the two accounts. Use f","description":"List book transfers between financial accounts with category, status, amounts in minor units and the two accounts. Use for \"List recent book transfers between my Lithic accounts\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"financial_account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items of this financial account token.","title":"Financial Account Token"},"category":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only this category, for example FEE, REWARD or TRANSFER.","title":"Category"},"status":{"anyOf":[{"enum":["DECLINED","SETTLED"],"type":"string"},{"type":"null"}],"default":null,"description":"Only this status.","title":"Status"},"result":{"anyOf":[{"enum":["APPROVED","DECLINED"],"type":"string"},{"type":"null"}],"default":null,"description":"Only approved or declined transfers.","title":"Result"},"begin":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this RFC 3339 time, for example 2026-01-01T00:00:00Z.","title":"Begin"},"end":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this RFC 3339 time.","title":"End"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many items to return (1 to 100, default 50).","title":"Page Size"},"starting_after":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the last item of the previous page, to get the next page.","title":"Starting After"},"ending_before":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the first item of a later page, to get the page before it.","title":"Ending Before"}},"title":"list_book_transfersArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_disputes":{"post":{"operationId":"list_disputes","summary":"List card disputes (version 2) with network, status, disposition, currency and the disputed card. Use for \"Which of my L","description":"List card disputes (version 2) with network, status, disposition, currency and the disputed card. Use for \"Which of my Lithic card disputes are still open\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"card_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only disputes of this card token.","title":"Card Token"},"account_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only disputes of this account token.","title":"Account Token"},"disputed_transaction_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only disputes of this transaction token.","title":"Disputed Transaction Token"},"begin":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this RFC 3339 time, for example 2026-01-01T00:00:00Z.","title":"Begin"},"end":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this RFC 3339 time.","title":"End"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many items to return (1 to 100, default 50).","title":"Page Size"},"starting_after":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the last item of the previous page, to get the next page.","title":"Starting After"},"ending_before":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the first item of a later page, to get the page before it.","title":"Ending Before"}},"title":"list_disputesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_events":{"post":{"operationId":"list_events","summary":"List account events (webhook-style records) with type and time; the event payload is not requested. Use for \"What events","description":"List account events (webhook-style records) with type and time; the event payload is not requested. Use for \"What events has Lithic recorded recently\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"begin":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this RFC 3339 time, for example 2026-01-01T00:00:00Z.","title":"Begin"},"end":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this RFC 3339 time.","title":"End"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many items to return (1 to 100, default 50).","title":"Page Size"},"starting_after":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the last item of the previous page, to get the next page.","title":"Starting After"},"ending_before":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor: the token of the first item of a later page, to get the page before it.","title":"Ending Before"}},"title":"list_eventsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}