{"openapi":"3.1.0","info":{"title":"Helcim (BYOK) API","version":"0.1.0","description":"Helcim (BYOK) lets an AI assistant read your own Helcim data through the Helcim API with a key you supply (Helcim API token (needs read access for the areas you query)). Read-only: 6 tools (test_connection, list_payment_plans, get_payment_plan, list_add_ons, get_add_on, list_card_terminals). The BYOK key travels with each request, is used for that one call only and is never stored, logged or...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-helcim.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-helcim/docs"},"termsOfService":"https://connectorbay.com/byok-helcim/terms"},"servers":[{"url":"https://byok-helcim.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-helcim/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/test_connection":{"post":{"operationId":"test_connection","summary":"Check that the Helcim API is reachable and the API token works; returns a short message. Use for \"Does my Helcim API tok","description":"Check that the Helcim API is reachable and the API token works; returns a short message. Use for \"Does my Helcim API token work\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"test_connectionArguments","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_payment_plans":{"post":{"operationId":"list_payment_plans","summary":"List recurring payment plans with name, billing type, status, currency, setup and recurring amount, billing period, term","description":"List recurring payment plans with name, billing type, status, currency, setup and recurring amount, billing period, term, trial and tax settings. Use for \"Which payment plans do I have in Helcim\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"How many results to return (1 to 100).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip.","title":"Offset"},"name":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only plans with this exact name.","title":"Name"},"type":{"anyOf":[{"enum":["subscription","cycle"],"type":"string"},{"type":"null"}],"default":null,"description":"Only plans of this billing type.","title":"Type"},"status":{"anyOf":[{"enum":["active","inactive"],"type":"string"},{"type":"null"}],"default":null,"description":"Only plans with this status.","title":"Status"},"currency":{"anyOf":[{"enum":["CAD","USD"],"type":"string"},{"type":"null"}],"default":null,"description":"Only plans billed in this currency.","title":"Currency"},"billing_period":{"anyOf":[{"enum":["daily","weekly","monthly","yearly"],"type":"string"},{"type":"null"}],"default":null,"description":"Only plans with this billing period.","title":"Billing Period"}},"title":"list_payment_plansArguments","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_payment_plan":{"post":{"operationId":"get_payment_plan","summary":"Get one payment plan by id, optionally with its linked add-ons, including prorating setting. Use for \"Show Helcim paymen","description":"Get one payment plan by id, optionally with its linked add-ons, including prorating setting. Use for \"Show Helcim payment plan 1234 with its add-ons\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"plan_id":{"description":"Helcim payment plan id (a number).","title":"Plan Id","type":"integer"},"include_sub_objects":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to include linked add-ons in the response.","title":"Include Sub Objects"}},"required":["plan_id"],"title":"get_payment_planArguments","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_add_ons":{"post":{"operationId":"list_add_ons","summary":"List add-ons (extra recurring or one-time charges that attach to plans and subscriptions) with name, amount and frequenc","description":"List add-ons (extra recurring or one-time charges that attach to plans and subscriptions) with name, amount and frequency. Use for \"Which add-ons are defined in Helcim\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"How many results to return (1 to 100).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip.","title":"Offset"},"name":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only add-ons with this exact name.","title":"Name"},"frequency":{"anyOf":[{"enum":["one_time","recurring"],"type":"string"},{"type":"null"}],"default":null,"description":"Only add-ons with this frequency.","title":"Frequency"}},"title":"list_add_onsArguments","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_add_on":{"post":{"operationId":"get_add_on","summary":"Get one add-on by id with name, description, amount, frequency and whether quantity can be edited. Use for \"Show Helcim ","description":"Get one add-on by id with name, description, amount, frequency and whether quantity can be edited. Use for \"Show Helcim add-on 55\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"add_on_id":{"description":"Helcim add-on id (a number).","title":"Add On Id","type":"integer"}},"required":["add_on_id"],"title":"get_add_onArguments","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_card_terminals":{"post":{"operationId":"list_card_terminals","summary":"List card terminals (physical readers) with id, nickname, currency and status. Use for \"Which card terminals does my Hel","description":"List card terminals (physical readers) with id, nickname, currency and status. Use for \"Which card terminals does my Helcim account have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"currency":{"anyOf":[{"enum":["CAD","USD"],"type":"string"},{"type":"null"}],"default":null,"description":"Only terminals in this currency.","title":"Currency"},"status":{"anyOf":[{"enum":["ACTIVE","INACTIVE"],"type":"string"},{"type":"null"}],"default":null,"description":"Only terminals with this status.","title":"Status"}},"title":"list_card_terminalsArguments","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}}}}