Table
Metadata

Atomically create versions for multiple tables

Atomically create new version entries for multiple tables.

This operation is atomic: either all table versions are created successfully, or none are created. If any version creation fails (e.g., due to conflict), the entire batch operation fails.

Each entry in the request specifies the table identifier and version details. This supports put_if_not_exists semantics for each version entry.

post/v1/table/version/batch-create

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:BatchCreateTableVersionsRequest:properties:context","oasType":"schema","type":"unknown","description":"Arbitrary context for a request as key-value pairs.\nHow to use the context is custom to the specific implementation.\n\nREST NAMESPACE ONLY\nContext entries are passed via HTTP headers using the naming convention\n`x-lance-ctx-<key>: <value>`. For example, a context entry\n`{\"trace_id\": \"abc123\"}` would be sent as the header `x-lance-ctx-trace_id: abc123`.\n"}

Example request

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

Response

Result of atomically creating table versions

transaction_idstring

Optional transaction identifier

Example response

{
  "transaction_id": "transaction_id",
  "versions": [
    {
      "metadata": {
        "key": "metadata"
      },
      "manifest_path": "manifest_path",
      "timestamp_millis": 1,
      "manifest_size": 0,
      "e_tag": "e_tag",
      "version": 0
    },
    {
      "metadata": {
        "key": "metadata"
      },
      "manifest_path": "manifest_path",
      "timestamp_millis": 1,
      "manifest_size": 0,
      "e_tag": "e_tag",
      "version": 0
    }
  ]
}

Changes