Admin: Drops

Owner-only: queue generation of a new drop (idempotent via requestId)

post/v1/admin/drops

Request

  • Base URL: https://api.sprixen.com
  • URL: https://api.sprixen.com/v1/admin/drops
  • Auth: bearer (a scheme the document does not define)

Request body

slugstring required

URL slug, lowercase kebab-case, unique.

titlestring required
themestring required
monthstring required
moodstring
materialstring
requestIdstring required

Idempotency key. Re-posting the same requestId resumes/returns the existing Drop instead of creating a duplicate.

Example request

{
  "slug": "sunken-harbor",
  "title": "Sunken Harbor",
  "theme": "A storm-drowned pirate port half-swallowed by the tide.",
  "month": "2026-09",
  "palette": {
    "main": "#1c3b3a",
    "accent": "#c98a3a",
    "glow": "#7fd8c9"
  },
  "mood": "dusk, heavy fog, storm-lashed",
  "material": "weathered wood and barnacle-crusted stone",
  "requestId": "req-sunken-harbor-2026-09-19",
  "mapScenes": [
    {
      "name": "Tide-Flooded Market Square",
      "description": "A collapsed market plaza half-submerged by the tide, stalls tipped over, a beached rowboat.",
      "doors": [
        "south"
      ],
      "walls": [
        {
          "x1": 2,
          "y1": 4,
          "x2": 12,
          "y2": 4,
          "kind": "wall",
          "doorState": "locked"
        }
      ],
      "lights": [
        {
          "x": 17,
          "y": 12,
          "radius": 6,
          "color": "#9ee7ff",
          "intensity": 0.7,
          "dim": 0.2
        }
      ]
    }
  ],
  "tokenSubjects": [
    {
      "name": "Drowned Sailor",
      "description": "A bloated, barnacle-crusted undead sailor in tattered oilskins, seaweed tangled in its hair."
    }
  ],
  "audioTracks": [
    {
      "name": "Storm Surf Ambience",
      "prompt": "Seamless 60-second ambient loop: crashing storm surf, distant thunder, creaking dock timbers.",
      "bpm": 70
    }
  ]
}

Response

Drop created (or resumed) and generation queued

Changes

No recorded changes to this operation across all 1 revision of this API.