1. Resolve The Artist
Use existing authorized artist records or request identity resolution. Ambiguous or conflicting evidence requires review before staging. Identity evidence is not KYC.unmatched, phone_matched, review_required, and verified_by_operator describe evidence for this workflow, not government identity verification.
2. Create A Submission
Call Create Portfolio Submission with a partner key that hasportfolio_intake:stage, approved artist/studio scope, file metadata, rights, and consent information.
Reuse the same idempotency key only for the same submission. Keep the returned signed upload URL private.
3. Upload And Complete
Upload the exact media bytes with the returned signedPUT URL and headers. Then call Complete Portfolio Upload with the API key.
Completion verifies the file and advances a valid upload to awaiting_review. It does not approve or publish it.
4. Track Review
PollGET /api/private/portfolio-intake/v1/submissions/{submissionId} using the status contract. Stage-only integrations can read their own submissions.
A separately authorized reviewer with portfolio_intake:review can use the approval endpoint. The legacy status promoted_to_sanity means an approved private asset. It does not make the asset public.
Integration Boundaries
- Staging permission never grants approval or publication.
- Unresolved artist attribution stays review-required.
- Do not expose private media URLs or review details in a public application.
- SMS/MMS integrations also require their own communications launch approvals.
