diff --git a/src/assets/images/workers/changelog/do-data-studio.png b/src/assets/images/workers/changelog/do-data-studio.png new file mode 100644 index 000000000000000..60b64a67f8e07b5 Binary files /dev/null and b/src/assets/images/workers/changelog/do-data-studio.png differ diff --git a/src/content/changelog/durable-objects/2025-10-16-durable-objects-data-studio.mdx b/src/content/changelog/durable-objects/2025-10-16-durable-objects-data-studio.mdx new file mode 100644 index 000000000000000..10b3c5b7270cdbe --- /dev/null +++ b/src/content/changelog/durable-objects/2025-10-16-durable-objects-data-studio.mdx @@ -0,0 +1,22 @@ +--- +title: View and edit Durable Object data in UI with Data Studio (Beta) +description: Access Durable Objects stored data via Cloudflare dashboard. +products: + - durable-objects + - workers +date: 2025-10-16 +--- + +import { DashButton } from "~/components"; + +![Screenshot of Durable Objects Data Studio](~/assets/images/workers/changelog/do-data-studio.png) + +You can now view and write to each Durable Object's storage using a UI editor on the Cloudflare dashboard. Only Durable Objects using [SQLite storage](/durable-objects/best-practices/access-durable-objects-storage/#create-sqlite-backed-durable-object-class) can use Data Studio. + + + +Data Studio unlocks easier data access with Durable Objects for prototyping application data models to debugging production storage usage. Before, querying your Durable Objects data required deploying a Worker. + +To access a Durable Object, you can provide an object's unique name or ID generated by Cloudflare. Data Studio requires you to have at least the `Workers Platform Admin` role, and all queries are captured with audit logging for your security and compliance needs. Queries executed by Data Studio send requests to your remote, deployed objects and incur normal usage billing. + +To learn more, visit the Data Studio [documentation](/durable-objects/observability/data-studio/). If you have feedback or suggestions for the new Data Studio, please share your experience on [Discord](https://discord.com/channels/595317990191398933/773219443911819284) diff --git a/src/content/docs/durable-objects/observability/data-studio.mdx b/src/content/docs/durable-objects/observability/data-studio.mdx new file mode 100644 index 000000000000000..72895fe554942d0 --- /dev/null +++ b/src/content/docs/durable-objects/observability/data-studio.mdx @@ -0,0 +1,40 @@ +--- +title: Data Studio +pcx_content_type: concept +sidebar: + order: 7 + badge: Beta +--- + +import { DashButton, Steps } from "~/components"; + +Each Durable Object can access private storage using [Storage API](/durable-objects/api/sqlite-storage-api/) available on `ctx.storage`. To view and write to an object's stored data, you can use Durable Objects Data Studio as a UI editor available on the Cloudflare dashboard. + +:::note[Data Studio only supported for SQLite-backed objects] + +You can only use Data Studio to access data for [SQLite-backed Durable Objects](/durable-objects/best-practices/access-durable-objects-storage/#create-sqlite-backed-durable-object-class). + +At the moment, you can only read/write data persisted using the [SQL API](/durable-objects/api/sqlite-storage-api/#sql-api). Key-value data persisted using the KV API will be made read-only in the future. +::: + +## View Data Studio + +You need to have at least the `Workers Platform Admin` [role](/fundamentals/manage-members/roles/) to access Data Studio. + + +1. In the Cloudflare dashboard, go to the **Durable Objects** page. + + +2. Select an existing Durable Object namespace. +3. Select the **Data Studio** button. +4. Provide a Durable Object identifier, either a user-provided [unique name](/durable-objects/api/namespace/#getbyname) or a Cloudflare-generated [Durable Object ID](/durable-objects/api/id/). + + +- Queries executed by Data Studio send requests to your remote, deployed objects and incur [usage billing](/durable-objects/platform/pricing/) for requests, duration, rows read, and rows written. You should use Data Studio as you would handle your production, running objects. +- In the **Query** tab when running all statements, each SQL statement is sent as a separate Durable Object request. + +## Audit logging + +All queries issued by the Data Studio are logged with [audit logging v1](/fundamentals/account/account-security/review-audit-logs/) for your security and compliance needs. + +- Each query emits two audit logs, a `query executed` action and a `query completed` action indicating query success or failure. `query_id` in the log event can be used to correlate the two events per query. \ No newline at end of file diff --git a/src/content/release-notes/durable-objects.yaml b/src/content/release-notes/durable-objects.yaml index f233f052507f5a3..44cfa91b5a7f35a 100644 --- a/src/content/release-notes/durable-objects.yaml +++ b/src/content/release-notes/durable-objects.yaml @@ -3,6 +3,10 @@ link: "/durable-objects/release-notes/" productName: Durable Objects productLink: "/durable-objects/" entries: + - publish_date: "2025-10-16" + title: Durable Objects can access stored data with UI editor + description: |- + Durable Objects stored data can be viewed and written using [Data Studio](/durable-objects/observability/data-studio/) on the Cloudflare dashboard. Only Durable Objects using [SQLite storage](/durable-objects/best-practices/access-durable-objects-storage/#create-sqlite-backed-durable-object-class) can use Data Studio. - publish_date: "2025-08-21" title: Durable Objects stubs can now be directly constructed by name description: |-