{"openapi":"3.1.0","info":{"title":"Getimg (BYOK) API","version":"0.1.0","description":"Getimg (BYOK) lets an AI assistant read your own Getimg data through the Getimg API with a key you supply (getimg.ai API key). Read-only: 5 tools (list_models, get_model, get_balance, get_daily_costs, get_video_generation_status). The BYOK key travels with each request, is used for that one call only and is never stored, logged or cached; it is only ever sent to api.getimg.ai. Unofficial...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-getimg.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-getimg/docs"},"termsOfService":"https://connectorbay.com/byok-getimg/terms"},"servers":[{"url":"https://byok-getimg.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-getimg/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_models":{"post":{"operationId":"list_models","summary":"List the image and video models available to the key with supported aspect ratios, resolutions, durations and sound supp","description":"List the image and video models available to the key with supported aspect ratios, resolutions, durations and sound support. Use for \"Which getimg.ai models are available and what resolutions do they support\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"type":{"anyOf":[{"enum":["image","video"],"type":"string"},{"type":"null"}],"default":null,"description":"Only models of this type: image or video.","title":"Type"}},"title":"list_modelsArguments","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_model":{"post":{"operationId":"get_model","summary":"Get one model's supported parameters and pricing currency. Use for \"What aspect ratios does the getimg.ai model seedream","description":"Get one model's supported parameters and pricing currency. Use for \"What aspect ratios does the getimg.ai model seedream-5-lite support\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"model":{"description":"Model id as returned by list_models, for example 'seedream-5-lite'.","maxLength":200,"title":"Model","type":"string"}},"required":["model"],"title":"get_modelArguments","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_balance":{"post":{"operationId":"get_balance","summary":"Show the current API balance in USD shared by the key's workspace. Use for \"How much getimg.ai API balance do I have lef","description":"Show the current API balance in USD shared by the key's workspace. Use for \"How much getimg.ai API balance do I have left\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_balanceArguments","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_daily_costs":{"post":{"operationId":"get_daily_costs","summary":"Get API costs per UTC day between two timestamps, plus the total for the range. Use for \"What did my getimg.ai API usage","description":"Get API costs per UTC day between two timestamps, plus the total for the range. Use for \"What did my getimg.ai API usage cost each day in September 2026\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"start":{"description":"Inclusive ISO 8601 start time including a time zone, for example 2026-09-01T00:00:00Z.","maxLength":200,"title":"Start","type":"string"},"end":{"description":"Inclusive ISO 8601 end time including a time zone; must be after start and within 180 days of it.","maxLength":200,"title":"End","type":"string"}},"required":["start","end"],"title":"get_daily_costsArguments","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_video_generation_status":{"post":{"operationId":"get_video_generation_status","summary":"Check the status (pending, failed or completed) of an earlier video generation request by id; returns the error if it fa","description":"Check the status (pending, failed or completed) of an earlier video generation request by id; returns the error if it failed. Use for \"Has my getimg.ai video request req-01HXYZVIDEO1234 finished\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id":{"description":"Generation request id returned when the video was submitted.","maxLength":200,"title":"Id","type":"string"}},"required":["id"],"title":"get_video_generation_statusArguments","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}}}}