Asset Manifests and Approvals
Review and approve assets at the commit level before deployment.
Table of contents
- Overview
- How Manifests Work
- Manifest Statuses
- Approval Workflow
- Per-Asset Approvals
- Approval Permissions
- Integration with Deployments
- API Access
- Best Practices
Overview
Asset Manifests provide a snapshot of all assets in a specific commit or build, allowing your team to review and approve changes before they reach production. This quality gate ensures that only approved content makes it to your players.
How Manifests Work
When a build completes, ButterStack automatically generates an Asset Manifest containing:
- All assets included in the build
- Who modified each asset
- Which commits/changelists introduced changes
- Current approval status per asset
Manifest Statuses
| Status | Description |
|---|---|
pending | Manifest created, awaiting review |
approved | All assets approved, ready for deployment |
rejected | One or more assets rejected |
mixed | Some assets approved, others pending or rejected |
Approval Workflow
Build Completes
│
▼
Manifest Generated (pending)
│
▼
Team Reviews Assets
│
├──▶ All Approved ──▶ Manifest Approved ──▶ Deploy
│
└──▶ Issues Found ──▶ Manifest Rejected ──▶ Fix and Rebuild
Per-Asset Approvals
Each asset in a manifest can be individually:
- Approved - Asset meets quality standards
- Rejected - Asset needs changes
- Pending - Not yet reviewed
This granular control lets you approve most assets while flagging specific items that need attention.
Approval Permissions
Configure who can approve assets:
- Project Leads - Approve any asset
- Department Leads - Approve assets in their domain (art, audio, code)
- Individual Contributors - View only, no approval rights
Integration with Deployments
Manifests connect directly to the deployment pipeline:
- Build completes, manifest created
- Team reviews and approves
- Approved manifest linked to deployment
- Deployment tracks which manifest version is live
API Access
Get Manifest for Build
GET /api/v1/projects/:project_id/builds/:build_id/manifest
Approve Asset
POST /api/v1/manifests/:manifest_id/assets/:asset_id/approve
Export Manifest JSON
GET /api/v1/manifests/:manifest_id/export
Response:
{
"manifest_id": "abc123",
"build_number": 456,
"status": "approved",
"created_at": "2026-12-15T10:30:00Z",
"approved_at": "2026-12-15T14:22:00Z",
"approved_by": "jane.smith",
"assets": [
{
"path": "/Game/Characters/Hero/Hero_Mesh.uasset",
"type": "mesh",
"status": "approved",
"modified_by": "john.doe",
"changelist": 12345
}
]
}
Best Practices
- Review Before Deploy - Always approve manifests before pushing to production
- Use Comments - Add notes when rejecting assets to help the creator understand the issue
- Batch Similar Assets - Review related assets together for consistency
- Set Up Notifications - Get notified in Slack/Discord when manifests need review