Table
Metadata

Declare a table

Changed on

Declare a table with the given name without touching storage. This is a metadata-only operation that records the table existence and sets up aspects like access control.

For DirectoryNamespace implementation, this creates a .lance-reserved file in the table directory to mark the table's existence without creating actual Lance data files.

post/v1/table/{id}/declare

Request

  • Base URL
    http://localhost:2333
  • Auth
    • OAuth 2
      Client credentials
      Token URL: /oauth/token
    • or HTTP bearer
    • or API key in header x-api-key

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

contextunknown
idstring[]
locationstring

Optional storage location for the table. If not provided, the namespace implementation should determine the table location.

vend_credentialsboolean

Whether to include vended credentials in the response storage_options. When true, the implementation should provide vended credentials for accessing storage. When not set, the implementation can decide whether to return vended credentials.

propertiesunknown

Example request

{
  "identity": {
    "api_key": "api_key",
    "auth_token": "auth_token"
  },
  "context": {
    "key": "context"
  },
  "location": "location",
  "id": [
    "id",
    "id"
  ],
  "properties": {
    "key": "properties"
  },
  "vend_credentials": true
}

Response

Table properties result when declaring a table

contextunknown
transaction_idstring

Optional transaction identifier

locationstring
storage_optionsunknown
propertiesunknown
managed_versioningboolean

When true, the caller should use namespace table version operations (CreateTableVersion, BatchCreateTableVersions, DescribeTableVersion, ListTableVersions, BatchDeleteTableVersions) to manage table versions instead of relying on Lance's native version management.

Example response

{
  "transaction_id": "transaction_id",
  "context": {
    "key": "context"
  },
  "location": "location",
  "properties": {
    "owner": "Ralph",
    "created_at": "1452120468"
  },
  "managed_versioning": true,
  "storage_options": {
    "key": "storage_options"
  }
}

Changes

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status