openapi: 3.1.0 info: title: Galileo Public API version: "v2" description: | Best-effort OpenAPI 3.1 description of the Galileo (galileo.ai) public REST API for projects, datasets, experiments, traces, prompts, integrations, annotations, and groups. Generated from the public OpenAPI index at https://api.galileo.ai/public/v2/openapi.json; not an official copy. contact: name: Galileo Developer Docs url: https://docs.galileo.ai/ servers: - url: https://api.galileo.ai description: Galileo hosted production security: - apiKeyHeader: [] - bearerAuth: [] - basicAuth: [] tags: - name: Health - name: Auth - name: Users - name: ApiKeys - name: Projects - name: Datasets - name: Experiments - name: Traces - name: Annotations - name: Groups - name: Integrations paths: /v2/healthcheck: get: tags: [Health] operationId: healthcheck security: [] responses: "200": description: Healthcheck response content: application/json: schema: { $ref: "#/components/schemas/Object" } /v2/token: get: tags: [Auth] operationId: getToken responses: "200": { $ref: "#/components/responses/Ok" } /v2/login: post: tags: [Auth] operationId: loginEmail requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } /v2/login/api_key: post: tags: [Auth] operationId: loginApiKey requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } /v2/refresh_token: post: tags: [Auth] operationId: refreshToken requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } /v2/users/{user_id}/api_keys: parameters: [{ $ref: "#/components/parameters/UserId" }] get: tags: [ApiKeys] operationId: listUserApiKeys responses: "200": { $ref: "#/components/responses/Ok" } /v2/users/api_keys: post: tags: [ApiKeys] operationId: createApiKey requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "201": { $ref: "#/components/responses/Ok" } /v2/users/api_keys/{api_key_id}: parameters: - in: path name: api_key_id required: true schema: { type: string } delete: tags: [ApiKeys] operationId: deleteApiKey responses: "204": { description: No Content } /v2/datasets: get: tags: [Datasets] operationId: listDatasets responses: "200": { $ref: "#/components/responses/Ok" } post: tags: [Datasets] operationId: createDataset requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "201": { $ref: "#/components/responses/Ok" } /v2/datasets/{dataset_id}: parameters: [{ $ref: "#/components/parameters/DatasetId" }] get: tags: [Datasets] operationId: getDataset responses: "200": { $ref: "#/components/responses/Ok" } patch: tags: [Datasets] operationId: updateDataset requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } delete: tags: [Datasets] operationId: deleteDataset responses: "204": { description: No Content } /v2/datasets/{dataset_id}/content: parameters: [{ $ref: "#/components/parameters/DatasetId" }] get: tags: [Datasets] operationId: getDatasetContent responses: "200": { $ref: "#/components/responses/Ok" } put: tags: [Datasets] operationId: replaceDatasetContent requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } patch: tags: [Datasets] operationId: patchDatasetContent requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } /v2/datasets/{dataset_id}/content/query: parameters: [{ $ref: "#/components/parameters/DatasetId" }] post: tags: [Datasets] operationId: queryDatasetContent requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } /v2/datasets/{dataset_id}/download: parameters: [{ $ref: "#/components/parameters/DatasetId" }] get: tags: [Datasets] operationId: downloadDataset responses: "200": { $ref: "#/components/responses/Ok" } /v2/projects/{project_id}/experiments: parameters: [{ $ref: "#/components/parameters/ProjectId" }] get: tags: [Experiments] operationId: listExperiments responses: "200": { $ref: "#/components/responses/Ok" } post: tags: [Experiments] operationId: createExperiment requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "201": { $ref: "#/components/responses/Ok" } /v2/projects/{project_id}/experiments/{experiment_id}: parameters: - $ref: "#/components/parameters/ProjectId" - in: path name: experiment_id required: true schema: { type: string } get: tags: [Experiments] operationId: getExperiment responses: "200": { $ref: "#/components/responses/Ok" } put: tags: [Experiments] operationId: updateExperiment requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } delete: tags: [Experiments] operationId: deleteExperiment responses: "204": { description: No Content } /v2/projects/{project_id}/experiments/search: parameters: [{ $ref: "#/components/parameters/ProjectId" }] post: tags: [Experiments] operationId: searchExperiments requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } /v2/projects/{project_id}/annotation/templates: parameters: [{ $ref: "#/components/parameters/ProjectId" }] get: tags: [Annotations] operationId: listAnnotationTemplates responses: "200": { $ref: "#/components/responses/Ok" } post: tags: [Annotations] operationId: createAnnotationTemplate requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "201": { $ref: "#/components/responses/Ok" } /v2/projects/{project_id}/annotation/ratings: parameters: [{ $ref: "#/components/parameters/ProjectId" }] post: tags: [Annotations] operationId: createAnnotationRatings requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } /v2/group_roles: get: tags: [Groups] operationId: listGroupRoles responses: "200": { $ref: "#/components/responses/Ok" } /v2/groups: get: tags: [Groups] operationId: listGroups responses: "200": { $ref: "#/components/responses/Ok" } post: tags: [Groups] operationId: createGroup requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "201": { $ref: "#/components/responses/Ok" } /v2/groups/{group_id}: parameters: - in: path name: group_id required: true schema: { type: string } get: tags: [Groups] operationId: getGroup responses: "200": { $ref: "#/components/responses/Ok" } patch: tags: [Groups] operationId: updateGroup requestBody: required: true content: application/json: schema: { $ref: "#/components/schemas/Object" } responses: "200": { $ref: "#/components/responses/Ok" } delete: tags: [Groups] operationId: deleteGroup responses: "204": { description: No Content } /v2/current_user/groups: get: tags: [Groups] operationId: getCurrentUserGroups responses: "200": { $ref: "#/components/responses/Ok" } /v2/integrations/available: get: tags: [Integrations] operationId: listAvailableIntegrations responses: "200": { $ref: "#/components/responses/Ok" } /v2/integrations/{name}: parameters: - in: path name: name required: true schema: { type: string } get: tags: [Integrations] operationId: getIntegration responses: "200": { $ref: "#/components/responses/Ok" } /v2/integrations/{name}/status: parameters: - in: path name: name required: true schema: { type: string } get: tags: [Integrations] operationId: getIntegrationStatus responses: "200": { $ref: "#/components/responses/Ok" } components: parameters: UserId: in: path name: user_id required: true schema: { type: string } ProjectId: in: path name: project_id required: true schema: { type: string } DatasetId: in: path name: dataset_id required: true schema: { type: string } securitySchemes: apiKeyHeader: type: apiKey in: header name: Galileo-API-Key bearerAuth: type: http scheme: bearer description: OAuth 2.0 password bearer (JWT) issued by /v2/token basicAuth: type: http scheme: basic schemas: Object: type: object additionalProperties: true responses: Ok: description: Successful response content: application/json: schema: { $ref: "#/components/schemas/Object" }