{"openapi":"3.1.0","info":{"title":"Steel (BYOK) API","version":"0.1.0","description":"Steel (BYOK) lets an AI assistant read your own Steel data through the Steel API with a key you supply (Steel API key). Read-only: 9 tools (list_sessions, get_session, list_session_files, get_session_captcha_status, list_profiles, get_profile, list_extensions, list_files, list_credentials). 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-steel.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-steel/docs"},"termsOfService":"https://connectorbay.com/byok-steel/terms"},"servers":[{"url":"https://byok-steel.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-steel/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_sessions":{"post":{"operationId":"list_sessions","summary":"List browser sessions of your organization with status, duration, credits used, proxy traffic, region and settings; filt","description":"List browser sessions of your organization with status, duration, credits used, proxy traffic, region and settings; filter by status; paged by cursor. Use for \"Which Steel browser sessions are live right now\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"status":{"anyOf":[{"enum":["live","released","failed"],"type":"string"},{"type":"null"}],"default":null,"description":"Only sessions in this state.","title":"Status"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Sessions per page.","title":"Limit"},"cursor_id":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"The id of the last session of the previous page, to continue listing.","title":"Cursor Id"}},"title":"list_sessionsArguments","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_session":{"post":{"operationId":"get_session","summary":"Get one browser session: status, duration, credits used, proxy bytes, region, profile and viewport settings. Use for \"Sh","description":"Get one browser session: status, duration, credits used, proxy bytes, region, profile and viewport settings. Use for \"Show Steel session 0d2f4c1e\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"session_id":{"description":"Steel session id, a UUID (list_sessions returns it).","maxLength":200,"title":"Session Id","type":"string"}},"required":["session_id"],"title":"get_sessionArguments","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_session_files":{"post":{"operationId":"list_session_files","summary":"List the files a session downloaded or holds, with path, size and last-modified time. Use for \"Which files did Steel ses","description":"List the files a session downloaded or holds, with path, size and last-modified time. Use for \"Which files did Steel session 0d2f4c1e download\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"session_id":{"description":"Steel session id, a UUID (list_sessions returns it).","maxLength":200,"title":"Session Id","type":"string"}},"required":["session_id"],"title":"list_session_filesArguments","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_session_captcha_status":{"post":{"operationId":"get_session_captcha_status","summary":"Show per page whether a session is currently solving a captcha and when it was last updated. Use for \"Is Steel session 0","description":"Show per page whether a session is currently solving a captcha and when it was last updated. Use for \"Is Steel session 0d2f4c1e stuck on a captcha\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"session_id":{"description":"Steel session id, a UUID (list_sessions returns it).","maxLength":200,"title":"Session Id","type":"string"}},"required":["session_id"],"title":"get_session_captcha_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}},"/v1/tools/list_profiles":{"post":{"operationId":"list_profiles","summary":"List saved browser profiles with status, source session, extensions, user agent and viewport size. Use for \"Which Steel ","description":"List saved browser profiles with status, source session, extensions, user agent and viewport size. Use for \"Which Steel browser profiles do I have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_profilesArguments","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_profile":{"post":{"operationId":"get_profile","summary":"Get one browser profile: status, source session, extensions, user agent and viewport size. Use for \"Show Steel profile 7","description":"Get one browser profile: status, source session, extensions, user agent and viewport size. Use for \"Show Steel profile 7c1a2b3d\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"profile_id":{"description":"Steel profile id, a UUID (list_profiles returns it).","maxLength":200,"title":"Profile Id","type":"string"}},"required":["profile_id"],"title":"get_profileArguments","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_extensions":{"post":{"operationId":"list_extensions","summary":"List uploaded browser extensions with id, name and creation and update times. Use for \"Which Steel browser extensions ar","description":"List uploaded browser extensions with id, name and creation and update times. Use for \"Which Steel browser extensions are uploaded\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_extensionsArguments","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_files":{"post":{"operationId":"list_files","summary":"List the files stored in your organization's global Steel file storage, with path, size and last-modified time. Use for ","description":"List the files stored in your organization's global Steel file storage, with path, size and last-modified time. Use for \"Which files are in my Steel file storage\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_filesArguments","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_credentials":{"post":{"operationId":"list_credentials","summary":"List stored credential entries by label, origin and namespace (secret values are never returned). Use for \"Which sites d","description":"List stored credential entries by label, origin and namespace (secret values are never returned). Use for \"Which sites do I have Steel credentials stored for\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"namespace":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only credentials in this namespace.","title":"Namespace"},"origin":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only credentials for this origin, for example https://example.com.","title":"Origin"}},"title":"list_credentialsArguments","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}}}}