{"openapi":"3.1.0","info":{"title":"Lightdash (BYOK) API","version":"0.1.0","description":"Lightdash (BYOK) lets an AI assistant read your own Lightdash data through the Lightdash API with a key you supply (Lightdash personal access token (project settings > personal access tokens)). Read-only: 7 tools (get_authenticated_user, get_organization, list_projects, get_project, list_spaces, list_charts, list_dashboards). The BYOK key travels with each request, is used for that one call only...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-lightdash.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-lightdash/docs"},"termsOfService":"https://connectorbay.com/byok-lightdash/terms"},"servers":[{"url":"https://byok-lightdash.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-lightdash/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_authenticated_user":{"post":{"operationId":"get_authenticated_user","summary":"Show the Lightdash user the token belongs to: name, email, role and organization. Use for \"Which Lightdash user is my to","description":"Show the Lightdash user the token belongs to: name, email, role and organization. Use for \"Which Lightdash user is my token connected to\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"subdomain":{"description":"Your Lightdash Cloud subdomain: the first part of the address you sign in at (acme for acme.lightdash.cloud).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Subdomain","type":"string"}},"required":["subdomain"],"title":"get_authenticated_userArguments","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_organization":{"post":{"operationId":"get_organization","summary":"Show the Lightdash organization: name, id, default project and creation time. Use for \"What is my Lightdash organization","description":"Show the Lightdash organization: name, id, default project and creation time. Use for \"What is my Lightdash organization and its default project\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"subdomain":{"description":"Your Lightdash Cloud subdomain: the first part of the address you sign in at (acme for acme.lightdash.cloud).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Subdomain","type":"string"}},"required":["subdomain"],"title":"get_organizationArguments","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_projects":{"post":{"operationId":"list_projects","summary":"List the organization's Lightdash projects with name, type, warehouse type and creator. Use for \"Which Lightdash project","description":"List the organization's Lightdash projects with name, type, warehouse type and creator. Use for \"Which Lightdash projects do we have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"subdomain":{"description":"Your Lightdash Cloud subdomain: the first part of the address you sign in at (acme for acme.lightdash.cloud).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Subdomain","type":"string"}},"required":["subdomain"],"title":"list_projectsArguments","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_project":{"post":{"operationId":"get_project","summary":"Get one Lightdash project: name, type, time zone settings and organization. Use for \"Show the Lightdash project 3675b69e","description":"Get one Lightdash project: name, type, time zone settings and organization. Use for \"Show the Lightdash project 3675b69e-8324-4110-bdca-059031aa8da3\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"subdomain":{"description":"Your Lightdash Cloud subdomain: the first part of the address you sign in at (acme for acme.lightdash.cloud).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Subdomain","type":"string"},"project_uuid":{"description":"Project UUID from list_projects.","maxLength":60,"title":"Project Uuid","type":"string"}},"required":["subdomain","project_uuid"],"title":"get_projectArguments","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_spaces":{"post":{"operationId":"list_spaces","summary":"List the spaces (folders) of a Lightdash project with name, path and counts of charts and dashboards. Use for \"What spac","description":"List the spaces (folders) of a Lightdash project with name, path and counts of charts and dashboards. Use for \"What spaces exist in my Lightdash project\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"subdomain":{"description":"Your Lightdash Cloud subdomain: the first part of the address you sign in at (acme for acme.lightdash.cloud).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Subdomain","type":"string"},"project_uuid":{"description":"Project UUID from list_projects.","maxLength":60,"title":"Project Uuid","type":"string"}},"required":["subdomain","project_uuid"],"title":"list_spacesArguments","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_charts":{"post":{"operationId":"list_charts","summary":"List the saved charts of a Lightdash project with name, space, chart type, view count and last update. Use for \"Which ch","description":"List the saved charts of a Lightdash project with name, space, chart type, view count and last update. Use for \"Which charts are saved in my Lightdash project\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"subdomain":{"description":"Your Lightdash Cloud subdomain: the first part of the address you sign in at (acme for acme.lightdash.cloud).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Subdomain","type":"string"},"project_uuid":{"description":"Project UUID from list_projects.","maxLength":60,"title":"Project Uuid","type":"string"}},"required":["subdomain","project_uuid"],"title":"list_chartsArguments","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_dashboards":{"post":{"operationId":"list_dashboards","summary":"List the dashboards of a Lightdash project with name, description, view count and last update. Use for \"Which dashboards","description":"List the dashboards of a Lightdash project with name, description, view count and last update. Use for \"Which dashboards exist in my Lightdash project\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"subdomain":{"description":"Your Lightdash Cloud subdomain: the first part of the address you sign in at (acme for acme.lightdash.cloud).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Subdomain","type":"string"},"project_uuid":{"description":"Project UUID from list_projects.","maxLength":60,"title":"Project Uuid","type":"string"}},"required":["subdomain","project_uuid"],"title":"list_dashboardsArguments","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}}}}