Get an object

One object in full: who holds it, what it carries, and the fingerprints that let its history be checked. `custom` is your own data as it stands right now. `nonce` counts how many times the object has changed. The `*_hash` fields are what gets proved on chain — you rarely need them, but they are what makes the history trustworthy. To see how it got here, read `GET /objects/{objectId}/state-changes`. Requires the `objects.read` permission.

GET
/objects/{objectId}
AuthorizationBearer <token>

The access token returned after a successful sign-in, sent as Authorization: Bearer <access_token>.

It identifies the person and the organization they are working in, and it lasts about fifteen minutes. When it runs out, use their refresh token at POST /auth/refresh-token instead of asking them to sign in again.

In: header

Path Parameters

objectId*string

Identifier of the smart object.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://api.dual.network/objects/665f1c2d4b1a2c3d4e5f6a90"
{
  "id": "665f1c2d4b1a2c3d4e5f6a90",
  "org_id": "665f1c2d4b1a2c3d4e5f6aa0",
  "template_id": "665f1c2d4b1a2c3d4e5f6a99",
  "owner": "0x1234567890abcdef1234567890abcdef12345678",
  "metadata": {
    "name": "Summer Festival 2026",
    "description": "Three days, four stages, one wristband.",
    "image": {
      "id": "665f1c2d4b1a2c3d4e5f6a10",
      "url": "https://assets.example.com/wristband.png"
    }
  },
  "custom": {
    "tier": "general",
    "seat": "B14"
  },
  "nonce": 3,
  "version": 2,
  "state_hash": "0xa1b2c3d4e5f60718293a4b5c6d7e8f90a1b2c3d4e5f60718293a4b5c6d7e8f90",
  "content_hash": "0xb2c3d4e5f60718293a4b5c6d7e8f90a1b2c3d4e5f60718293a4b5c6d7e8f90a1",
  "custom_hash": "0xe5f60718293a4b5c6d7e8f90a1b2c3d4e5f60718293a4b5c6d7e8f90a1b2c3d4",
  "integrity_hash": "0xc3d4e5f60718293a4b5c6d7e8f90a1b2c3d4e5f60718293a4b5c6d7e8f90a1b2",
  "prev_integrity_hash": "0xd4e5f60718293a4b5c6d7e8f90a1b2c3d4e5f60718293a4b5c6d7e8f90a1b2c3",
  "when_created": "2026-04-02T12:00:00Z",
  "when_modified": "2026-05-11T18:24:00Z"
}
{
  "code": 3,
  "message": "Key: 'limit' Error:Field validation for 'limit' failed on the 'lte' tag"
}

{
  "code": 16,
  "message": "no auth provided"
}

{
  "code": 5,
  "message": "object not found"
}
{
  "code": 13,
  "message": "internal error"
}