{"openapi":"3.1.0","info":{"title":"Bright Data (BYOK) API","version":"0.1.0","description":"Bright Data (BYOK) lets an AI assistant read your own Bright Data data through the Bright Data API with a key you supply (Bright Data API key). Read-only: 12 tools (get_account_status, get_balance, list_pricing_plans, list_active_zones, list_all_zones, get_zone, get_zone_bandwidth, get_zone_cost, get_account_bandwidth, list_available_countries, list_country_cities, get_network_status). The BYOK...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-brightdata.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-brightdata/docs"},"termsOfService":"https://connectorbay.com/byok-brightdata/terms"},"servers":[{"url":"https://byok-brightdata.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-brightdata/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/get_account_status":{"post":{"operationId":"get_account_status","summary":"Show whether the key is valid and the account can make requests, with the customer id and the caller's IP address. Use f","description":"Show whether the key is valid and the account can make requests, with the customer id and the caller's IP address. Use for \"Is my Bright Data API key working\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_account_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/get_balance":{"post":{"operationId":"get_balance","summary":"Show the account balance, credit, prepayment and pending costs. Use for \"What is my Bright Data balance\".","description":"Show the account balance, credit, prepayment and pending costs. Use for \"What is my Bright Data balance\".","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/list_pricing_plans":{"post":{"operationId":"list_pricing_plans","summary":"List Bright Data pricing plans, marking the current one, with pre-commit amount and per-product prices. Use for \"Which p","description":"List Bright Data pricing plans, marking the current one, with pre-commit amount and per-product prices. Use for \"Which pricing plan am I on at Bright Data\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_pricing_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/list_active_zones":{"post":{"operationId":"list_active_zones","summary":"List the account's active zones (a zone is one product configuration such as Web Unlocker or SERP) with name and type. U","description":"List the account's active zones (a zone is one product configuration such as Web Unlocker or SERP) with name and type. Use for \"Which active zones do I have at Bright Data\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_active_zonesArguments","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_all_zones":{"post":{"operationId":"list_all_zones","summary":"List all zones including deleted ones, with name, type and status (active or deleted). Use for \"Show every Bright Data z","description":"List all zones including deleted ones, with name, type and status (active or deleted). Use for \"Show every Bright Data zone I ever created\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_all_zonesArguments","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_zone":{"post":{"operationId":"get_zone","summary":"Get the configuration details of one zone by name. Use for \"Show the settings of Bright Data zone my_unlocker_zone\".","description":"Get the configuration details of one zone by name. Use for \"Show the settings of Bright Data zone my_unlocker_zone\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"zone":{"description":"Name of the zone, as returned by list_active_zones.","maxLength":100,"title":"Zone","type":"string"}},"required":["zone"],"title":"get_zoneArguments","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_zone_bandwidth":{"post":{"operationId":"get_zone_bandwidth","summary":"Get bandwidth used by one zone, optionally between two dates. Use for \"How much bandwidth did my Bright Data zone use th","description":"Get bandwidth used by one zone, optionally between two dates. Use for \"How much bandwidth did my Bright Data zone use this month\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"zone":{"description":"Name of the zone, as returned by list_active_zones.","maxLength":100,"title":"Zone","type":"string"},"from_date":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Start of the period (inclusive).","title":"From Date"},"to_date":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"End of the period.","title":"To Date"}},"required":["zone"],"title":"get_zone_bandwidthArguments","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_zone_cost":{"post":{"operationId":"get_zone_cost","summary":"Get the cost and bandwidth of one zone for a date range (end date excluded, format YYYY-MM-DD). Use for \"What did my Bri","description":"Get the cost and bandwidth of one zone for a date range (end date excluded, format YYYY-MM-DD). Use for \"What did my Bright Data zone cost in September 2026\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"zone":{"description":"Name of the zone, as returned by list_active_zones.","maxLength":100,"title":"Zone","type":"string"},"from_date":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Start date, inclusive, format YYYY-MM-DD.","title":"From Date"},"to_date":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"End date, exclusive, format YYYY-MM-DD.","title":"To Date"}},"required":["zone"],"title":"get_zone_costArguments","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_account_bandwidth":{"post":{"operationId":"get_account_bandwidth","summary":"Get the bandwidth used by the whole account, optionally between two dates. Use for \"How much bandwidth did my whole Brig","description":"Get the bandwidth used by the whole account, optionally between two dates. Use for \"How much bandwidth did my whole Bright Data account use\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"from_date":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Start of the period (inclusive).","title":"From Date"},"to_date":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"End of the period.","title":"To Date"}},"title":"get_account_bandwidthArguments","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_available_countries":{"post":{"operationId":"list_available_countries","summary":"List the country codes available per zone type (datacenter and ISP, shared or dedicated). Use for \"Which countries can I","description":"List the country codes available per zone type (datacenter and ISP, shared or dedicated). Use for \"Which countries can I pick for Bright Data datacenter zones\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_available_countriesArguments","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_country_cities":{"post":{"operationId":"list_country_cities","summary":"List the cities available in one country (2-letter country code) for the network. Use for \"Which cities can I target in ","description":"List the cities available in one country (2-letter country code) for the network. Use for \"Which cities can I target in Germany with Bright Data\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"country":{"description":"Two-letter country code, for example 'de'.","maxLength":2,"title":"Country","type":"string"}},"required":["country"],"title":"list_country_citiesArguments","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_network_status":{"post":{"operationId":"get_network_status","summary":"Show the current status of the Bright Data proxy networks: all, residential, datacenter or mobile. Use for \"Is the Brigh","description":"Show the current status of the Bright Data proxy networks: all, residential, datacenter or mobile. Use for \"Is the Bright Data residential network up\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"network_type":{"description":"Which network: all, res (residential), dc (datacenter) or mobile.","enum":["all","res","dc","mobile"],"title":"Network Type","type":"string"}},"required":["network_type"],"title":"get_network_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}}}}