Inscreve (ou renova) este aparelho
POST/api/push/subscriptions
- Auth
- Requiere token
- Clave de API:
- No acepta clave de API
- 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.
Qualquer papel. Recebe o `PushSubscription.toJSON()` do navegador (`endpoint` e `keys`), mais `platform` e `standalone` (aberto pelo app instalado). Cria (201) ou renova pelo endpoint (200): o mesmo navegador inscrito de novo, mesmo em outra conta, passa a ser de quem está logado. O endpoint precisa ser de um serviço de push de navegador (Google, Mozilla, Apple, Microsoft; também `jmt17.google.com`, o do Chromium); outro dá 400. No máximo 10 aparelhos por pessoa por comunidade: o mais antigo é apagado. Até 20 chamadas por hora por pessoa por comunidade; a 21ª dá 429. O rótulo (`deviceLabel`) vem do navegador.
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 |
|---|---|---|
endpointobligatorio | string | max 2048 |
keysobligatorio | object | |
keys.p256dhobligatorio | string | |
keys.authobligatorio | string | |
vapidKeyIdopcional | string | O `vapidKeyId` de `GET /api/push/config` usado na inscrição. |
platformopcional | ios | android | macos | windows | linux | other | |
standaloneopcional | boolean |
Respuestas
| Código | Descripción |
|---|---|
200 | Aparelho já inscrito: renovado. |
201 | Aparelho inscrito. |
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. |
409 | Conflito com o estado atual do recurso. |
429 | Mais de 20 inscrições por hora da mesma pessoa nesta comunidade. O cabeçalho `Retry-After` diz em quantos segundos tentar de novo. |
500 | Erro interno do servidor. |
Ejemplo con curl
curl -X POST "https://api.memberfy.net/api/push/subscriptions" \
-H "Authorization: Bearer $TOKEN" \
-H "X-CommunityId: $COMMUNITY_ID" \
-H "Content-Type: application/json" \
-d '{"endpoint":"string","keys":{"p256dh":"string","auth":"string"}}'