lakeFS internal API

The internal API from lakeFS — 24 operation(s) for internal.

Operations 30

POST /setup_comm_prefs setup communications preferences #
GET /setup_lakefs check if the lakeFS installation is already set up #
POST /setup_lakefs setup lakeFS and create a first user #
GET /auth/capabilities list authentication capabilities supported #
POST /repositories/{repository}/metadata set repository metadata #
DELETE /repositories/{repository}/metadata delete repository metadata #
PUT /repositories/{repository}/refs/dump Dump repository refs (tags, commits, branches) to object store Deprecated: a new API will introduce long running operations #
PUT /repositories/{repository}/refs/restore Restore repository refs (tags, commits, branches) from object store. Deprecated: a new API will introduce long running operations #
POST /repositories/{repository}/commits create commit record #
GET /repositories/{repository}/branches/{branch}/objects/stage_allowed #
PUT /repositories/{repository}/branches/{branch}/objects stage an object's metadata for the given branch #
POST /repositories/{repository}/refs/{branch}/symlink creates symlink files corresponding to the given directory #
GET /repositories/{repository}/metadata/object/{type}/{object_id} return a lakeFS metadata object by ID #
GET /repositories/{repository}/gc/rules/set_allowed #
GET /repositories/{repository}/gc/rules #
POST /repositories/{repository}/gc/rules #
DELETE /repositories/{repository}/gc/rules #
POST /repositories/{repository}/gc/prepare_commits save lists of active commits for garbage collection #
POST /repositories/{repository}/gc/prepare_commits/async prepare gc commits #
GET /repositories/{repository}/gc/prepare_commits/status get status of prepare gc commits operation #
POST /repositories/{repository}/gc/prepare_uncommited save repository uncommitted metadata for garbage collection #
GET /repositories/{repository}/branch_protection/set_allowed #
GET /repositories/{repository}/branch_protection get branch protection rules #
POST /repositories/{repository}/branch_protection #
DELETE /repositories/{repository}/branch_protection #
GET /config/version #
GET /config/storage #
GET /config/garbage-collection #
POST /statistics post stats events, this endpoint is meant for internal use only #
GET /usage-report/summary get usage report summary #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/lakefs-internal-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

lakefs-internal-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: lakeFS HTTP API
  title: lakeFS actions Internal 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: internal
