OneLake table APIs already let Iceberg-compatible engines discover and read tables in Microsoft Fabric. Today we're taking the next step with two additions: Iceberg REST Catalog (IRC) writes through the OneLake table endpoint, now available, and a new additional table metadata API, in preview, for adding descriptions and tags to tables and columns. Together, they make OneLake a place where any engine can not only read data, but also publish it, with the business context people and AI agents need to use it well.
Write native Iceberg tables from the engines you already use
Until now, the OneLake Iceberg endpoint supported read-only metadata operations. Now, IRC-compatible clients can create native Iceberg tables, commit new snapshots, and request short-lived storage credentials through the same endpoint they already use for reads. That means engines such as PyIceberg, Snowflake, and DuckDB can land results directly in OneLake using standard Iceberg tooling, with no custom connectors or copy jobs.
Some of the supported Iceberg REST Catalog operations at the OneLake table endpoint include:
|
Operation |
What it does |
Status |
|
List/get/check namespaces |
Discovers the schemas in a data item |
Available |
|
List/get/check tables |
Discovers tables and returns their Iceberg metadata |
Available |
|
Create table |
Creates a native Iceberg table in a schema |
New! |
|
Commit table updates |
Commits new snapshots and metadata changes to a native Iceberg table |
New! |
|
Drop table |
Removes a table and its data from OneLake |
New! |
|
Load table credentials |
Returns short-lived storage credentials for a table (credential vending) |
New! |
Writes are built for multi-engine environments. Commits use optimistic concurrency checks, so a conflicting update fails instead of silently overwriting a newer table state. Credential vending lets clients write data files without managing separate storage access. And because the tables live in OneLake, they're immediately discoverable by every tool connected to the catalog.
Many industry partners are already building on this feature. Snowflake supports the OneLake table APIs through the catalog-linked database feature, which automatically discovers schemas and tables in a Fabric data item, so Snowflake users can read, create, and write Iceberg tables in OneLake. ClickHouse also announced that it now writes Iceberg tables directly to OneLake using these APIs.
Add business context to tables and columns
Data is only as useful as people's understanding of it. The new additional table metadata API (preview) lets you read and write descriptions and key-value tags for a table and its columns, for example to explain a table's business purpose, record its owning team, or describe how to interpret a column. It uses one common REST route, so you don't need a format-specific catalog API to do it.
It also works through internal OneLake shortcuts: updates apply to the target table, so everyone sees the same context whether they read through the shortcut or the source.
Explore more in the OneLake documentation
Check out our documentation for more information. This includes end-to-end samples, from configuring PyIceberg, Snowflake, and DuckDB for writes and credential vending to a Python sample that updates table metadata safely. Start with the following resources:
- OneLake table APIs overview
- OneLake Iceberg metadata API
- Iceberg table API samples
- Read and write additional table metadata (preview)
We want your feedback!
Start writing Iceberg tables to OneLake and try the additional table metadata preview today and share your experience with us.
Have feedback? Share your ideas and vote at the Fabric Ideas site and join the conversation in the Microsoft Fabric Community.