# Creative asset inventory on Snapchat Ads

> Tier: recipe. Operating recipe: real tool sequence, core rules, known traps.

Snapchat Ads: Identify ad-linked creative assets and their processing state without treating unused media as delivered ads.

**Intent.** Identify ad-linked creative assets and their processing state without treating unused media as delivered ads.

## When to use

- The user requests creative asset inventory for a selected Snapchat Ads account.

## When not to use

- Inferring production delivery or account eligibility from successful sandbox configuration.

## Sources

Required: Snapchat Ads

## Preconditions

- Read snapchat_get_setup_guide and use only the capabilities enabled for this account.
- The account is ticked in the dashboard, confirmed via list_accounts.

## Inputs

- `window`: Analysis window. Default: last 30 days.

## Procedure

1. Read ads and their native parent identifiers. — tools: `snapchat_get_campaigns`, `snapchat_get_adsquads`, `snapchat_get_ads`
2. Resolve actual ad-linked assets and retain coverage limits. — tools: `snapchat_get_creatives`
3. Check native media processing or asset metadata when an asset is unavailable. — tools: `snapchat_get_media`

## Decision rules

- **When** An image or video is uploaded successfully → **conclude** It is an asset, not proof of a created, approved or serving ad.
- **When** Only a video thumbnail is available → **conclude** Describe the thumbnail only; do not infer motion, audio or the full video.

## Evidence requirements

- Every figure carries its account, metric and window.
- Anything below a readable sample size is reported as unjudged, not as zero.

## Human approval boundary

- The readout changes nothing. Any change it motivates goes through Safe Writes: preview, human confirmation, then apply.

## Failure modes

- Asset inventories can be bounded or paginated; identify the coverage.
- Creative-library files can be unused; preserve ad-to-asset joins.

## Output

- **Readout**: The figures, with windows and accounts named.
- **Flags**: What deserves a deeper skill or a human decision.