paths:
  /setup_comm_prefs:
    post:
      tags:
      - internal
      operationId: setupCommPrefs
      summary: setup communications preferences
      security: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CommPrefsInput'
      responses:
        200:
          description: communication preferences saved successfully
        400:
          $ref: '#/components/responses/BadRequest'
        409:
          description: setup was already completed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        412:
          description: wrong setup state for this operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /setup_lakefs:
    get:
      tags:
      - internal
      operationId: getSetupState
      summary: check if the lakeFS installation is already set up
      security: []
      responses:
        200:
          description: lakeFS setup state
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetupState'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
    post:
      tags:
      - internal
      operationId: setup
      summary: setup lakeFS and create a first user
      security: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Setup'
      responses:
        200:
          description: user created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CredentialsWithSecret'
        400:
          $ref: '#/components/responses/BadRequest'
        409:
          description: setup was already called
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /auth/capabilities:
    get:
      tags:
      - internal
      operationId: getAuthCapabilities
      summary: list authentication capabilities supported
      security: []
      responses:
        200:
          description: auth capabilities
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthCapabilities'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/metadata:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    post:
      tags:
      - internal
      operationId: setRepositoryMetadata
      summary: set repository metadata
      description: 'Set repository metadata. This will only add or update the provided keys, and will not remove any existing keys.

        '
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RepositoryMetadataSet'
      responses:
        204:
          description: repository metadata set successfully
        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'
    delete:
      tags:
      - internal
      operationId: deleteRepositoryMetadata
      summary: delete repository metadata
      description: 'Delete specified keys from the repository''s metadata.

        '
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RepositoryMetadataKeys'
      responses:
        204:
          description: repository metadata keys deleted successfully
        400:
          $ref: '#/components/responses/BadRequest'
        401:
          $ref: '#/components/responses/Unauthorized'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/refs/dump:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    put:
      tags:
      - internal
      operationId: dumpRefs
      summary: 'Dump repository refs (tags, commits, branches) to object store

        Deprecated: a new API will introduce long running operations

        '
      responses:
        201:
          description: refs dump
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RefsDump'
        400:
          $ref: '#/components/responses/ValidationError'
        401:
          $ref: '#/components/responses/Unauthorized'
        404:
          $ref: '#/components/responses/NotFound'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/refs/restore:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    put:
      tags:
      - internal
      operationId: restoreRefs
      summary: 'Restore repository refs (tags, commits, branches) from object store.

        Deprecated: a new API will introduce long running operations

        '
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RefsRestore'
      responses:
        200:
          description: refs successfully loaded
        400:
          $ref: '#/components/responses/ValidationError'
        401:
          $ref: '#/components/responses/Unauthorized'
        404:
          $ref: '#/components/responses/NotFound'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/commits:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    post:
      tags:
      - internal
      operationId: CreateCommitRecord
      summary: create commit record
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CommitRecordCreation'
      responses:
        204:
          description: commit record created
        400:
          $ref: '#/components/responses/ValidationError'
        401:
          $ref: '#/components/responses/Unauthorized'
        403:
          $ref: '#/components/responses/Forbidden'
        404:
          $ref: '#/components/responses/NotFound'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/branches/{branch}/objects/stage_allowed:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    - in: path
      name: branch
      required: true
      schema:
        type: string
    - in: query
      name: path
      description: relative to the branch
      required: true
      schema:
        type: string
    get:
      tags:
      - internal
      operationId: uploadObjectPreflight
      responses:
        204:
          description: User has permissions to upload this object. This does not guarantee that the upload will be successful or even possible. It indicates only the permission at the time of calling this endpoint
        400:
          $ref: '#/components/responses/BadRequest'
        401:
          $ref: '#/components/responses/Unauthorized'
        403:
          $ref: '#/components/responses/Forbidden'
        404:
          $ref: '#/components/responses/NotFound'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/branches/{branch}/objects:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    - in: path
      name: branch
      required: true
      schema:
        type: string
    - in: query
      name: path
      description: relative to the branch
      required: true
      schema:
        type: string
    put:
      deprecated: true
      tags:
      - internal
      operationId: stageObject
      summary: stage an object's metadata for the given branch
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ObjectStageCreation'
      responses:
        201:
          description: object metadata
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObjectStats'
        400:
          $ref: '#/components/responses/ValidationError'
        401:
          $ref: '#/components/responses/Unauthorized'
        403:
          $ref: '#/components/responses/Forbidden'
        404:
          $ref: '#/components/responses/NotFound'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/refs/{branch}/symlink:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    - in: path
      name: branch
      required: true
      schema:
        type: string
    - in: query
      name: location
      schema:
        type: string
      description: path to the table data
    post:
      tags:
      - internal
      operationId: createSymlinkFile
      summary: creates symlink files corresponding to the given directory
      responses:
        201:
          description: location created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StorageURI'
        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'
  /repositories/{repository}/metadata/object/{type}/{object_id}:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    - in: path
      name: object_id
      required: true
      schema:
        type: string
    - in: path
      name: type
      required: true
      schema:
        type: string
        enum:
        - range
        - meta_range
    get:
      tags:
      - internal
      operationId: getMetadataObject
      summary: return a lakeFS metadata object by ID
      parameters:
      - in: query
        name: presign
        required: false
        schema:
          type: boolean
      responses:
        200:
          description: object content
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
          headers:
            Content-Length:
              schema:
                type: integer
                format: int64
        302:
          description: Redirect to a pre-signed URL for the object
          headers:
            Location:
              schema:
                type: string
        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'
  /repositories/{repository}/gc/rules/set_allowed:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    get:
      tags:
      - internal
      operationId: setGarbageCollectionRulesPreflight
      responses:
        204:
          description: User has permissions to set garbage collection rules on this repository
        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'
  /repositories/{repository}/gc/rules:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    get:
      deprecated: true
      tags:
      - internal
      operationId: internalGetGarbageCollectionRules
      description: Deprecated; use getGCRules.
      responses:
        200:
          description: gc rule list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GarbageCollectionRules'
        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'
    post:
      deprecated: true
      tags:
      - internal
      operationId: internalSetGarbageCollectionRules
      description: Deprecated; use setGCRules.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GarbageCollectionRules'
      responses:
        204:
          description: set garbage collection rules successfully
        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'
    delete:
      deprecated: true
      tags:
      - internal
      operationId: internalDeleteGarbageCollectionRules
      description: Deprecated; use deleteGCRules.
      responses:
        204:
          description: deleted garbage collection rules successfully
        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'
  /repositories/{repository}/gc/prepare_commits:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    post:
      tags:
      - internal
      operationId: prepareGarbageCollectionCommits
      summary: save lists of active commits for garbage collection
      responses:
        201:
          description: paths to commit dataset
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GarbageCollectionPrepareResponse'
        400:
          $ref: '#/components/responses/BadRequest'
        401:
          $ref: '#/components/responses/Unauthorized'
        403:
          $ref: '#/components/responses/Forbidden'
        404:
          $ref: '#/components/responses/NotFound'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/gc/prepare_commits/async:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    post:
      tags:
      - internal
      operationId: prepareGarbageCollectionCommitsAsync
      summary: prepare gc commits
      responses:
        202:
          description: GC prepare task started
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaskCreation'
        400:
          $ref: '#/components/responses/ValidationError'
        401:
          $ref: '#/components/responses/Unauthorized'
        403:
          $ref: '#/components/responses/Forbidden'
        404:
          $ref: '#/components/responses/NotFound'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/gc/prepare_commits/status:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    get:
      tags:
      - internal
      operationId: prepareGarbageCollectionCommitsStatus
      summary: get status of prepare gc commits operation
      parameters:
      - in: query
        name: id
        description: Unique identifier of the prepare GC commits task
        schema:
          type: string
        required: true
      responses:
        200:
          description: prepare GC commits task status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PrepareGarbageCollectionCommitsStatus'
        400:
          $ref: '#/components/responses/BadRequest'
        401:
          $ref: '#/components/responses/Unauthorized'
        403:
          $ref: '#/components/responses/Forbidden'
        404:
          $ref: '#/components/responses/NotFound'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/gc/prepare_uncommited:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PrepareGCUncommittedRequest'
      tags:
      - internal
      operationId: prepareGarbageCollectionUncommitted
      summary: save repository uncommitted metadata for garbage collection
      responses:
        201:
          description: paths to commit dataset
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PrepareGCUncommittedResponse'
        400:
          $ref: '#/components/responses/ValidationError'
        401:
          $ref: '#/components/responses/Unauthorized'
        403:
          $ref: '#/components/responses/Forbidden'
        404:
          $ref: '#/components/responses/NotFound'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/branch_protection/set_allowed:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    get:
      tags:
      - internal
      operationId: createBranchProtectionRulePreflight
      responses:
        204:
          description: User has permissions to create a branch protection rule in this repository
        400:
          $ref: '#/components/responses/BadRequest'
        401:
          $ref: '#/components/responses/Unauthorized'
        404:
          $ref: '#/components/responses/NotFound'
        409:
          $ref: '#/components/responses/Conflict'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /repositories/{repository}/branch_protection:
    parameters:
    - in: path
      name: repository
      required: true
      schema:
        type: string
    get:
      deprecated: true
      tags:
      - internal
      operationId: internalGetBranchProtectionRules
      summary: get branch protection rules
      responses:
        200:
          description: branch protection rules
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/BranchProtectionRule'
        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'
    post:
      deprecated: true
      tags:
      - internal
      operationId: internalCreateBranchProtectionRule
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BranchProtectionRule'
      responses:
        204:
          description: branch protection rule created successfully
        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'
    delete:
      deprecated: true
      tags:
      - internal
      operationId: internalDeleteBranchProtectionRule
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                pattern:
                  type: string
              required:
              - pattern
      responses:
        204:
          description: branch protection rule deleted successfully
        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'
  /config/version:
    get:
      tags:
      - internal
      operationId: getLakeFSVersion
      description: get version of lakeFS server
      deprecated: true
      responses:
        200:
          description: lakeFS version
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VersionConfig'
        401:
          $ref: '#/components/responses/Unauthorized'
  /config/storage:
    get:
      tags:
      - internal
      operationId: getStorageConfig
      description: retrieve lakeFS storage configuration
      deprecated: true
      responses:
        200:
          description: lakeFS storage configuration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StorageConfig'
        401:
          $ref: '#/components/responses/Unauthorized'
  /config/garbage-collection:
    get:
      tags:
      - internal
      operationId: getGarbageCollectionConfig
      description: get information of gc settings
      responses:
        200:
          description: lakeFS garbage collection config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GarbageCollectionConfig'
        401:
          $ref: '#/components/responses/Unauthorized'
  /statistics:
    post:
      tags:
      - internal
      operationId: postStatsEvents
      summary: post stats events, this endpoint is meant for internal use only
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StatsEventsList'
      responses:
        204:
          description: reported successfully
        400:
          $ref: '#/components/responses/BadRequest'
        401:
          $ref: '#/components/responses/Unauthorized'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
  /usage-report/summary:
    get:
      tags:
      - internal
      operationId: getUsageReportSummary
      summary: get usage report summary
      responses:
        200:
          description: Usage report
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstallationUsageReport'
            application/text:
              schema:
                type: string
        401:
          $ref: '#/components/responses/Unauthorized'
        404:
          $ref: '#/components/responses/NotFound'
        429:
          description: too many requests
        default:
          $ref: '#/components/responses/ServerError'
