{"openapi":"3.1.0","info":{"title":"Grafana Cloud (BYOK) API","version":"0.1.0","description":"Grafana Cloud (BYOK) lets an AI assistant read your own Grafana Cloud data through the Grafana Cloud API with a key you supply (Grafana Cloud access policy token (or grafana.com API key) with read scopes for the objects these tools read). Read-only: 7 tools (list_stacks, get_stack, get_stack_readiness, get_stack_connections, list_org_instances, list_stack_plugins, list_stack_regions). The BYOK...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-grafana-cloud-stacks.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-grafana-cloud-stacks/docs"},"termsOfService":"https://connectorbay.com/byok-grafana-cloud-stacks/terms"},"servers":[{"url":"https://byok-grafana-cloud-stacks.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-grafana-cloud-stacks/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_stacks":{"post":{"operationId":"list_stacks","summary":"List the Grafana Cloud stacks of an organization with name, slug, region, URL and delete-protection flag. Use for \"Which","description":"List the Grafana Cloud stacks of an organization with name, slug, region, URL and delete-protection flag. Use for \"Which Grafana Cloud stacks does my organization have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Slug of the Grafana Cloud organization whose stacks to list, for example 'mycompany'.","maxLength":200,"title":"Org","type":"string"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":10,"description":"Stacks per page (default 10).","title":"Page Size"}},"required":["org"],"title":"list_stacksArguments","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_stack":{"post":{"operationId":"get_stack","summary":"Get one Grafana Cloud stack by id or slug: name, region, URL, description and labels. Use for \"Show the details of my Gr","description":"Get one Grafana Cloud stack by id or slug: name, region, URL, description and labels. Use for \"Show the details of my Grafana Cloud stack\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id_or_slug":{"description":"Id or slug of the Grafana Cloud stack, as returned by list_stacks (for example 'mycompany').","maxLength":200,"title":"Id Or Slug","type":"string"}},"required":["id_or_slug"],"title":"get_stackArguments","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_stack_readiness":{"post":{"operationId":"get_stack_readiness","summary":"Check whether a Grafana Cloud stack is ready to serve requests. Use for \"Is my Grafana Cloud stack ready\".","description":"Check whether a Grafana Cloud stack is ready to serve requests. Use for \"Is my Grafana Cloud stack ready\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id_or_slug":{"description":"Id or slug of the Grafana Cloud stack, as returned by list_stacks (for example 'mycompany').","maxLength":200,"title":"Id Or Slug","type":"string"}},"required":["id_or_slug"],"title":"get_stack_readinessArguments","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_stack_connections":{"post":{"operationId":"get_stack_connections","summary":"Show the endpoints of a stack: OTLP URL, Influx and OnCall API URLs, synthetic monitoring API URL and per-tenant URLs (m","description":"Show the endpoints of a stack: OTLP URL, Influx and OnCall API URLs, synthetic monitoring API URL and per-tenant URLs (metrics, logs, traces). Use for \"What are the connection endpoints of my Grafana Cloud stack\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id_or_slug":{"description":"Id or slug of the Grafana Cloud stack, as returned by list_stacks (for example 'mycompany').","maxLength":200,"title":"Id Or Slug","type":"string"}},"required":["id_or_slug"],"title":"get_stack_connectionsArguments","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_org_instances":{"post":{"operationId":"list_org_instances","summary":"List an organization's stacks with usage counters: status, plan, region, active users, dashboards and alert rules agains","description":"List an organization's stacks with usage counters: status, plan, region, active users, dashboards and alert rules against quota, and active metric series. Use for \"How many dashboards and active series do my Grafana Cloud stacks use\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org_slug":{"description":"Slug of the Grafana Cloud organization, for example 'mycompany'.","maxLength":200,"title":"Org Slug","type":"string"}},"required":["org_slug"],"title":"list_org_instancesArguments","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_stack_plugins":{"post":{"operationId":"list_stack_plugins","summary":"List the plugins installed on a stack with installed and latest version. Use for \"Which plugins are installed on my Graf","description":"List the plugins installed on a stack with installed and latest version. Use for \"Which plugins are installed on my Grafana Cloud stack\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"instance_id":{"description":"Numeric id of the stack (the id field from list_stacks).","maxLength":200,"title":"Instance Id","type":"string"}},"required":["instance_id"],"title":"list_stack_pluginsArguments","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_stack_regions":{"post":{"operationId":"list_stack_regions","summary":"List the Grafana Cloud regions stacks can be created in, with slug, public name, provider (aws, gcp, azure) and status. ","description":"List the Grafana Cloud regions stacks can be created in, with slug, public name, provider (aws, gcp, azure) and status. Use for \"Which Grafana Cloud regions are available\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"provider":{"anyOf":[{"enum":["aws","gcp","azure","fedramp-palantir"],"type":"string"},{"type":"null"}],"default":null,"description":"Only regions of this cloud provider.","title":"Provider"}},"title":"list_stack_regionsArguments","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}}}}