---
title: "List newsletter assets"
method: GET
path: "/newsletter-assets"
tags: ["Newsletters"]
---

# List newsletter assets

`GET /newsletter-assets`

## Request

- Base URL: `https://shipmail.to/api/v1`
- URL: `https://shipmail.to/api/v1/newsletter-assets`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://shipmail.to/api/auth/oauth2/authorize`, token URL `https://shipmail.to/api/auth/oauth2/token`)

## Query parameters

- `kind` 'image' | 'video'
- `q` string
- `cursor` string
- `limit` integer

## Headers

- `X-Shipmail-Organization` string

## Response `200`

Newsletter assets.

- object
  - `data` NewsletterAsset[], required
    - `object` 'newsletter_asset', required
    - `id` string, required
    - `kind` 'image' | 'video', required
    - `filename` string, required
    - `content_type` string, required
    - `byte_size` integer, required
    - `checksum_sha256` string, required
    - `url` string, uri, required
    - `thumbnail_url` string, uri, nullable
    - `thumbnail_content_type` string, nullable
    - `thumbnail_byte_size` integer, nullable
    - `duration_seconds` number, nullable
    - `width` integer, nullable
    - `height` integer, nullable
    - `created_at` string, date-time, required
    - `image_url` string, uri, nullable, required
    - `video_url` string, uri, nullable, required
  - `pagination` Pagination, required
    - `next_cursor` string, nullable, required: Cursor for the next page. Null if no more results.
    - `has_more` boolean, required: Whether more results exist beyond this page.
    - `limit` integer, required: Number of items per page.
  - `storage` NewsletterAssetStorageUsage, required
    - `used_bytes` integer, required
    - `limit_bytes` integer, nullable, required: Storage limit in bytes, or null when storage is unlimited.
    - `remaining_bytes` integer, nullable, required: Remaining storage in bytes, or null when storage is unlimited.
    - `over_limit` boolean, required
    - `plan` string, required
    - `is_in_trial` boolean, required
    - `next_upgrade` object, nullable, required
      - `plan` string, required
      - `storage_bytes` integer, required

## Other responses

- `401`: Authentication failed.
- `403`: Insufficient permissions.
- `429`: Rate limit exceeded.

---

[API](https://skmtc.dev/shipmail/apis/shipmail-api.md) · [All operations](https://skmtc.dev/shipmail/apis/shipmail-api/llms.txt) · [OpenAPI document](https://skmtc.dev/shipmail/apis/shipmail-api/revisions/2c23e59d7e30?raw)
