v52

latestOpenAPI 3.1.1Apache 2.0raw.githubusercontent.com2026-08-0354155395.9 KB
Table
Metadata

Create a new table version

Create a new version entry for table id.

This operation supports put_if_not_exists semantics. The operation will fail with 409 Conflict if the version already exists.

post/v1/table/{id}/version/create

Path parameters

idstring required

string identifier of an object in a namespace, following the Lance Namespace spec. When the value is equal to the delimiter, it represents the root namespace. For example, v1/namespace/$/list performs a ListNamespace on the root namespace.

Query parameters

delimiterstring

An optional delimiter of the string identifier, following the Lance Namespace spec. When not specified, the $ delimiter must be used.

Request body

{"stackTrail":"components:schemas:CreateTableVersionRequest:properties:context","oasType":"schema","type":"unknown","description":"Arbitrary context as key-value pairs.\nHow to use the context is custom to the specific implementation.\n\nOn a request, it carries caller-provided context to the implementation.\nOn a response, it carries implementation-provided context back to the caller.\n\nREST NAMESPACE ONLY\nContext entries are mapped to and from HTTP headers using the `header.` prefix:\n- On a request, any entry whose key starts with `header.` is sent as an HTTP\n request header with the prefix stripped. For example, the entry\n `{\"header.Authorization\": \"Bearer abc\"}` is sent as the request header\n `Authorization: Bearer abc`.\n- On a response, every HTTP response header is returned as an entry whose key is the\n header name prefixed with `header.`. For example, the response header\n `x-request-id: abc123` is returned as the entry `{\"header.x-request-id\": \"abc123\"}`.\n"}
idstring[]

The table identifier

versioninteger required

Version number to create

branchstring

Branch to target. When not specified, the main branch is used.

manifest_pathstring required

Path to the manifest file for this version

manifest_sizeinteger

Size of the manifest file in bytes

e_tagstring

Optional ETag for the manifest file

{"stackTrail":"components:schemas:CreateTableVersionRequest:properties:metadata","oasType":"schema","type":"unknown","description":"Optional metadata for the version"}
naming_schemestring

The naming scheme used for manifest files in the _versions/ directory.

Known values:

  • V1: _versions/{version}.manifest - Simple version-based naming
  • V2: _versions/{inverted_version}.manifest - Zero-padded, reversed version number (uses u64::MAX - version) for O(1) lookup of latest version on object stores

V2 is preferred for new tables as it enables efficient latest-version discovery without needing to list all versions.

Example request

{
  "naming_scheme": "V2",
  "metadata": {
    "key": "metadata"
  },
  "manifest_path": "manifest_path",
  "identity": {
    "api_key": "api_key",
    "auth_token": "auth_token"
  },
  "manifest_size": 0,
  "context": {
    "key": "context"
  },
  "id": [
    "id",
    "id"
  ],
  "e_tag": "e_tag",
  "version": 0,
  "branch": "branch"
}

Response

Result of creating a table version

{"stackTrail":"components:schemas:CreateTableVersionResponse:properties:context","oasType":"schema","type":"unknown","description":"Arbitrary context as key-value pairs.\nHow to use the context is custom to the specific implementation.\n\nOn a request, it carries caller-provided context to the implementation.\nOn a response, it carries implementation-provided context back to the caller.\n\nREST NAMESPACE ONLY\nContext entries are mapped to and from HTTP headers using the `header.` prefix:\n- On a request, any entry whose key starts with `header.` is sent as an HTTP\n request header with the prefix stripped. For example, the entry\n `{\"header.Authorization\": \"Bearer abc\"}` is sent as the request header\n `Authorization: Bearer abc`.\n- On a response, every HTTP response header is returned as an entry whose key is the\n header name prefixed with `header.`. For example, the response header\n `x-request-id: abc123` is returned as the entry `{\"header.x-request-id\": \"abc123\"}`.\n"}
transaction_idstring

Optional transaction identifier

Example response

{
  "transaction_id": "transaction_id",
  "context": {
    "key": "context"
  },
  "version": {
    "metadata": {
      "key": "metadata"
    },
    "manifest_path": "manifest_path",
    "timestamp_millis": 1,
    "manifest_size": 0,
    "e_tag": "e_tag",
    "version": 0
  }
}