{"openapi":"3.1.0","info":{"title":"Galileo (BYOK) API","version":"0.1.0","description":"Galileo (BYOK) lets an AI assistant read your own Galileo data through the Galileo API with a key you supply (Galileo API key). Read-only: 12 tools (list_projects, get_project, list_log_streams, get_log_stream, list_experiments, get_experiment, list_datasets, get_dataset, list_scorers, list_scorer_tags, list_integrations, list_trends_dashboards). The BYOK key travels with each request, is used...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-galileo.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-galileo/docs"},"termsOfService":"https://connectorbay.com/byok-galileo/terms"},"servers":[{"url":"https://byok-galileo.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-galileo/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_projects":{"post":{"operationId":"list_projects","summary":"List your projects with log stream and experiment counts, labels and timestamps; paged by offset. Use for \"Which Galileo","description":"List your projects with log stream and experiment counts, labels and timestamps; paged by offset. Use for \"Which Galileo projects do I have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"starting_token":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Offset to start from; use next_starting_token of the previous page.","title":"Starting Token"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Maximum items per page (default 100).","title":"Limit"},"include_logstreams":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to include each project's log streams.","title":"Include Logstreams"}},"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 project: name, type and creator id. Use for \"Show Galileo project 6f1c3d1e\".","description":"Get one project: name, type and creator id. Use for \"Show Galileo project 6f1c3d1e\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Galileo project id (a UUID; list_projects returns it).","maxLength":200,"title":"Project Id","type":"string"}},"required":["project_id"],"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_log_streams":{"post":{"operationId":"list_log_streams","summary":"List a project's log streams with trace and span counts; paged by offset. Use for \"Which log streams does Galileo projec","description":"List a project's log streams with trace and span counts; paged by offset. Use for \"Which log streams does Galileo project 6f1c3d1e have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Galileo project id (a UUID; list_projects returns it).","maxLength":200,"title":"Project Id","type":"string"},"include_counts":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to include trace and span counts.","title":"Include Counts"},"starting_token":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Offset to start from; use next_starting_token of the previous page.","title":"Starting Token"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Maximum items per page (default 100).","title":"Limit"}},"required":["project_id"],"title":"list_log_streamsArguments","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_log_stream":{"post":{"operationId":"get_log_stream","summary":"Get one log stream: name, trace and span counts and timestamps. Use for \"Show Galileo log stream 7a2d4e2f\".","description":"Get one log stream: name, trace and span counts and timestamps. Use for \"Show Galileo log stream 7a2d4e2f\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Galileo project id (a UUID; list_projects returns it).","maxLength":200,"title":"Project Id","type":"string"},"log_stream_id":{"description":"Galileo log stream id (a UUID; list_log_streams returns it).","maxLength":200,"title":"Log Stream Id","type":"string"}},"required":["project_id","log_stream_id"],"title":"get_log_streamArguments","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_experiments":{"post":{"operationId":"list_experiments","summary":"List a project's experiments with dataset, prompt model, aggregate metrics, rank and generation progress; paged by offse","description":"List a project's experiments with dataset, prompt model, aggregate metrics, rank and generation progress; paged by offset. Use for \"Which experiments ran in Galileo project 6f1c3d1e\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Galileo project id (a UUID; list_projects returns it).","maxLength":200,"title":"Project Id","type":"string"},"include_counts":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to include trace and span counts.","title":"Include Counts"},"starting_token":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Offset to start from; use next_starting_token of the previous page.","title":"Starting Token"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Maximum items per page (default 100).","title":"Limit"}},"required":["project_id"],"title":"list_experimentsArguments","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_experiment":{"post":{"operationId":"get_experiment","summary":"Get one experiment: dataset, prompt model, aggregate metrics, rank, winner flag and status. Use for \"Show Galileo experi","description":"Get one experiment: dataset, prompt model, aggregate metrics, rank, winner flag and status. Use for \"Show Galileo experiment 8b3e5f3a\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Galileo project id (a UUID; list_projects returns it).","maxLength":200,"title":"Project Id","type":"string"},"experiment_id":{"description":"Galileo experiment id (a UUID; list_experiments returns it).","maxLength":200,"title":"Experiment Id","type":"string"}},"required":["project_id","experiment_id"],"title":"get_experimentArguments","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_datasets":{"post":{"operationId":"list_datasets","summary":"List your datasets with row count, column names, version and draft flag; paged by offset. Use for \"Which Galileo dataset","description":"List your datasets with row count, column names, version and draft flag; paged by offset. Use for \"Which Galileo datasets do I have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"starting_token":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Offset to start from; use next_starting_token of the previous page.","title":"Starting Token"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Maximum items per page (default 100).","title":"Limit"}},"title":"list_datasetsArguments","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_dataset":{"post":{"operationId":"get_dataset","summary":"Get one dataset: row count, column names, current version and draft flag. Use for \"Show Galileo dataset d1\".","description":"Get one dataset: row count, column names, current version and draft flag. Use for \"Show Galileo dataset d1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"dataset_id":{"description":"Galileo dataset id (a UUID; list_datasets returns it).","maxLength":200,"title":"Dataset Id","type":"string"}},"required":["dataset_id"],"title":"get_datasetArguments","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_scorers":{"post":{"operationId":"list_scorers","summary":"List the evaluation scorers (metrics) available to you with type, input and output types, tags and scope; paged by offse","description":"List the evaluation scorers (metrics) available to you with type, input and output types, tags and scope; paged by offset. Use for \"Which Galileo scorers can I use\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"starting_token":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Offset to start from; use next_starting_token of the previous page.","title":"Starting Token"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Maximum items per page (default 100).","title":"Limit"}},"title":"list_scorersArguments","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_scorer_tags":{"post":{"operationId":"list_scorer_tags","summary":"List the tags used to group scorers. Use for \"Which scorer tags exist in Galileo\".","description":"List the tags used to group scorers. Use for \"Which scorer tags exist in Galileo\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_scorer_tagsArguments","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_integrations":{"post":{"operationId":"list_integrations","summary":"List the model-provider integrations (OpenAI, Anthropic, Bedrock and others) with name, provider and selected or disable","description":"List the model-provider integrations (OpenAI, Anthropic, Bedrock and others) with name, provider and selected or disabled state; credentials are not returned. Use for \"Which model providers are connected to Galileo\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_integrationsArguments","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_trends_dashboards":{"post":{"operationId":"list_trends_dashboards","summary":"List the trends dashboards of a log stream with default and favorite flags. Use for \"Which dashboards does Galileo log s","description":"List the trends dashboards of a log stream with default and favorite flags. Use for \"Which dashboards does Galileo log stream 7a2d4e2f have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Galileo project id (a UUID; list_projects returns it).","maxLength":200,"title":"Project Id","type":"string"},"log_stream_id":{"description":"Galileo log stream id (a UUID; list_log_streams returns it).","maxLength":200,"title":"Log Stream Id","type":"string"}},"required":["project_id","log_stream_id"],"title":"list_trends_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}}}}