---
id: action-specification-snapshots-read
title: "Read a snapshot of an action specification"
description: "Read a single snapshot of an action specification, including its full content."
sidebar_label: "Read a snapshot of an action specification"
hide_title: true
hide_table_of_contents: true
api: eJztV9tu3DYQ/RWCL20BaVfai71WX+oGbeMiKALbRYIahj0iRysmEqmQlC9Y6N+LkbQXrTdx4OSlQJ9W4g6pM3PODGdWXKITVlVeGc0Tfo4gGTCn9LJA5jRULjeemYyBZiDIirkKhcqUAHoLmNKiqKXSS6a8Y1ldFEwY7VH7EQ+4qdC2hmeSJ7w74WZwQrL+ikssguQB97B0PLnip601vw54BRZK9GhpfcUVQa3A5zzgGkrkCVe00eKnWlmUPPG2xoA7kWMJPFlx/1iRlfNW6SUPeGZsCZ4nvK6V5E2wF4bLHIduMiXJG3yAsiropON0ImMxx3CRzSCc4TQNT8SRDGOYpFMxk3M8yngTHMS6dvjs+2NeE7YPNxInuJDHWXgE8zSciakMFzjJwhii9EQs5HEL9zrgDkVtlX9s45wiWLSntc95cnVNf1t0ldEOHQGcRBH9fB7Gc+LoH+kQqKqij/X4g6OTVk9DYdIPKDzf9/y0qlDL0OjicSjZPQ7BM6ORiRz0EsmAMN2DFzlKlikspBsxwq8kU47d5+AZsArER1giE6asjEbtWaW0Y+CYRWdqK/DG4p1yJOwu7FtKrzpdDmDcdEv4qUYt8EbXZYp2G4ybHFy+E5uAC4vgUd6Ab1PBUkp51VGg5PNKeU4o7DJXjhz2ObI7KGr8ote3h9y+fYncDgTmZc4MWPbkzca/FAujl45586L8fcLTFqDSHpctc6XSqqxLnsT76N6iDYfohKm1R/szy9UyR0th13iPdoBu2uzJ4UBYSqXfoF5Sah7NAl7Cw+7rEMbF69NwMj8iyfv9eP3wNAXOJGqvBGxylWm8Q8tKpb2jrEJhtNzRkGbArLkfRniWzadCQrwQkxQgEtF0PkvTeXYCUxQpzlHGE0hncoFxnMLieComWRzHR/EkmqQnszlvBgVivwSAlIrwQ/F2JyO6GvqcRMAx5dk9UI7jvmJomTxFOWoh9NmXPh5iQddFASn5+7kv1w4tu8+NQ3Zvlcf+7I6ITZ00ltFRwwh+AI0jafCXfmkkTLkLCfwX80WCx9CrEp8kzbvOazzs9C6ESTQ5CqOTMJ5dxpMkipIoGkVR9A/BqCv5bTAu1hc/A4tMlWXtKZYBc6bjpGyF6djt1uPbr8XXBNwr3xoNyF9/lDcN2czev396h70qFKkerTWWba48Jmtk3jCl76CgK0JXtQ9YqRy1S2zboxCbSrs6y5RoD6rQtlZGu2+69oa133nwtXtlJB6sSpsgzaKoTaWB3YanbSxTkDd0daHzRG/r/Zd3/AqSnW93lOgcLA9+ZRjf13UJOqRuj/hm+FAVoNsgDNldc8VOYJEeU3me4ywLZ9BW64kMY4yy9X9MG88yU2vJMmP3Mv7ryv2OZlrvz3vqe63MD2nlAi3Vxj2t/E/zf5Xm1kGfGxpXltjSQc17wseHhpfxSslmvJlgxqttb9+0XR6JoxtaalvwhOfeVy4Zj6FSI6r4VQGeSmVX23ca8AuSR6eA3TZ8E3M6iPfjQktra8SD/uH3dfn9891l67HSmaHthKejJx5Fo4hvY/HXDhx2+vaMuK6M8yW0eu2Hl/WE+PxouK+H1TYjvv+c2UfF44MfVwUo3d5QFPJVT+DVwemTBzzpGvI1h7SyM6FdBzw3ztP+1SoFh3/bomlo+VONluak64DfgVVdG3C14lI5epY8yaBw+03BbhR+PO8nhZ/Y5ybOg371i6AfOX27qOmNB/wjPnajMA2eL4cxHCJfgGAnfM11E/AcQVLvfLXqDU6FwMrvbH1SICkVNnn4x2+X1PENE2BP8O3pB2GtVp3FpfmIumk2KD29E8Cm+Rdtv9OY
sidebar_class_name: "get api-method"
info_path: docs/api/nullplatform-api
custom_edit_url: null
---

