## Get an asset

`client.assets.retrieve(stringassetID, RequestOptionsoptions?): AssetRetrieveResponse`

**get** `/assets/{assetId}`

Returns metadata for one asset when it is accessible to the authenticated public API key. Missing and inaccessible assets both return 404.

### Parameters

- `assetID: string`

  Asset identifier

### Returns

- `AssetRetrieveResponse`

  - `asset_id: string`

    Asset identifier

  - `content_type: string`

    Asset content type

  - `created_at: string | null`

    Asset creation time (ISO 8601 datetime)

  - `description: string | null`

    Asset description

  - `failure_message: string | null`

    Failure message when the asset is in failed status

  - `height: number | null`

  - `name: string | null`

    Asset name

  - `size_bytes: number | null`

  - `status: "pending_upload" | "ready" | "failed"`

    - `"pending_upload"`

    - `"ready"`

    - `"failed"`

  - `upload_content_type: string | null`

    Content type provided at upload time

  - `uploaded_via: string`

    Asset source

  - `url: string | null`

    Asset URL

  - `width: number | null`

  - `workspace_id: string | null`

    Workspace identifier

### Example

```typescript
import FLORA from '@flora-ai/flora';

const client = new FLORA({
  apiKey: process.env['FLORA_API_KEY'], // This is the default and can be omitted
});

const asset = await client.assets.retrieve('asset_abc123');

console.log(asset.asset_id);
```

#### Response

```json
{
  "asset_id": "asset_abc123",
  "content_type": "content_type",
  "created_at": "2019-12-27T18:11:19.117Z",
  "description": "description",
  "failure_message": "failure_message",
  "height": 0,
  "name": "name",
  "size_bytes": 0,
  "status": "pending_upload",
  "upload_content_type": "upload_content_type",
  "uploaded_via": "uploaded_via",
  "url": "url",
  "width": 0,
  "workspace_id": "ws_abc123"
}
```