components:
  responses:
    Conflict:
      description: Resource Conflicts With Target
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    ServerError:
      description: Internal Server Error
      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'
    Forbidden:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: Resource Not Found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    TaskCreation:
      type: object
      properties:
        id:
          description: The id of the new task
          type: string
      required:
      - id
    LoginConfig:
      type: object
      properties:
        RBAC:
          description: 'RBAC will remain enabled on GUI if "external".  That only works

            with an external auth service.

            '
          type: string
          enum:
          - none
          - simplified
          - internal
          - external
        username_ui_placeholder:
          description: 'Placeholder text to display in the username field of the login form.

            '
          type: string
        password_ui_placeholder:
          description: 'Placeholder text to display in the password field of the login form.

            '
          type: string
        login_url:
          description: Primary URL to use for login.
          type: string
        login_url_method:
          type: string
          description: 'Defines login behavior when login_url is set.

            - none: For OSS users.

            - redirect: Auto-redirect to login_url.

            - select: Show a page to choose between logging in via login_url or with lakeFS credentials.

            Ignored if login_url is not configured.

            '
          enum:
          - none
          - redirect
          - select
        login_failed_message:
          description: 'Message to display to users who fail to login; a full sentence that is rendered

            in HTML and may contain a link to a secondary login method

            '
          type: string
        fallback_login_url:
          description: Secondary URL to offer users to use for login.
          type: string
        fallback_login_label:
          description: Label to place on fallback_login_url.
          type: string
        login_cookie_names:
          description: Cookie names used to store JWT
          type: array
          items:
            type: string
        logout_url:
          description: URL to use for logging out.
          type: string
      required:
      - login_url
      - login_cookie_names
      - logout_url
    PrepareGCUncommittedRequest:
      type: object
      properties:
        continuation_token:
          type: string
    ObjectStats:
      type: object
      required:
      - checksum
      - physical_address
      - path
      - path_type
      - mtime
      properties:
        path:
          type: string
        path_type:
          type: string
          enum:
          - common_prefix
          - object
        physical_address:
          type: string
          description: 'The location of the object on the underlying object store.

            Formatted as a native URI with the object store type as scheme ("s3://...", "gs://...", etc.)

            Or, in the case of presign=true, will be an HTTP URL to be consumed via regular HTTP GET

            '
        physical_address_expiry:
          type: integer
          format: int64
          description: 'If present and nonzero, physical_address is a pre-signed URL and

            will expire at this Unix Epoch time.  This will be shorter than

            the pre-signed URL lifetime if an authentication token is about

            to expire.


            This field is *optional*.

            '
        checksum:
          type: string
        size_bytes:
          type: integer
          format: int64
          description: 'The number of bytes in the object.  lakeFS always populates this

            field when returning ObjectStats.  This field is optional _for

            the client_ to supply, for instance on upload.

            '
        mtime:
          type: integer
          format: int64
          description: Unix Epoch in seconds
        metadata:
          $ref: '#/components/schemas/ObjectUserMetadata'
        content_type:
          type: string
          description: Object media type
    AuthCapabilities:
      type: object
      properties:
        invite_user:
          type: boolean
        forgot_password:
          type: boolean
    StatsEventsList:
      type: object
      required:
      - events
      properties:
        events:
          type: array
          items:
            $ref: '#/components/schemas/StatsEvent'
    Setup:
      type: object
      properties:
        username:
          description: an identifier for the user (e.g. jane.doe)
          type: string
        key:
          $ref: '#/components/schemas/AccessKeyCredentials'
        firstName:
          description: the provided first name
          type: string
        lastName:
          description: the provided last name
          type: string
        email:
          description: the provided email
          type: string
        companyName:
          description: the provided company name
          type: string
        featureUpdates:
          description: user preference to receive feature updates
          type: boolean
        securityUpdates:
          description: user preference to receive security updates
          type: boolean
      required:
      - username
    AccessKeyCredentials:
      type: object
      properties:
        access_key_id:
          description: access key ID to set for user for use in integration testing.
          example: AKIAIOSFODNN7EXAMPLE
          type: string
          minLength: 1
        secret_access_key:
          description: secret access key to set for user for use in integration testing.
          example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
          type: string
          minLength: 1
      required:
      - access_key_id
      - secret_access_key
    CommitRecordCreation:
      type: object
      required:
      - commit_id
      - version
      - committer
      - message
      - metarange_id
      - creation_date
      - parents
      - generation
      properties:
        commit_id:
          type: string
          description: id of the commit record
        version:
          type: integer
          minimum: 0
          maximum: 1
          description: version of the commit record
        committer:
          type: string
          descri

# --- truncated at 32 KB (41 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/lakefs/refs/heads/main/openapi/lakefs-internal-api-openapi.yml