openapi: 3.0.0 info: description: lakeFS HTTP API title: lakeFS actions commits API license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html version: 1.0.0 servers: - url: /api/v1 description: lakeFS server endpoint security: - jwt_token: [] - basic_auth: [] - cookie_auth: [] - oidc_auth: [] - saml_auth: [] tags: - name: commits paths: /repositories/{repository}/branches/{branch}/commits: parameters: - in: path name: repository required: true schema: type: string - in: path name: branch required: true schema: type: string post: parameters: - in: query name: source_metarange required: false description: The source metarange to commit. Branch must not have uncommitted changes. schema: type: string tags: - commits operationId: commit summary: create commit requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CommitCreation' responses: 201: description: commit content: application/json: schema: $ref: '#/components/schemas/Commit' 400: $ref: '#/components/responses/ValidationError' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 412: $ref: '#/components/responses/PreconditionFailed' 429: description: too many requests default: $ref: '#/components/responses/ServerError' /repositories/{repository}/commits/{commitId}: parameters: - in: path name: repository required: true schema: type: string - in: path name: commitId required: true schema: type: string get: tags: - commits operationId: getCommit summary: get commit responses: 200: description: commit content: application/json: schema: $ref: '#/components/schemas/Commit' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 404: $ref: '#/components/responses/NotFound' 429: description: too many requests default: $ref: '#/components/responses/ServerError' components: responses: Forbidden: description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error' ValidationError: description: Validation Error content: application/json: schema: $ref: '#/components/schemas/Error' Unauthorized: description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error' ServerError: description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/Error' BadRequest: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/Error' PreconditionFailed: description: Precondition Failed content: application/json: schema: $ref: '#/components/schemas/Error' NotFound: description: Resource Not Found content: application/json: schema: $ref: '#/components/schemas/Error' Conflict: description: Resource Conflicts With Target content: application/json: schema: $ref: '#/components/schemas/Error' schemas: CommitCreation: type: object required: - message properties: message: type: string metadata: type: object additionalProperties: type: string date: description: set date to override creation date in the commit (Unix Epoch in seconds) type: integer format: int64 allow_empty: description: sets whether a commit can contain no changes type: boolean default: false force: type: boolean default: false Commit: type: object required: - id - parents - committer - message - creation_date - meta_range_id properties: id: type: string parents: type: array items: type: string committer: type: string message: type: string creation_date: type: integer format: int64 description: Unix Epoch in seconds meta_range_id: type: string metadata: type: object additionalProperties: type: string generation: type: integer format: int64 version: type: integer minimum: 0 maximum: 1 Error: type: object required: - message properties: message: description: short message explaining the error type: string securitySchemes: basic_auth: type: http scheme: basic jwt_token: type: http scheme: bearer bearerFormat: JWT cookie_auth: type: apiKey in: cookie name: internal_auth_session oidc_auth: type: apiKey in: cookie name: oidc_auth_session saml_auth: type: apiKey in: cookie name: saml_auth_session