Author (create) a component
Required permission: projects:write
API key auth. Prefix cf_live_ for production orgs, cf_test_ for sandbox.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
POST /components body. Org/user are server-resolved; never accepted from the body.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/components" \ -H "Content-Type: application/json" \ -d '{ "componentId": "string", "tsxSource": "string", "name": "string", "description": "string", "category": "text", "manifest": { "version": 2, "assets": { "property1": { "kind": "image", "required": true }, "property2": { "kind": "image", "required": true } }, "graphics": { "api": "canvas2d", "required": true, "accelerationPreference": "hardware-preferred" }, "alphaPolicy": "requires-transparency" } }'{ "name": "string", "description": "string", "category": "text", "propSchema": { "property1": null, "property2": null }, "origin": "customer-owned", "ejectedFrom": "string", "tokens": { "property1": null, "property2": null }, "examples": [ { "property1": null, "property2": null } ], "durationInFrames": 1, "manifest": { "version": 2, "assets": { "property1": { "kind": "image", "required": true, "mimeTypes": [ "string" ], "mediaDemand": { "mode": "original" } }, "property2": { "kind": "image", "required": true, "mimeTypes": [ "string" ], "mediaDemand": { "mode": "original" } } }, "graphics": { "api": "canvas2d", "required": true, "accelerationPreference": "hardware-preferred" }, "alphaPolicy": "requires-transparency", "sceneShot": { "version": 2 } }, "id": "string", "source": "default", "kind": "component", "version": "string", "propDefaults": { "property1": null, "property2": null }, "textParam": "string", "subtextParam": "string", "format": { "aspectRatio": "16:9", "fps": 24, "resolution": "hd" }, "intent": "string", "useWhen": "string", "pairsWith": [ "string" ], "avoidWith": [ "string" ], "tags": [ "string" ], "mood": [ "string" ], "tier": "recommended", "useCase": [ "intro" ], "fixedCopy": [ "string" ], "brandBindings": [ { "param": "string", "brandToken": "string" } ], "placement": { "clipSourceKind": "overlay", "refField": "primitiveId" }, "warnings": [ "string" ]}{ "error": { "code": "string", "message": "string", "contract": "string", "contractVersion": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "contract": "string", "contractVersion": "string", "details": { "property1": null, "property2": null } }}{ "x402Version": 2, "accepts": [ {} ], "error": "string"}{ "error": { "code": "string", "message": "string", "contract": "string", "contractVersion": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "contract": "string", "contractVersion": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "contract": "string", "contractVersion": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "contract": "string", "contractVersion": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "contract": "string", "contractVersion": "string", "details": { "property1": null, "property2": null } }}