Get an asset

What we know about one file: its name, what kind of file it is, how big it is, and where it is kept. This does not fetch the file, and the `url` here does not open a private one on its own. Ask for a download link with `GET /assets/{assetId}/download`. Requires the `storage.read` permission.

GET
/assets/{assetId}
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

assetId*string

Identifier of the asset, as returned by POST /assets.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://api.dual.network/assets/665f1c2d4b1a2c3d4e5f6a10"
{
  "id": "665f1c2d4b1a2c3d4e5f6a10",
  "name": "poster.png",
  "tag": "default",
  "provider": "gcs",
  "folder": "assets",
  "wallet_id": "665f1c2d4b1a2c3d4e5f6a01",
  "url": "https://storage.googleapis.com/example-bucket/665f1c2d4b1a2c3d4e5f6aa0/assets/665f1c2d4b1a2c3d4e5f6a10",
  "path": "665f1c2d4b1a2c3d4e5f6aa0/assets/665f1c2d4b1a2c3d4e5f6a10",
  "size": 184320,
  "type": "image/png",
  "hash": "9a0f2c1b7d4e5f60718293a4b5c6d7e8",
  "is_public": false,
  "when_created": "2026-02-14T08:03: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"
}