Cria um episódio (em rascunho)
POST/api/media-shows/{id}/episodes
- Auth
- Requires a token
- Who can call it:
- owner
- admin
- API key:
- podcasts:write
- X-CommunityId
X-CommunityIdSend the X-CommunityId of the community the operation happens in.
Endpoint descriptions come straight from the API specification and are in Portuguese for now. The interface around them is translated.
Owner, admin ou apresentador do programa. O áudio (MP3, M4A ou AAC; WAV e outros dão 400 "Envie em MP3 ou M4A") vem de `/api/media` com o propósito `episodeAudio`; o vídeo com `episodeVideo`; a capa com `episodeCover`. Um áudio ou vídeo já usado em outro lugar da comunidade (gravação de evento, Drop) pode ser reaproveitado pelo id: owner, admin ou quem enviou o arquivo. Áudio ou vídeo, nunca os dois.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | string (uuid) |
Headers
| Name | Type | Description |
|---|---|---|
X-CommunityIdoptional | string (uuid) | ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade. |
Request body application/json
| Name | Type | Description |
|---|---|---|
titleoptional | string | max 200 |
descriptionoptional | string | |
seasonoptional | integer | ≥ 1 |
numberoptional | integer | ≥ 0 |
typeoptional | full | trailer | bonus | |
isOpenoptional | boolean | |
audioMediaIdoptional | string (uuid) | |
videoMediaIdoptional | string (uuid) | |
coverMediaIdoptional | string (uuid) | |
durationSecondsoptional | integer | |
chaptersoptional | object[] | Sobrepõem os da descrição; nulo volta a ler a descrição. |
chapters[].startSecondsoptional | integer | |
chapters[].titleoptional | string | max 120 |
Responses
| Status | Description |
|---|---|
201 | O episódio. |
400 | Requisição inválida — falha de validação. |
401 | Token ausente, inválido ou expirado; token de outra comunidade (o `X-CommunityId` ou o `communityId` do corpo não é o do token); token antigo ou de uma sessão encerrada (troca de senha, convite aceito). Nesses casos a mensagem pede para entrar de novo (`auth.signInAgain`). |
403 | Autenticado, mas sem permissão para esta operação. |
404 | Recurso não encontrado. |
409 | Conflito com o estado atual do recurso. |
curl example
curl -X POST "https://api.memberfy.net/api/media-shows/<id>/episodes" \
-H "Authorization: Bearer $TOKEN" \
-H "X-CommunityId: $COMMUNITY_ID" \
-H "Content-Type: application/json" \
-d '{}'