Cria ou executa courses
POST/api/courses
- Auth
- Requiere token
- X-CommunityId
X-CommunityIdEnvía el X-CommunityId de la comunidad en la que ocurre la operación.
Las descripciones de los endpoints vienen de la especificación de la API y, por ahora, están en portugués. La interfaz alrededor está traducida.
Sujeito a verificação de papel (RBAC). Além disso, respeita o `canCreate` do space: `staff` aceita owner, admin e moderator; `admins` aceita owner e admin; `anyone` não restringe. Fora da regra, 403 com `errors[0].param = "spaceId"`. SuperAdmin sempre passa. O curso nasce na comunidade do `X-CommunityId`; `communityId` no corpo é opcional e, se vier diferente do header, 403 com `param = communityId`.
Headers
| Nombre | Tipo | Descripción |
|---|---|---|
X-CommunityIdopcional | string (uuid) | ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade. |
Cuerpo de la solicitud application/json
| Nombre | Tipo | Descripción |
|---|---|---|
communityIdopcional | string (uuid) | Valid community ID is required |
spaceIdopcional | string (uuid) | Valid space ID required if provided |
slugobligatorio | string | Slug is required |
titleobligatorio | string | Title is required |
levelobligatorio | beginner | intermediate | advanced | Valid course level is required |
Respuestas
| Código | Descripción |
|---|---|
201 | Operação realizada com sucesso. |
400 | Requisição inválida — falha de validação. |
401 | Token ausente, inválido ou expirado. |
403 | Autenticado, mas sem permissão para esta operação. |
500 | Erro interno do servidor. |
Ejemplo con curl
curl -X POST "https://api.memberfy.net/api/courses" \
-H "Authorization: Bearer $TOKEN" \
-H "X-CommunityId: $COMMUNITY_ID" \
-H "Content-Type: application/json" \
-d '{"slug":"string","title":"string","level":"beginner"}'