Publications
Create a publication
/v1/publicationsCreates a post or story. With scheduled_at it is scheduled (a media is required); without it, a draft is created and the media can be attached later. The actual publishing to MYM is handled asynchronously by Fansquare.
write:publicationscurl -X POST 'https://api.fansquare.so/v1/publications' \
-H "Authorization: Bearer $API_KEY" \
-H "Fansquare-Version: Amethyste" \
-H "Content-Type: application/json" \
-d '{
"creator_id": "m81IhLxdhzDGYs54rNp2",
"type": "post",
"media_uuid": "b12eacb2-afea-4959-a0d0-b685e6b49279",
"caption": "New set tonight",
"is_public": false,
"playlists": [
"dc858a1c-bfca-4ab8-a445-cc2d76e1b784"
],
"scheduled_at": "2026-10-14T19:00:00.000Z"
}'{
"id": "6136681c-548b-4fca-a86b-8f73b2926652",
"creator_id": "m81IhLxdhzDGYs54rNp2",
"type": "post",
"status": "scheduled",
"scheduled_at": "2026-10-14T19:00:00.000Z",
"published_at": null,
"media_uuid": "b12eacb2-afea-4959-a0d0-b685e6b49279",
"caption": "New set tonight",
"is_public": false,
"audiences": [],
"playlists": [
"dc858a1c-bfca-4ab8-a445-cc2d76e1b784"
],
"auto_action": "none",
"auto_action_seconds": null,
"failure_reason": null,
"created_at": "2026-10-12T21:14:00.000Z"
}Parameters
Headers
Fansquare-VersionstringrequiredAPI version to pin. Accepts the mineral name or the release date of a version.
Body
application/json
creator_idstringrequiredFansquare creator id (see GET /v1/creators).
min length 1typestringrequiredpost or story.
Valuespoststorymedia_uuidstringMYM media uuid. Optional: omit to create a draft, attach later.
format uuidcaptionstringPost caption (posts only).
max length 1500is_publicbooleanPost visibility (posts only). Defaults to private.
audiencesarray of stringsStory audiences (stories only). Required to schedule a story.
Valuessubscribersinterestedex_subscriberseveryoneplaylistsarray of stringsMYM playlist uuids (posts only).
format uuidscheduled_atstringSet to schedule the publication (requires a media). Omit to create a draft.
format date-timeauto_actionstringAutomatic action after publish.
Valuesnonedeletepass_privateauto_action_secondsintegerDelay before the auto action (seconds).
> 0max 2592000
Response
Created, application/json
idstringrequiredFansquare publication id. Path parameter of the /v1/publications/{publication_id} routes.
creator_idstringrequiredFansquare creator id (see GET /v1/creators).
typestringrequiredA feed post or a story.
Valuespoststorystatusstringrequireddraft(no date yet),scheduled,published,failed(seefailure_reason) orcancelled.Valuesscheduledpublisheddraftfailedcancelledscheduled_atstringrequiredWhen the publication is scheduled (ISO 8601). A draft carries a placeholder value.
format date-timepublished_atstring | nullrequiredWhen it was actually published (ISO 8601), or null.
format date-timemedia_uuidstring | nullrequiredMYM media uuid attached to the publication. null for a draft without media yet.
captionstring | nullrequiredPost caption. null for stories.
is_publicboolean | nullrequiredPost visibility. null for stories.
audiencesarray of stringsrequiredStory audiences. Empty for posts.
Valuessubscribersinterestedex_subscriberseveryoneplaylistsarray of stringsrequiredMYM playlist uuids the post is added to. Empty for stories.
auto_actionstringrequiredAutomatic action after publishing:
none,delete(remove it) orpass_private(make it private).Valuesnonedeletepass_privateauto_action_secondsinteger | nullrequiredDelay in seconds between publishing and the automatic action, or null without one.
failure_reasonstring | nullrequiredWhy publishing failed, when
statusisfailed; null otherwise.created_atstringrequiredWhen the publication was created (ISO 8601).
format date-time
curl -X POST 'https://api.fansquare.so/v1/publications' \
-H "Authorization: Bearer $API_KEY" \
-H "Fansquare-Version: Amethyste" \
-H "Content-Type: application/json" \
-d '{
"creator_id": "m81IhLxdhzDGYs54rNp2",
"type": "post",
"media_uuid": "b12eacb2-afea-4959-a0d0-b685e6b49279",
"caption": "New set tonight",
"is_public": false,
"playlists": [
"dc858a1c-bfca-4ab8-a445-cc2d76e1b784"
],
"scheduled_at": "2026-10-14T19:00:00.000Z"
}'{
"id": "6136681c-548b-4fca-a86b-8f73b2926652",
"creator_id": "m81IhLxdhzDGYs54rNp2",
"type": "post",
"status": "scheduled",
"scheduled_at": "2026-10-14T19:00:00.000Z",
"published_at": null,
"media_uuid": "b12eacb2-afea-4959-a0d0-b685e6b49279",
"caption": "New set tonight",
"is_public": false,
"audiences": [],
"playlists": [
"dc858a1c-bfca-4ab8-a445-cc2d76e1b784"
],
"auto_action": "none",
"auto_action_seconds": null,
"failure_reason": null,
"created_at": "2026-10-12T21:14:00.000Z"
}