Create a move
play_create_moveRecord a new play-by-email move on a campaign. Required: campaignId. Optional: name (defaults 'Move '), number (defaults next-in-sequence), date dd/mm/yy (defaults today), description, sessionId (chapter), parentId (child scene; excludes sessionId), playerIds (visibility restriction to listed campaign players). GM-only: caller must be the campaign owner or an accepted gamemaster.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Move date in `dd/mm/yy` format. Defaults to today on create. Play parses this server-side on both create and update. | |
| name | No | Move name / title (e.g. 'Move 185', 'Interlude 12'). Defaults to 'Move <number>' when omitted on create. | |
| number | No | Game label number. Non-unique (parallel scenes share one). Defaults to the campaign's high-water + 1 on create. Display position is `order`, not this. | |
| parentId | No | Parent move, making this a child scene (split party). Same campaign only, one level deep (a child cannot be a parent; a move with children cannot become a child). Children render on the parent's page, stay out of the feed and chapter lists, and cannot carry a sessionId. Pass null to detach back into the feed. | |
| playerIds | No | Visibility restriction: user ids from the campaign's player roster. Empty/omitted = visible to every campaign participant. When set, the move is invisible to players not listed (dropped from lists, 404 on read); the GM always sees it. Pass [] on update to reopen the move to everyone. | |
| sessionId | No | Chapter session to group this move under. Must belong to the same campaign. Pass null to detach the move back to the unchaptered feed. | |
| campaignId | Yes | Campaign the move belongs to. Required. Caller must be the campaign owner or an accepted gamemaster. | |
| description | No | The collated round: GM narration, player contributions, rolls. Markdown supported. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||