Create Collab Scene
POST /api/v1/collab-scenes — Initiate a multi-performer scene with per-scene consent collection.
Uploader is the producer. The person who calls this endpoint is recorded as the 18 U.S.C. § 2257 primary producer. EZ2257 is the Custodian of Records. Content stays on your platform — do not publish until you receive the collab_scene.greenlit webhook.
Authorization
BearerAuth Partner API key. Use ez_test_ prefix for sandbox, ez_live_ for production.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://easy2257.com/api/v1/collab-scenes" \ -H "Content-Type: application/json" \ -d '{ "uploaderUserId": "clu_abc123", "title": "April 2026 Scene", "performers": [ { "email": "performer@example.com" } ], "uploaderAttestation": { "ip": "1.2.3.4", "ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)...", "clickedAt": "2026-04-24T18:00:00Z", "attestationText": "I coordinated this scene, all performers were 18+ and consented on set" }, "callbackUrl": "https://your-platform.com/webhooks/ez2257" }'{
"sceneId": "cs_xyz789",
"status": "pending_signatures",
"performers": [
{
"email": "performer@example.com",
"status": "pending_consent",
"preEnrolled": true
}
],
"fees": {
"sceneFeeCents": 500,
"onboardingFeeCents": 2500,
"totalCents": 3000,
"charged": true,
"stripeChargeId": "ch_3N..."
},
"expiresAt": "2026-05-08T18:00:00Z"
}{
"error": "externalUserId is required",
"code": "missing_parameter"
}{
"error": "externalUserId is required",
"code": "missing_parameter"
}{
"error": "externalUserId is required",
"code": "missing_parameter"
}{
"error": "externalUserId is required",
"code": "missing_parameter"
}