import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import ParamsDetails from "@theme/ParamsDetails";
import RequestSchema from "@theme/RequestSchema";
import StatusCodes from "@theme/StatusCodes";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";
import Heading from "@theme/Heading";

<Heading
  as={"h1"}
  className={"openapi__heading"}
  children={"Read a snapshot of an action specification"}
>
</Heading>

<MethodEndpoint
  method={"get"}
  path={"/action_specification/{id}/snapshots/{snapshotId}"}
  context={"endpoint"}
>
  
</MethodEndpoint>



Read a single snapshot of an action specification, including its full content.

<Heading
  id={"request"}
  as={"h2"}
  className={"openapi-tabs__heading"}
  children={"Request"}
>
</Heading>

<ParamsDetails
  parameters={[{"in":"path","name":"id","required":true,"schema":{"type":"string","format":"uuid"},"description":"The specification id.","example":"7b2d1c5e-8f4a-4e3b-9c6d-1a2b3c4d5e6f"},{"in":"path","name":"snapshotId","required":true,"schema":{"type":"string","format":"uuid"},"description":"The snapshot id.","example":"0c9e8d7f-6a5b-4c3d-8e2f-1a0b9c8d7e6f"}]}
>
  
</ParamsDetails>

<RequestSchema
  title={"Body"}
  body={undefined}
>
  
</RequestSchema>

<StatusCodes
  id={undefined}
  label={undefined}
  responses={{"200":{"description":"The snapshot, including its full content.","content":{"application/json":{"schema":{"type":"object","description":"Append-only snapshot of a specification at one change of its watched fields. The id is what a package component pins as resource_revision_id.","required":["id","specification_id","sequence_number","content_hash","content","created_at"],"properties":{"id":{"type":"string","format":"uuid","description":"The snapshot id. This is the value a package component pins as `resource_revision_id`.","example":"0c9e8d7f-6a5b-4c3d-8e2f-1a0b9c8d7e6f"},"specification_id":{"type":"string","format":"uuid","description":"The specification this snapshot belongs to.","example":"7b2d1c5e-8f4a-4e3b-9c6d-1a2b3c4d5e6f"},"sequence_number":{"type":"integer","minimum":1,"description":"Per-specification counter; higher is newer.","example":3},"content_hash":{"type":"string","minLength":64,"maxLength":64,"description":"SHA-256 of the specification's watched fields. Identical content never mints a second snapshot in a row.","example":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945"},"content":{"type":"object","additionalProperties":true,"description":"The specification as it was when this snapshot was minted."},"created_by":{"type":"string","nullable":true,"description":"The user whose write minted the snapshot, or null.","example":"jane.doe@example.com"},"created_at":{"type":"string","format":"date-time","description":"When the snapshot was minted.","example":"2026-09-14T12:00:00.000Z"},"updated_at":{"type":"string","format":"date-time","description":"Snapshots are immutable, so this matches `created_at`.","example":"2026-09-14T12:00:00.000Z"}},"title":"specificationSnapshot"}}}},"4XX":{"description":"Client error responses due to invalid input, missing parameters or insufficient permissions.","content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","example":400},"code":{"type":"string","example":"bad_request"},"error":{"type":"string","example":"Bad Request"},"message":{"type":"string","description":"Human-readable explanation.","example":"Snapshot 9a8b7c6d-5e4f-4a3b-9c2d-1e0f9a8b7c6d not found for specification 7b2d1c5e-8f4a-4e3b-9c6d-1a2b3c4d5e6f"}},"title":"errorResponse"}}}},"5XX":{"description":"Server error responses.","content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","example":400},"code":{"type":"string","example":"bad_request"},"error":{"type":"string","example":"Bad Request"},"message":{"type":"string","description":"Human-readable explanation.","example":"Snapshot 9a8b7c6d-5e4f-4a3b-9c2d-1e0f9a8b7c6d not found for specification 7b2d1c5e-8f4a-4e3b-9c6d-1a2b3c4d5e6f"}},"title":"errorResponse"}}}}}}
>
  
</StatusCodes>


      