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.
Arbitrary context as key-value pairs.
How to use the context is custom to the specific implementation.
On a request, it carries caller-provided context to the implementation.
On a response, it carries implementation-provided context back to the caller.
REST NAMESPACE ONLY
Context entries are mapped to and from HTTP headers using the header. prefix:
On a request, any entry whose key starts with header. is sent as an HTTP
request header with the prefix stripped. For example, the entry
{"header.Authorization": "Bearer abc"} is sent as the request header
Authorization: Bearer abc.
On a response, every HTTP response header is returned as an entry whose key is the
header name prefixed with header.. For example, the response header
x-request-id: abc123 is returned as the entry {"header.x-request-id": "abc123"}.
Show child attributes
Response
Result of atomically creating table versions
Response for batch creating table versions.
Contains the created versions for each table in the same order as the request.
Arbitrary context as key-value pairs.
How to use the context is custom to the specific implementation.
On a request, it carries caller-provided context to the implementation.
On a response, it carries implementation-provided context back to the caller.
REST NAMESPACE ONLY
Context entries are mapped to and from HTTP headers using the header. prefix:
On a request, any entry whose key starts with header. is sent as an HTTP
request header with the prefix stripped. For example, the entry
{"header.Authorization": "Bearer abc"} is sent as the request header
Authorization: Bearer abc.
On a response, every HTTP response header is returned as an entry whose key is the
header name prefixed with header.. For example, the response header
x-request-id: abc123 is returned as the entry {"header.x-request-id": "abc123"}.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"LanceDB","colors":{"primary":"#FF6B35","light":"#FF8A5C","dark":"#E55A2B"},"logo":{"light":"https://mintcdn.com/lancedb-bcbb4faf/6L0IRVkfdlgMU1Pw/static/assets/logo/dark-lancedb-logo.svg?fit=max\u0026auto=format\u0026n=6L0IRVkfdlgMU1Pw\u0026q=85\u0026s=d0592e59a29df2477080a857e13e341f","dark":"https://mintcdn.com/lancedb-bcbb4faf/t0AGunBr6LulGkIJ/static/assets/logo/light-lancedb-logo.svg?fit=max\u0026auto=format\u0026n=t0AGunBr6LulGkIJ\u0026q=85\u0026s=9b508fcb8d83cbc9bd05e57227d739e9","href":"https://lancedb.com"},"favicon":"https://mintcdn.com/lancedb-bcbb4faf/0sS6vrpmM3KSVyss/static/favicon.ico?fit=max\u0026auto=format\u0026n=0sS6vrpmM3KSVyss\u0026q=85\u0026s=84b9ea3dfc312b7a4dfc99219e229b33","appearance":{"strict":false},"background":{"color":{"light":"#FAF5F0","dark":"#000000"}},"navbar":{"links":[{"href":"https://www.lancedb.com/contact","label":"Support"}]},"footer":{"socials":{"github":"https://github.com/lancedb","linkedin":"https://www.linkedin.com/company/lancedb","x":"https://x.com/lancedb","discord":"https://discord.gg/AUEWnJ7Txb"},"links":[{"items":[{"label":"Cookie settings","href":"#cookie-settings"}]}]},"fonts":{"family":"Inter"},"styling":{"codeblocks":{"theme":{"light":"vitesse-light","dark":"catppuccin-mocha"}},"latex":true},"integrations":{"ga4":{"measurementId":"G-1TMC2PR69E"}},"banner":{"content":"[From the Reverie stage to your screen. Recordings coming soon.](https://www.reveriesummit.com/?utm_campaign=reverie-2026\u0026utm_content=docs\u0026utm_medium=lancedb\u0026utm_source=banner)","dismissible":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"lancedb-bcbb4faf","hasAudioNarration":false,"actualSubdomain":"lancedb-bcbb4faf","customDomains":["docs.lancedb.com"],"gitSource":{"type":"github","owner":"lancedb","repo":"docs","deployBranch":"assembled","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":"","_id":"6af512fe0902081a53d8698c"},"feedback":{"thumbs":true,"edits":false,"issues":false},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af512fe0902081a53d86992","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"default","tag":"Documentation","count":366},{"language":"default","tag":"Enterprise","count":340},{"language":"default","tag":"Embedded","count":340},{"language":"default","tag":"API Reference","count":110},{"language":"default","tag":"REST API","count":110},{"language":"default","tag":"Feature Engineering","count":90},{"language":"default","tag":"Table","count":88},{"language":"default","tag":"Integrations","count":84},{"language":"default","tag":"SQL Reference","count":80},{"language":"default","tag":"Geneva","count":68}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"static/styles/style.css","content":":root{--banner-left: #e4d8f8;--banner-right: #e55a2b}@font-face{font-family:\"LanceDB KaTeX AMS\";src:url(\"https://cdn.jsdelivr.net/npm/katex@0.16.0/dist/fonts/KaTeX_AMS-Regular.woff2\") format(\"woff2\");font-display:swap;font-style:normal;font-weight:400}.katex .mathbb,.katex .textbb{font-family:\"LanceDB KaTeX AMS\", \"KaTeX_AMS\", serif!important}#banner,:where(.banner,[data-banner],[class*=\"Banner_banner\"]){background:linear-gradient(90deg, var(--banner-left) 0%, var(--banner-right) 100%)!important;color:#1b0f09!important;border:none!important}#banner a,:where(.banner,[data-banner],[class*=\"Banner_banner\"]) a{color:#1b0f09!important;font-size:0.9rem;font-weight:500;text-decoration-color:rgba(27, 15, 9, 0.35)}#banner button,:where(.banner,[data-banner],[class*=\"Banner_banner\"]) button{color:#1b0f09!important}"}],"page":{"pagePath":"oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables","slug":"/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables","pageMetadata":{"title":"Atomically create versions for multiple tables","description":"Atomically create new version entries for multiple tables.\n\nThis operation is atomic: either all table versions are created successfully,\nor none are created. If any version creation fails (e.g., due to conflict),\nthe entire batch operation fails.\n\nEach entry in the request specifies the table identifier and version details.\nThis supports `put_if_not_exists` semantics for each version entry.\n","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/version/batch-create","href":"/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Atomically create new version entries for multiple tables.\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"This operation is atomic: either all table versions are created successfully,\\nor none are created. If any version creation fails (e.g., due to conflict),\\nthe entire batch operation fails.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Each entry in the request specifies the table identifier and version details.\\nThis supports \", _jsx(_components.code, {\n children: \"put_if_not_exists\"\n }), \" semantics for each version entry.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"codeStyling":{"theme":{"light":"vitesse-light","dark":"catppuccin-mocha"}},"config":{},"pageMetadata":{"title":"Atomically create versions for multiple tables","description":"Atomically create new version entries for multiple tables.\n\nThis operation is atomic: either all table versions are created successfully,\nor none are created. If any version creation fails (e.g., due to conflict),\nthe entire batch operation fails.\n\nEach entry in the request specifies the table identifier and version details.\nThis supports `put_if_not_exists` semantics for each version entry.\n","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/version/batch-create","href":"/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/lancedb-bcbb4faf/71b64c20a8f631b3/static/scripts/cookie-consent.js"],"openApiReferenceData":{"operation":{"tags":["Table","Metadata"],"summary":"Atomically create versions for multiple tables","operationId":"BatchCreateTableVersions","description":"Atomically create new version entries for multiple tables.\n\nThis operation is atomic: either all table versions are created successfully,\nor none are created. If any version creation fails (e.g., due to conflict),\nthe entire batch operation fails.\n\nEach entry in the request specifies the table identifier and version details.\nThis supports `put_if_not_exists` semantics for each version entry.\n","requestBody":"4df53bf6-dc4d-4bba-bd17-dc1704ea6ca4","responses":{"200":"2120a0d1-95d0-4ada-8103-7cad2ac35080","400":"f96e635a-7e6f-4e3c-bccb-4fed96b3ff60","401":"2e7d688e-9ef5-4460-9d8c-6db590c61e17","403":"c971d71c-3f68-41c5-a02e-16ea64410d81","404":"326621d1-485b-4d77-9d94-47a15396ce06","409":"a0ce44b6-daee-4f7b-81a5-cbf325586bfa","503":"e115df0e-b115-4bf5-b6e2-c4a82dc056d3","5XX":"5aaf9ae7-34d2-466b-9136-7b738124d4fe"},"method":"post","type":"path","servers":["7e3de05c-4b7a-4e28-8d5c-723f0e9111c7","c6e00ea0-17e0-471f-ad6c-2b1efd9485ce","62d9fba7-b616-457d-b75f-228ac1d4efa6"],"security":["06e93eb3-4780-44a7-a042-eba2ebd534a8","431b05b6-1cb9-4c55-b5cd-71651ec398b1","356b6537-b8bb-47bd-bce2-ced9b57abfa3"],"path":"/v1/table/version/batch-create","baseUrlOptions":["http://localhost:2333","{scheme}://{host}:{port}/{basePath}","{scheme}://{host}/{basePath}"],"title":"Atomically create versions for multiple tables","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"65c10c0c-8a48-4715-ba03-8fbdd2c99292":{"name":"delimiter","description":"An optional delimiter of the `string identifier`, following the Lance Namespace spec.\nWhen not specified, the `$` delimiter must be used.\n","in":"query","required":false,"schema":{"type":"string","isRequired":false,"description":"An optional delimiter of the `string identifier`, following the Lance Namespace spec.\nWhen not specified, the `$` delimiter must be used.\n","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","description":"Request to atomically create new version entries for multiple tables.\nThe operation is atomic: all versions are created or none are.\n","required":["entries"],"properties":{"entries":{"type":"array","items":{"type":"object","description":"An entry for creating a new table version in a batch operation.\nThis supports `put_if_not_exists` semantics,\nwhere the operation fails if the version already exists.\n","required":["id","version","manifest_path"],"properties":{"id":{"type":"array","items":{"type":"string","uniqueKey":"entries.items.[INDEX].id.items.[INDEX]","typeLabel":"string"},"description":"The table identifier","isRequired":true,"uniqueKey":"entries.items.[INDEX].id","typeLabel":"string[]"},"version":{"type":"integer","format":"int64","minimum":0,"description":"Version number to create","isRequired":true,"uniqueKey":"entries.items.[INDEX].version","typeLabel":"integer\u003cint64>"},"manifest_path":{"type":"string","description":"Path to the manifest file for this version","isRequired":true,"uniqueKey":"entries.items.[INDEX].manifest_path","typeLabel":"string"},"branch":{"type":"string","description":"Branch to target. When not specified, the main branch is used.\n","uniqueKey":"entries.items.[INDEX].branch","typeLabel":"string"},"manifest_size":{"type":"integer","format":"int64","minimum":0,"description":"Size of the manifest file in bytes","uniqueKey":"entries.items.[INDEX].manifest_size","typeLabel":"integer\u003cint64>"},"e_tag":{"type":"string","description":"Optional ETag for the manifest file","uniqueKey":"entries.items.[INDEX].e_tag","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"entries.items.[INDEX].metadata.additionalProperties","typeLabel":"string"},"description":"Optional metadata for the version","uniqueKey":"entries.items.[INDEX].metadata","typeLabel":"object"},"naming_scheme":{"type":"string","description":"The naming scheme used for manifest files in the `_versions/` directory.\n\nKnown values:\n- `V1`: `_versions/{version}.manifest` - Simple version-based naming\n- `V2`: `_versions/{inverted_version}.manifest` - Zero-padded, reversed version number\n (uses `u64::MAX - version`) for O(1) lookup of latest version on object stores\n\nV2 is preferred for new tables as it enables efficient latest-version discovery\nwithout needing to list all versions.\n","example":"V2","uniqueKey":"entries.items.[INDEX].naming_scheme","typeLabel":"string"}},"uniqueKey":"entries.items.[INDEX]","typeLabel":"object"},"description":"List of table version entries to create atomically","isRequired":true,"uniqueKey":"entries","typeLabel":"object[]"},"identity":{"type":"object","description":"Identity information of a request.\n","properties":{"api_key":{"type":"string","description":"API key for authentication.\n\nREST NAMESPACE ONLY\nThis is passed via the `x-api-key` header.\n","uniqueKey":"identity.api_key","typeLabel":"string"},"auth_token":{"type":"string","description":"Bearer token for authentication.\n\nREST NAMESPACE ONLY\nThis is passed via the `Authorization` header\nwith the Bearer scheme (e.g., `Bearer \u003ctoken>`).\n","uniqueKey":"identity.auth_token","typeLabel":"string"}},"uniqueKey":"identity","typeLabel":"object"},"context":{"type":"object","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","additionalProperties":{"type":"string","uniqueKey":"context.additionalProperties","typeLabel":"string"},"uniqueKey":"context","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"entries":[{"id":["\u003cstring>"],"version":1,"manifest_path":"\u003cstring>","branch":"\u003cstring>","manifest_size":1,"e_tag":"\u003cstring>","metadata":{},"naming_scheme":"V2"}],"identity":{"api_key":"\u003cstring>","auth_token":"\u003cstring>"},"context":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"2120a0d1-95d0-4ada-8103-7cad2ac35080":{"description":"Result of atomically creating table versions","content":{"application/json":{"schema":{"type":"object","description":"Response for batch creating table versions.\nContains the created versions for each table in the same order as the request.\n","required":["versions"],"properties":{"versions":{"type":"array","items":{"type":"object","required":["version","manifest_path"],"properties":{"version":{"type":"integer","format":"int64","minimum":0,"description":"Version number","isRequired":true,"uniqueKey":"versions.items.[INDEX].version","typeLabel":"integer\u003cint64>"},"manifest_path":{"type":"string","description":"Path to the manifest file for this version.","isRequired":true,"uniqueKey":"versions.items.[INDEX].manifest_path","typeLabel":"string"},"manifest_size":{"type":"integer","format":"int64","minimum":0,"description":"Size of the manifest file in bytes","uniqueKey":"versions.items.[INDEX].manifest_size","typeLabel":"integer\u003cint64>"},"e_tag":{"type":"string","description":"Optional ETag for optimistic concurrency control.\nUseful for S3 and similar object stores.\n","uniqueKey":"versions.items.[INDEX].e_tag","typeLabel":"string"},"timestamp_millis":{"type":"integer","format":"int64","description":"Timestamp when the version was created, in milliseconds since epoch (Unix time)","uniqueKey":"versions.items.[INDEX].timestamp_millis","typeLabel":"integer\u003cint64>"},"metadata":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"versions.items.[INDEX].metadata.additionalProperties","typeLabel":"string"},"description":"Optional key-value pairs of metadata","uniqueKey":"versions.items.[INDEX].metadata","typeLabel":"object"}},"uniqueKey":"versions.items.[INDEX]","typeLabel":"object"},"description":"List of created table versions in the same order as the request entries","isRequired":true,"uniqueKey":"versions","typeLabel":"object[]"},"context":{"type":"object","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","additionalProperties":{"type":"string","uniqueKey":"context.additionalProperties","typeLabel":"string"},"uniqueKey":"context","typeLabel":"object"},"transaction_id":{"type":"string","description":"Optional transaction identifier","uniqueKey":"transaction_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"versions":[{"version":1,"manifest_path":"\u003cstring>","manifest_size":1,"e_tag":"\u003cstring>","timestamp_millis":123,"metadata":{}}],"context":{},"transaction_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"f96e635a-7e6f-4e3c-bccb-4fed96b3ff60":{"description":"Indicates a bad request error. It could be caused by an unexpected request body format or other forms of request validation failure, such as invalid json. Usually serves application/json content, although in some cases simple text/plain content might be returned by the server's middleware.","content":{"application/json":{"schema":{"type":"object","description":"Common JSON error response model","required":["code"],"properties":{"code":{"type":"integer","minimum":0,"description":"Lance Namespace error code identifying the error type.\n\nError codes:\n 0 - Unsupported: Operation not supported by this backend\n 1 - NamespaceNotFound: The specified namespace does not exist\n 2 - NamespaceAlreadyExists: A namespace with this name already exists\n 3 - NamespaceNotEmpty: Namespace contains tables or child namespaces\n 4 - TableNotFound: The specified table does not exist\n 5 - TableAlreadyExists: A table with this name already exists\n 6 - TableIndexNotFound: The specified table index does not exist\n 7 - TableIndexAlreadyExists: A table index with this name already exists\n 8 - TableTagNotFound: The specified table tag does not exist\n 9 - TableTagAlreadyExists: A table tag with this name already exists\n 10 - TransactionNotFound: The specified transaction does not exist\n 11 - TableVersionNotFound: The specified table version does not exist\n 12 - TableColumnNotFound: The specified table field does not exist\n 13 - InvalidInput: Malformed request or invalid parameters\n 14 - ConcurrentModification: Optimistic concurrency conflict\n 15 - PermissionDenied: User lacks permission for this operation\n 16 - Unauthenticated: Authentication credentials are missing or invalid\n 17 - ServiceUnavailable: Service is temporarily unavailable\n 18 - Internal: Unexpected server/implementation error\n 19 - InvalidTableState: Table is in an invalid state for the operation\n 20 - TableSchemaValidationError: Table schema validation failed\n 21 - Throttling: Request rate limit exceeded\n 22 - TableBranchNotFound: The specified table branch does not exist\n 23 - TableBranchAlreadyExists: A table branch with this name already exists\n","example":4,"isRequired":true,"uniqueKey":"code","typeLabel":"integer"},"context":{"type":"object","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","additionalProperties":{"type":"string","uniqueKey":"context.additionalProperties","typeLabel":"string"},"uniqueKey":"context","typeLabel":"object"},"error":{"type":"string","description":"A brief, human-readable message about the error.","example":"Table 'users' not found in namespace 'production'","uniqueKey":"error","typeLabel":"string"},"detail":{"type":"string","description":"An optional human-readable explanation of the error.\nThis can be used to record additional information such as stack trace.\n","example":"The table may have been dropped or renamed","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"A string that identifies the specific occurrence of the error.\nThis can be a URI, a request or response ID,\nor anything that the implementation can recognize to trace specific occurrence of the error.\n","example":"/v1/table/production$users/describe","uniqueKey":"instance","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"/errors/bad-request","title":"Malformed request","status":400,"detail":"","instance":"/v1/namespaces"},"examples":{"Example":{"title":"Example","value":{"type":"/errors/bad-request","title":"Malformed request","status":400,"detail":"","instance":"/v1/namespaces"}}},"exampleType":"examples"}},"exampleType":"examples"},"2e7d688e-9ef5-4460-9d8c-6db590c61e17":{"description":"Unauthorized. The request lacks valid authentication credentials for the operation.","content":{"application/json":{"schema":{"type":"object","description":"Common JSON error response model","required":["code"],"properties":{"code":{"type":"integer","minimum":0,"description":"Lance Namespace error code identifying the error type.\n\nError codes:\n 0 - Unsupported: Operation not supported by this backend\n 1 - NamespaceNotFound: The specified namespace does not exist\n 2 - NamespaceAlreadyExists: A namespace with this name already exists\n 3 - NamespaceNotEmpty: Namespace contains tables or child namespaces\n 4 - TableNotFound: The specified table does not exist\n 5 - TableAlreadyExists: A table with this name already exists\n 6 - TableIndexNotFound: The specified table index does not exist\n 7 - TableIndexAlreadyExists: A table index with this name already exists\n 8 - TableTagNotFound: The specified table tag does not exist\n 9 - TableTagAlreadyExists: A table tag with this name already exists\n 10 - TransactionNotFound: The specified transaction does not exist\n 11 - TableVersionNotFound: The specified table version does not exist\n 12 - TableColumnNotFound: The specified table field does not exist\n 13 - InvalidInput: Malformed request or invalid parameters\n 14 - ConcurrentModification: Optimistic concurrency conflict\n 15 - PermissionDenied: User lacks permission for this operation\n 16 - Unauthenticated: Authentication credentials are missing or invalid\n 17 - ServiceUnavailable: Service is temporarily unavailable\n 18 - Internal: Unexpected server/implementation error\n 19 - InvalidTableState: Table is in an invalid state for the operation\n 20 - TableSchemaValidationError: Table schema validation failed\n 21 - Throttling: Request rate limit exceeded\n 22 - TableBranchNotFound: The specified table branch does not exist\n 23 - TableBranchAlreadyExists: A table branch with this name already exists\n","example":4,"isRequired":true,"uniqueKey":"code","typeLabel":"integer"},"context":{"type":"object","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","additionalProperties":{"type":"string","uniqueKey":"context.additionalProperties","typeLabel":"string"},"uniqueKey":"context","typeLabel":"object"},"error":{"type":"string","description":"A brief, human-readable message about the error.","example":"Table 'users' not found in namespace 'production'","uniqueKey":"error","typeLabel":"string"},"detail":{"type":"string","description":"An optional human-readable explanation of the error.\nThis can be used to record additional information such as stack trace.\n","example":"The table may have been dropped or renamed","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"A string that identifies the specific occurrence of the error.\nThis can be a URI, a request or response ID,\nor anything that the implementation can recognize to trace specific occurrence of the error.\n","example":"/v1/table/production$users/describe","uniqueKey":"instance","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"/errors/unauthorized-request","title":"No valid authentication credentials for the operation","status":401,"detail":"","instance":"/v1/namespaces"},"examples":{"Example":{"title":"Example","value":{"type":"/errors/unauthorized-request","title":"No valid authentication credentials for the operation","status":401,"detail":"","instance":"/v1/namespaces"}}},"exampleType":"examples"}},"exampleType":"examples"},"c971d71c-3f68-41c5-a02e-16ea64410d81":{"description":"Forbidden. Authenticated user does not have the necessary permissions.","content":{"application/json":{"schema":{"type":"object","description":"Common JSON error response model","required":["code"],"properties":{"code":{"type":"integer","minimum":0,"description":"Lance Namespace error code identifying the error type.\n\nError codes:\n 0 - Unsupported: Operation not supported by this backend\n 1 - NamespaceNotFound: The specified namespace does not exist\n 2 - NamespaceAlreadyExists: A namespace with this name already exists\n 3 - NamespaceNotEmpty: Namespace contains tables or child namespaces\n 4 - TableNotFound: The specified table does not exist\n 5 - TableAlreadyExists: A table with this name already exists\n 6 - TableIndexNotFound: The specified table index does not exist\n 7 - TableIndexAlreadyExists: A table index with this name already exists\n 8 - TableTagNotFound: The specified table tag does not exist\n 9 - TableTagAlreadyExists: A table tag with this name already exists\n 10 - TransactionNotFound: The specified transaction does not exist\n 11 - TableVersionNotFound: The specified table version does not exist\n 12 - TableColumnNotFound: The specified table field does not exist\n 13 - InvalidInput: Malformed request or invalid parameters\n 14 - ConcurrentModification: Optimistic concurrency conflict\n 15 - PermissionDenied: User lacks permission for this operation\n 16 - Unauthenticated: Authentication credentials are missing or invalid\n 17 - ServiceUnavailable: Service is temporarily unavailable\n 18 - Internal: Unexpected server/implementation error\n 19 - InvalidTableState: Table is in an invalid state for the operation\n 20 - TableSchemaValidationError: Table schema validation failed\n 21 - Throttling: Request rate limit exceeded\n 22 - TableBranchNotFound: The specified table branch does not exist\n 23 - TableBranchAlreadyExists: A table branch with this name already exists\n","example":4,"isRequired":true,"uniqueKey":"code","typeLabel":"integer"},"context":{"type":"object","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","additionalProperties":{"type":"string","uniqueKey":"context.additionalProperties","typeLabel":"string"},"uniqueKey":"context","typeLabel":"object"},"error":{"type":"string","description":"A brief, human-readable message about the error.","example":"Table 'users' not found in namespace 'production'","uniqueKey":"error","typeLabel":"string"},"detail":{"type":"string","description":"An optional human-readable explanation of the error.\nThis can be used to record additional information such as stack trace.\n","example":"The table may have been dropped or renamed","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"A string that identifies the specific occurrence of the error.\nThis can be a URI, a request or response ID,\nor anything that the implementation can recognize to trace specific occurrence of the error.\n","example":"/v1/table/production$users/describe","uniqueKey":"instance","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"/errors/forbidden-request","title":"Not authorized to make this request","status":403,"detail":"","instance":"/v1/namespaces"},"examples":{"Example":{"title":"Example","value":{"type":"/errors/forbidden-request","title":"Not authorized to make this request","status":403,"detail":"","instance":"/v1/namespaces"}}},"exampleType":"examples"}},"exampleType":"examples"},"326621d1-485b-4d77-9d94-47a15396ce06":{"description":"A server-side problem that means can not find the specified resource.","content":{"application/json":{"schema":{"type":"object","description":"Common JSON error response model","required":["code"],"properties":{"code":{"type":"integer","minimum":0,"description":"Lance Namespace error code identifying the error type.\n\nError codes:\n 0 - Unsupported: Operation not supported by this backend\n 1 - NamespaceNotFound: The specified namespace does not exist\n 2 - NamespaceAlreadyExists: A namespace with this name already exists\n 3 - NamespaceNotEmpty: Namespace contains tables or child namespaces\n 4 - TableNotFound: The specified table does not exist\n 5 - TableAlreadyExists: A table with this name already exists\n 6 - TableIndexNotFound: The specified table index does not exist\n 7 - TableIndexAlreadyExists: A table index with this name already exists\n 8 - TableTagNotFound: The specified table tag does not exist\n 9 - TableTagAlreadyExists: A table tag with this name already exists\n 10 - TransactionNotFound: The specified transaction does not exist\n 11 - TableVersionNotFound: The specified table version does not exist\n 12 - TableColumnNotFound: The specified table field does not exist\n 13 - InvalidInput: Malformed request or invalid parameters\n 14 - ConcurrentModification: Optimistic concurrency conflict\n 15 - PermissionDenied: User lacks permission for this operation\n 16 - Unauthenticated: Authentication credentials are missing or invalid\n 17 - ServiceUnavailable: Service is temporarily unavailable\n 18 - Internal: Unexpected server/implementation error\n 19 - InvalidTableState: Table is in an invalid state for the operation\n 20 - TableSchemaValidationError: Table schema validation failed\n 21 - Throttling: Request rate limit exceeded\n 22 - TableBranchNotFound: The specified table branch does not exist\n 23 - TableBranchAlreadyExists: A table branch with this name already exists\n","example":4,"isRequired":true,"uniqueKey":"code","typeLabel":"integer"},"context":{"type":"object","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","additionalProperties":{"type":"string","uniqueKey":"context.additionalProperties","typeLabel":"string"},"uniqueKey":"context","typeLabel":"object"},"error":{"type":"string","description":"A brief, human-readable message about the error.","example":"Table 'users' not found in namespace 'production'","uniqueKey":"error","typeLabel":"string"},"detail":{"type":"string","description":"An optional human-readable explanation of the error.\nThis can be used to record additional information such as stack trace.\n","example":"The table may have been dropped or renamed","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"A string that identifies the specific occurrence of the error.\nThis can be a URI, a request or response ID,\nor anything that the implementation can recognize to trace specific occurrence of the error.\n","example":"/v1/table/production$users/describe","uniqueKey":"instance","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"/errors/not-found-error","title":"Not found Error","status":404,"detail":"","instance":"/v1/namespaces/{ns}"},"examples":{"Example":{"title":"Example","value":{"type":"/errors/not-found-error","title":"Not found Error","status":404,"detail":"","instance":"/v1/namespaces/{ns}"}}},"exampleType":"examples"}},"exampleType":"examples"},"a0ce44b6-daee-4f7b-81a5-cbf325586bfa":{"description":"The request conflicts with the current state of the target resource.","content":{"application/json":{"schema":{"type":"object","description":"Common JSON error response model","required":["code"],"properties":{"code":{"type":"integer","minimum":0,"description":"Lance Namespace error code identifying the error type.\n\nError codes:\n 0 - Unsupported: Operation not supported by this backend\n 1 - NamespaceNotFound: The specified namespace does not exist\n 2 - NamespaceAlreadyExists: A namespace with this name already exists\n 3 - NamespaceNotEmpty: Namespace contains tables or child namespaces\n 4 - TableNotFound: The specified table does not exist\n 5 - TableAlreadyExists: A table with this name already exists\n 6 - TableIndexNotFound: The specified table index does not exist\n 7 - TableIndexAlreadyExists: A table index with this name already exists\n 8 - TableTagNotFound: The specified table tag does not exist\n 9 - TableTagAlreadyExists: A table tag with this name already exists\n 10 - TransactionNotFound: The specified transaction does not exist\n 11 - TableVersionNotFound: The specified table version does not exist\n 12 - TableColumnNotFound: The specified table field does not exist\n 13 - InvalidInput: Malformed request or invalid parameters\n 14 - ConcurrentModification: Optimistic concurrency conflict\n 15 - PermissionDenied: User lacks permission for this operation\n 16 - Unauthenticated: Authentication credentials are missing or invalid\n 17 - ServiceUnavailable: Service is temporarily unavailable\n 18 - Internal: Unexpected server/implementation error\n 19 - InvalidTableState: Table is in an invalid state for the operation\n 20 - TableSchemaValidationError: Table schema validation failed\n 21 - Throttling: Request rate limit exceeded\n 22 - TableBranchNotFound: The specified table branch does not exist\n 23 - TableBranchAlreadyExists: A table branch with this name already exists\n","example":4,"isRequired":true,"uniqueKey":"code","typeLabel":"integer"},"context":{"type":"object","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","additionalProperties":{"type":"string","uniqueKey":"context.additionalProperties","typeLabel":"string"},"uniqueKey":"context","typeLabel":"object"},"error":{"type":"string","description":"A brief, human-readable message about the error.","example":"Table 'users' not found in namespace 'production'","uniqueKey":"error","typeLabel":"string"},"detail":{"type":"string","description":"An optional human-readable explanation of the error.\nThis can be used to record additional information such as stack trace.\n","example":"The table may have been dropped or renamed","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"A string that identifies the specific occurrence of the error.\nThis can be a URI, a request or response ID,\nor anything that the implementation can recognize to trace specific occurrence of the error.\n","example":"/v1/table/production$users/describe","uniqueKey":"instance","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"/errors/conflict","title":"The namespace has been concurrently modified","status":409,"detail":"","instance":"/v1/namespaces/{ns}"},"examples":{"Example":{"title":"Example","value":{"type":"/errors/conflict","title":"The namespace has been concurrently modified","status":409,"detail":"","instance":"/v1/namespaces/{ns}"}}},"exampleType":"examples"}},"exampleType":"examples"},"e115df0e-b115-4bf5-b6e2-c4a82dc056d3":{"description":"The service is not ready to handle the request. The client should wait and retry. The service may additionally send a Retry-After header to indicate when to retry.","content":{"application/json":{"schema":{"type":"object","description":"Common JSON error response model","required":["code"],"properties":{"code":{"type":"integer","minimum":0,"description":"Lance Namespace error code identifying the error type.\n\nError codes:\n 0 - Unsupported: Operation not supported by this backend\n 1 - NamespaceNotFound: The specified namespace does not exist\n 2 - NamespaceAlreadyExists: A namespace with this name already exists\n 3 - NamespaceNotEmpty: Namespace contains tables or child namespaces\n 4 - TableNotFound: The specified table does not exist\n 5 - TableAlreadyExists: A table with this name already exists\n 6 - TableIndexNotFound: The specified table index does not exist\n 7 - TableIndexAlreadyExists: A table index with this name already exists\n 8 - TableTagNotFound: The specified table tag does not exist\n 9 - TableTagAlreadyExists: A table tag with this name already exists\n 10 - TransactionNotFound: The specified transaction does not exist\n 11 - TableVersionNotFound: The specified table version does not exist\n 12 - TableColumnNotFound: The specified table field does not exist\n 13 - InvalidInput: Malformed request or invalid parameters\n 14 - ConcurrentModification: Optimistic concurrency conflict\n 15 - PermissionDenied: User lacks permission for this operation\n 16 - Unauthenticated: Authentication credentials are missing or invalid\n 17 - ServiceUnavailable: Service is temporarily unavailable\n 18 - Internal: Unexpected server/implementation error\n 19 - InvalidTableState: Table is in an invalid state for the operation\n 20 - TableSchemaValidationError: Table schema validation failed\n 21 - Throttling: Request rate limit exceeded\n 22 - TableBranchNotFound: The specified table branch does not exist\n 23 - TableBranchAlreadyExists: A table branch with this name already exists\n","example":4,"isRequired":true,"uniqueKey":"code","typeLabel":"integer"},"context":{"type":"object","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","additionalProperties":{"type":"string","uniqueKey":"context.additionalProperties","typeLabel":"string"},"uniqueKey":"context","typeLabel":"object"},"error":{"type":"string","description":"A brief, human-readable message about the error.","example":"Table 'users' not found in namespace 'production'","uniqueKey":"error","typeLabel":"string"},"detail":{"type":"string","description":"An optional human-readable explanation of the error.\nThis can be used to record additional information such as stack trace.\n","example":"The table may have been dropped or renamed","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"A string that identifies the specific occurrence of the error.\nThis can be a URI, a request or response ID,\nor anything that the implementation can recognize to trace specific occurrence of the error.\n","example":"/v1/table/production$users/describe","uniqueKey":"instance","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"/errors/service-unavailable","title":"Slow down","status":503,"detail":"","instance":"/v1/namespaces"},"examples":{"Example":{"title":"Example","value":{"type":"/errors/service-unavailable","title":"Slow down","status":503,"detail":"","instance":"/v1/namespaces"}}},"exampleType":"examples"}},"exampleType":"examples"},"5aaf9ae7-34d2-466b-9136-7b738124d4fe":{"description":"A server-side problem that might not be addressable from the client side. Used for server 5xx errors without more specific documentation in individual routes.","content":{"application/json":{"schema":{"type":"object","description":"Common JSON error response model","required":["code"],"properties":{"code":{"type":"integer","minimum":0,"description":"Lance Namespace error code identifying the error type.\n\nError codes:\n 0 - Unsupported: Operation not supported by this backend\n 1 - NamespaceNotFound: The specified namespace does not exist\n 2 - NamespaceAlreadyExists: A namespace with this name already exists\n 3 - NamespaceNotEmpty: Namespace contains tables or child namespaces\n 4 - TableNotFound: The specified table does not exist\n 5 - TableAlreadyExists: A table with this name already exists\n 6 - TableIndexNotFound: The specified table index does not exist\n 7 - TableIndexAlreadyExists: A table index with this name already exists\n 8 - TableTagNotFound: The specified table tag does not exist\n 9 - TableTagAlreadyExists: A table tag with this name already exists\n 10 - TransactionNotFound: The specified transaction does not exist\n 11 - TableVersionNotFound: The specified table version does not exist\n 12 - TableColumnNotFound: The specified table field does not exist\n 13 - InvalidInput: Malformed request or invalid parameters\n 14 - ConcurrentModification: Optimistic concurrency conflict\n 15 - PermissionDenied: User lacks permission for this operation\n 16 - Unauthenticated: Authentication credentials are missing or invalid\n 17 - ServiceUnavailable: Service is temporarily unavailable\n 18 - Internal: Unexpected server/implementation error\n 19 - InvalidTableState: Table is in an invalid state for the operation\n 20 - TableSchemaValidationError: Table schema validation failed\n 21 - Throttling: Request rate limit exceeded\n 22 - TableBranchNotFound: The specified table branch does not exist\n 23 - TableBranchAlreadyExists: A table branch with this name already exists\n","example":4,"isRequired":true,"uniqueKey":"code","typeLabel":"integer"},"context":{"type":"object","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","additionalProperties":{"type":"string","uniqueKey":"context.additionalProperties","typeLabel":"string"},"uniqueKey":"context","typeLabel":"object"},"error":{"type":"string","description":"A brief, human-readable message about the error.","example":"Table 'users' not found in namespace 'production'","uniqueKey":"error","typeLabel":"string"},"detail":{"type":"string","description":"An optional human-readable explanation of the error.\nThis can be used to record additional information such as stack trace.\n","example":"The table may have been dropped or renamed","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"A string that identifies the specific occurrence of the error.\nThis can be a URI, a request or response ID,\nor anything that the implementation can recognize to trace specific occurrence of the error.\n","example":"/v1/table/production$users/describe","uniqueKey":"instance","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"/errors/server-error","title":"Internal Server Error","status":500,"detail":"","instance":"/v1/namespaces"},"examples":{"Example":{"title":"Example","value":{"type":"/errors/server-error","title":"Internal Server Error","status":500,"detail":"","instance":"/v1/namespaces"}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"06e93eb3-4780-44a7-a042-eba2ebd534a8":{"OAuth2":{"type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"/oauth/token","scopes":{}}},"scopes":[],"schemeName":"OAuth2"}},"431b05b6-1cb9-4c55-b5cd-71651ec398b1":{"BearerAuth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"BearerAuth"}},"356b6537-b8bb-47bd-bce2-ced9b57abfa3":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"7e3de05c-4b7a-4e28-8d5c-723f0e9111c7":{"url":"http://localhost:2333","description":"Default local server"},"c6e00ea0-17e0-471f-ad6c-2b1efd9485ce":{"url":"{scheme}://{host}:{port}/{basePath}","description":"Generic server URL with all parts configurable","variables":{"scheme":{"default":"http"},"host":{"default":"localhost"},"port":{"default":"2333"},"basePath":{"default":""}}},"62d9fba7-b616-457d-b75f-228ac1d4efa6":{"url":"{scheme}://{host}/{basePath}","description":"Server URL when the port can be inferred from the scheme","variables":{"scheme":{"default":"http"},"host":{"default":"localhost"},"basePath":{"default":""}}}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"/oauth/token","scopes":{}}},"scopes":[],"schemeName":"OAuth2"},"schema":{"title":"OAuth2 Auth","type":"string","isRequired":true,"description":"The access token received from the authorization server in the OAuth 2.0 flow.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"OAuth2","name":"Authorization"}],"title":"OAuth2"},{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"},{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"x-api-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"x-api-key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"oss/v0-41-0/api-reference/rest/openapi.yml"},"subdomain":"lancedb-bcbb4faf","siteName":"LanceDB","title":"Atomically create versions for multiple tables - LanceDB","navMaps":{"firstHrefInVersion":{"1.12.0":{"href":"/enterprise/v1-12-0","matchLevel":4},"0.41.0":{"href":"/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables","matchLevel":0}},"firstHrefInLanguage":{}},"lastModified":"2026-11-12T01:14:47.449Z","originalFileLocation":"oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"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.\">\u003cmeta data-mint-head name=\"application-name\" content=\"LanceDB\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/lancedb-bcbb4faf/AJCI1CXWoYDPZbb4/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/lancedb-bcbb4faf/AJCI1CXWoYDPZbb4/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/lancedb-bcbb4faf/AJCI1CXWoYDPZbb4/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/lancedb-bcbb4faf/AJCI1CXWoYDPZbb4/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/lancedb-bcbb4faf/AJCI1CXWoYDPZbb4/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/lancedb-bcbb4faf/AJCI1CXWoYDPZbb4/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/lancedb-bcbb4faf/AJCI1CXWoYDPZbb4/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/lancedb-bcbb4faf/AJCI1CXWoYDPZbb4/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/lancedb-bcbb4faf/AJCI1CXWoYDPZbb4/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Atomically create versions for multiple tables - LanceDB\">\u003cmeta data-mint-head property=\"og:description\" content=\"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.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"LanceDB\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://lancedb-bcbb4faf.mintlify.site/_mintlify/api/og/v2?division=Table\u0026amp;title=Atomically+create+versions+for+multiple+tables\u0026amp;description=Atomically+create+new+version+entries+for+multiple+tables.%0A%0AThis+operation+is+atomic%3A+either+all+table+versions+are+created+successfully%2C%0Aor+none+are+created.+I\u0026amp;theme=9d8045ca9469df4ceece463f\u0026amp;signature=0d542f669bca3bbf930c70be60ec596d8727d1b3088fadffabd56ecbed36a74e\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Atomically create versions for multiple tables - LanceDB\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"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.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://lancedb-bcbb4faf.mintlify.site/_mintlify/api/og/v2?division=Table\u0026amp;title=Atomically+create+versions+for+multiple+tables\u0026amp;description=Atomically+create+new+version+entries+for+multiple+tables.%0A%0AThis+operation+is+atomic%3A+either+all+table+versions+are+created+successfully%2C%0Aor+none+are+created.+I\u0026amp;theme=9d8045ca9469df4ceece463f\u0026amp;signature=0d542f669bca3bbf930c70be60ec596d8727d1b3088fadffabd56ecbed36a74e\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/lancedb-bcbb4faf/AJCI1CXWoYDPZbb4/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"LanceDB\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#FF6B35\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.lancedb.com/#organization\",\"name\":\"LanceDB\",\"url\":\"https://docs.lancedb.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/lancedb-bcbb4faf/6L0IRVkfdlgMU1Pw/static/assets/logo/dark-lancedb-logo.svg?fit=max\u0026auto=format\u0026n=6L0IRVkfdlgMU1Pw\u0026q=85\u0026s=d0592e59a29df2477080a857e13e341f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.lancedb.com#website\",\"name\":\"LanceDB\",\"url\":\"https://docs.lancedb.com\",\"publisher\":{\"@id\":\"https://docs.lancedb.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables#webpage\",\"url\":\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables\",\"name\":\"Atomically create versions for multiple tables\",\"description\":\"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.\",\"dateModified\":\"2026-11-12T01:14:47.449Z\",\"isPartOf\":{\"@id\":\"https://docs.lancedb.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"REST API\",\"item\":\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Table\",\"item\":\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/list-all-tables\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Atomically create versions for multiple tables\",\"item\":\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables#apireference\",\"headline\":\"Atomically create versions for multiple tables\",\"name\":\"Atomically create versions for multiple tables\",\"description\":\"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.\",\"url\":\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables\",\"mainEntityOfPage\":{\"@id\":\"https://docs.lancedb.com/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables#webpage\"},\"dateModified\":\"2026-11-12T01:14:47.449Z\",\"publisher\":{\"@id\":\"https://docs.lancedb.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.lancedb.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"LanceDB\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"LanceDB\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables.md","siteName":"LanceDB","nav":{"global":null,"products":[{"product":"Enterprise","icon":"server","description":"Multimodal lakehouse","pages":[{"title":"Enterprise","href":"/enterprise/v1-12-0"}]},{"product":"Embedded","icon":"database","description":"Open-source library","versions":[{"version":"0.41.0","default":true,"tag":"Latest","tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/oss/v0-41-0"}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/oss/v0-41-0/integrations"}]},{"tab":"Tutorials","pages":[{"title":"Tutorials","href":"/oss/v0-41-0/tutorials"}]},{"tab":"Demos","pages":[{"title":"Demos","href":"/oss/v0-41-0/demos"}]},{"tab":"Datasets","pages":[{"title":"Datasets","href":"/oss/v0-41-0/datasets"}]},{"tab":"API Reference","groups":[{"group":"REST API","pages":[{"title":"REST API Reference","sidebarTitle":"Overview","href":"/oss/v0-41-0/api-reference/rest"},{"group":"Namespace","pages":[{"title":"Create a new namespace","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/namespace/{id}/create","href":"/oss/v0-41-0/api-reference/rest/namespace/create-a-new-namespace"},{"title":"List namespaces","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml get /v1/namespace/{id}/list","href":"/oss/v0-41-0/api-reference/rest/namespace/list-namespaces"},{"title":"Describe a namespace","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/namespace/{id}/describe","href":"/oss/v0-41-0/api-reference/rest/namespace/describe-a-namespace"},{"title":"Drop a namespace","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/namespace/{id}/drop","href":"/oss/v0-41-0/api-reference/rest/namespace/drop-a-namespace"},{"title":"Check if a namespace exists","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/namespace/{id}/exists","href":"/oss/v0-41-0/api-reference/rest/namespace/check-if-a-namespace-exists"},{"title":"List tables in a namespace","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml get /v1/namespace/{id}/table/list","href":"/oss/v0-41-0/api-reference/rest/namespace/list-tables-in-a-namespace"}]},{"group":"Table","pages":[{"title":"List all tables","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml get /v1/table","href":"/oss/v0-41-0/api-reference/rest/table/list-all-tables"},{"title":"Register a table to a namespace","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/register","href":"/oss/v0-41-0/api-reference/rest/table/register-a-table-to-a-namespace"},{"title":"Describe information of a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/describe","href":"/oss/v0-41-0/api-reference/rest/table/describe-information-of-a-table"},{"title":"Check if a table exists","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/exists","href":"/oss/v0-41-0/api-reference/rest/table/check-if-a-table-exists"},{"title":"Drop a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/drop","href":"/oss/v0-41-0/api-reference/rest/table/drop-a-table"},{"title":"Deregister a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/deregister","href":"/oss/v0-41-0/api-reference/rest/table/deregister-a-table"},{"title":"Restore table to a specific version","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/restore","href":"/oss/v0-41-0/api-reference/rest/table/restore-table-to-a-specific-version"},{"title":"Rename a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/rename","href":"/oss/v0-41-0/api-reference/rest/table/rename-a-table"},{"title":"Update table schema metadata","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/schema_metadata/update","href":"/oss/v0-41-0/api-reference/rest/table/update-table-schema-metadata"},{"title":"List all versions of a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/version/list","href":"/oss/v0-41-0/api-reference/rest/table/list-all-versions-of-a-table"},{"title":"Create a new table version","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/version/create","href":"/oss/v0-41-0/api-reference/rest/table/create-a-new-table-version"},{"title":"Describe a specific table version","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/version/describe","href":"/oss/v0-41-0/api-reference/rest/table/describe-a-specific-table-version"},{"title":"Delete table version records","description":"Delete version metadata records for table `id`.\n\nThis operation deletes version tracking records, NOT the actual table data.\nIt supports deleting ranges of versions for efficient bulk cleanup.\n\nSpecial range values:\n- `start_version: 0` with `end_version: -1` means delete ALL version records\n","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/version/delete","href":"/oss/v0-41-0/api-reference/rest/table/delete-table-version-records"},{"title":"Atomically create versions for multiple tables","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/version/batch-create","href":"/oss/v0-41-0/api-reference/rest/table/atomically-create-versions-for-multiple-tables"},{"title":"Atomically commit a batch of mixed table operations","description":"Atomically commit a batch of table operations. This is a generalized version\nof `BatchCreateTableVersions` that supports mixed operation types within a\nsingle atomic transaction at the metadata layer.\n\nSupported operation types:\n- `DeclareTable`: Declare (reserve) a new table\n- `CreateTableVersion`: Create a new version entry for a table\n- `DeleteTableVersions`: Delete version ranges from a table\n- `DeregisterTable`: Deregister (soft-delete) a table\n\nAll operations are committed atomically: either all succeed or none are applied.\n","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/batch-commit","href":"/oss/v0-41-0/api-reference/rest/table/atomically-commit-a-batch-of-mixed-table-operations"},{"title":"Modify existing columns","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/alter_columns","href":"/oss/v0-41-0/api-reference/rest/table/modify-existing-columns"},{"title":"Update per-field metadata","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/update_field_metadata","href":"/oss/v0-41-0/api-reference/rest/table/update-per-field-metadata"},{"title":"Remove columns from table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/drop_columns","href":"/oss/v0-41-0/api-reference/rest/table/remove-columns-from-table"},{"title":"Get table statistics","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/stats","href":"/oss/v0-41-0/api-reference/rest/table/get-table-statistics"},{"title":"Insert records into a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/insert","href":"/oss/v0-41-0/api-reference/rest/table/insert-records-into-a-table"},{"title":"Merge insert (upsert) records into a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/merge_insert","href":"/oss/v0-41-0/api-reference/rest/table/merge-insert-upsert-records-into-a-table"},{"title":"Update rows in a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/update","href":"/oss/v0-41-0/api-reference/rest/table/update-rows-in-a-table"},{"title":"Delete rows from a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/delete","href":"/oss/v0-41-0/api-reference/rest/table/delete-rows-from-a-table"},{"title":"Query a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/query","href":"/oss/v0-41-0/api-reference/rest/table/query-a-table"},{"title":"Count rows in a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/count_rows","href":"/oss/v0-41-0/api-reference/rest/table/count-rows-in-a-table"},{"title":"Create a table with the given name","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/create","href":"/oss/v0-41-0/api-reference/rest/table/create-a-table-with-the-given-name"},{"title":"Get query execution plan explanation","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/explain_plan","href":"/oss/v0-41-0/api-reference/rest/table/get-query-execution-plan-explanation"},{"title":"Analyze query execution plan","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/analyze_plan","href":"/oss/v0-41-0/api-reference/rest/table/analyze-query-execution-plan"},{"title":"Add new columns to table schema","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/add_columns","href":"/oss/v0-41-0/api-reference/rest/table/add-new-columns-to-table-schema"},{"title":"Trigger an async column backfill job","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/backfill_column","href":"/oss/v0-41-0/api-reference/rest/table/trigger-an-async-column-backfill-job"},{"title":"Create an index on a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/create_index","href":"/oss/v0-41-0/api-reference/rest/table/create-an-index-on-a-table"},{"title":"Create a scalar index on a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/create_scalar_index","href":"/oss/v0-41-0/api-reference/rest/table/create-a-scalar-index-on-a-table"},{"title":"List indexes on a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/index/list","href":"/oss/v0-41-0/api-reference/rest/table/list-indexes-on-a-table"},{"title":"Get table index statistics","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/index/{index_name}/stats","href":"/oss/v0-41-0/api-reference/rest/table/get-table-index-statistics"},{"title":"Drop a specific index","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/index/{index_name}/drop","href":"/oss/v0-41-0/api-reference/rest/table/drop-a-specific-index"},{"title":"List all tags for a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/tags/list","href":"/oss/v0-41-0/api-reference/rest/table/list-all-tags-for-a-table"},{"title":"Get version for a specific tag","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/tags/version","href":"/oss/v0-41-0/api-reference/rest/table/get-version-for-a-specific-tag"},{"title":"Declare a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/declare","href":"/oss/v0-41-0/api-reference/rest/table/declare-a-table"},{"title":"Create a new tag","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/tags/create","href":"/oss/v0-41-0/api-reference/rest/table/create-a-new-tag"},{"title":"Delete a tag","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/tags/delete","href":"/oss/v0-41-0/api-reference/rest/table/delete-a-tag"},{"title":"Update a tag to point to a different version","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/tags/update","href":"/oss/v0-41-0/api-reference/rest/table/update-a-tag-to-point-to-a-different-version"},{"title":"List all branches for a table","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/branches/list","href":"/oss/v0-41-0/api-reference/rest/table/list-all-branches-for-a-table"},{"title":"Create a new branch","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/branches/create","href":"/oss/v0-41-0/api-reference/rest/table/create-a-new-branch"},{"title":"Delete a branch","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/table/{id}/branches/delete","href":"/oss/v0-41-0/api-reference/rest/table/delete-a-branch"}]},{"group":"MaterializedView","pages":[{"title":"Trigger an async materialized view refresh","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/materialized_view/{id}/refresh","href":"/oss/v0-41-0/api-reference/rest/materializedview/trigger-an-async-materialized-view-refresh"},{"title":"Create a materialized view","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/materialized_view/{id}/create","href":"/oss/v0-41-0/api-reference/rest/materializedview/create-a-materialized-view"}]},{"group":"Transaction","pages":[{"title":"Describe information about a transaction","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/transaction/{id}/describe","href":"/oss/v0-41-0/api-reference/rest/transaction/describe-information-about-a-transaction"},{"title":"Alter information of a transaction.","deprecated":null,"version":null,"openapi":"/oss/v0-41-0/api-reference/rest/openapi.yml post /v1/transaction/{id}/alter","href":"/oss/v0-41-0/api-reference/rest/transaction/alter-information-of-a-transaction"}]}]}]}]}]}]},"basePath":"","title":"Atomically create versions for multiple tables - LanceDB","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":["10e4515597","c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["BannerMarkdown-DV3Oq1fY.js","dist-C-XZBk9h.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-D3Isdib3.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","OpenApiReferenceProvider-CybtLBIt.js","utils-BMLj2fvV.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-B6In562Y.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dr8Mfhp9.js","snippetPresets-2rmQvMVl.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-WMqJYdZj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CJ-MlPHu.js","shallow-dY3TMRCk.js","getApiPlaygroundDisplay-v-1B2bKm.js","CodeSnippet-BDhiTB7U.js","CodeSnippets-D9hnzQcS.js","Page-C4GwDT3_.js","getPastedJson-Th2V45jI.js","icon-BQXch1W9.js","MethodPill-BCqUneP3.js","DuplicateIcon-Q_-bhurZ.js","createIcon-DUjLHRqp.js","DynamicMarkdown-B-f2cqXQ.js","SectionHeading-Da5NsV4v.js","axios-vUo_bRtp.js","Markdown-D13FWkIM.js","AssistantPageLink--qIqmmVG.js"]}