RaylightAPI

Greenlight links

Send comments through a link

Send comments through a link. POST /production-links/{token}/comments in the Raylight API.

POST/production-links/{token}/comments

Public. No API key needed.

Parameters

FieldInTypeDescription
tokenrequiredpathstringThe signed token from the link.

Request body

application/json

FieldTypeDescription
commentrequiredstring

Responses

200Writing the next pitch.
400The comment is missing or too long.
402The workspace owner's credits do not cover the video (code credits). The current pitch stands.
403The link was sent to someone who can no longer greenlight in this workspace, or to a webhook endpoint that was deleted (code revoked).
404Not a valid link (code not_found).
409The pitch moved on since the link was minted, or was already answered (code stale).
410The link expired (code expired). Reading it still works and says state: expired.
429Rate limited (30 a minute per address), or the workspace reached a monthly cap (code cap).
503Greenlight links are not switched on for this server (code disabled).

200 response body

FieldTypeDescription
linkrequiredobject
link.productionIdrequireduuid
link.workspaceNamerequiredstring
link.stagerequiredenumOne of: queued, writing_pitch, pitch_ready, greenlit, making, exporting, delivered, skipped, declined, cancelled, failed
link.staterequiredenumOne of: open, stale, expired
link.pitchVersionrequiredinteger
link.currentPitchVersionrequiredinteger
link.intentrequiredstring
link.originrequiredobject | null
link.origin.providerrequiredstring
link.origin.labelrequiredstring
link.origin.urlurl | nullDefault null
link.origin.refstring | nullDefault null
link.origin.requestedBystring | nullDefault null
link.formatrequiredobject
link.format.templateenumOne of: changelog, launch, feature, digest, customDefault changelog
link.format.durationMsintegerDefault 10000
link.format.aspectenumOne of: 16:9, 4:3, 3:2, 21:9, 1:1, 9:16, 3:4, 2:3, 4:5Default 16:9
link.format.soundobject
link.format.sound.voiceoverbooleanDefault true
link.format.sound.musicbooleanDefault true
link.format.sound.sfxbooleanDefault true
link.pitchrequiredobject | null
link.pitch.versionrequiredinteger
link.pitch.verdictenumOne of: video, skipDefault video
link.pitch.verdictReasonstring | nullDefault null
link.pitch.titlerequiredstring
link.pitch.summaryrequiredstring
link.pitch.shotsrequiredobject[]
link.pitch.shots[].indexrequiredinteger
link.pitch.shots[].titlerequiredstring
link.pitch.shots[].durationMsrequiredinteger
link.pitch.shots[].beatstring | nullDefault null
link.pitch.shots[].visualrequiredstring
link.pitch.shots[].textstring | nullDefault null
link.pitch.shots[].voiceoverstring | nullDefault null
link.pitch.shots[].mediaIdsstring[]
link.pitch.shots[].codePathsstring[]
link.pitch.musicstring | nullDefault null
link.pitch.estimatedCreditsrequiredinteger
link.pitch.createdAtrequireddatetime
link.pitchMarkdownrequiredstring | null
link.deliveryrequiredobject | null
link.delivery.shareUrlrequiredurl
link.delivery.projectIdrequireduuid
link.delivery.editUrlrequiredurl
link.delivery.exportIdrequireduuid
link.delivery.deliveredAtrequireddatetime
link.pageUrlrequiredurl
link.revisionsLeftrequiredinteger
link.expiresAtrequireddatetime
link.channelenumOne of: email, webhook

Example

curl
curl -X POST https://api.raylight.app/production-links/$TOKEN/comments \  -H "Content-Type: application/json" \  -d '{ "comment": "Shorter opening, keep the dashboard shot." }'