1. API
  2. SDK
  3. Atualizar preferências
Ir para Dashboard
  • Visão geral da API
  • Erros
  • Limites
  • Paginação
  • GETListar campanhas
  • POSTCriar campanha
  • GETObter campanha
  • DELETEExcluir campanha
  • PATCHAtualizar campanha
  • POSTCancelar campanha
  • POSTCriar segmento
  • GETRelatório diário
  • GETListar assinantes
  • GETObter assinante
  • DELETEExcluir assinante
  • PATCHAtualizar assinante
  • GETObter configuração do site
  • POSTRegistrar inscrição
  • DELETECancelar inscrição do dispositivo
  • POSTRegistrar evento
  • GETObter preferências
  • PUTAtualizar preferências
PUT/v1/sites/{pub}/preferences

Atualizar preferências

Grava as preferências do assinante dono do dispositivo. Só os campos enviados mudam; campo omitido continua como estava. Para limpar um campo, mande null (ou [] em opted_out_categories). A resposta traz as quatro preferências já atualizadas.

Send request

Use the documented inputs to call this endpoint directly.

API serverbase URL

Parameters

Values are applied to the request and the example on the right.

pubpath · stringrequired

ID público do site (pub_ seguido de 24 caracteres), o mesmo do atributo data-site do snippet.

X-Pushwi-Endpointheader · stringrequired

URL do endpoint de push do dispositivo (PushSubscription.endpoint), até 2048 caracteres. É assim que a API sabe de qual dispositivo se trata.

Request body

application/jsonrequired
opted_out_categoriesarray<string>optional

Chaves das categorias que o assinante não quer receber.

max_per_dayintegeroptional

Máximo de notificações por dia, contado no fuso do assinante, de 1 a 65535. null deixa sem limite; 0 é recusado com 422.

quiet_startintegeroptional

Hora de início do horário silencioso, de 0 a 23.

quiet_endintegeroptional

Hora de fim do horário silencioso, de 0 a 23. Pode cruzar a meia-noite.

Responses

200application/json

Preferências gravadas.

{
  "preferences": {
    "opted_out_categories": [
      "promo"
    ],
    "max_per_day": 3,
    "quiet_start": 22,
    "quiet_end": 7
  }
}
preferencesoptional
403application/json

O cabeçalho Origin está ausente ou não consta nas origens permitidas do site.

{
  "message": "Origem não permitida."
}
messagestringoptional

Descrição do erro, em português. Quando a causa não tem mensagem própria, vem a mensagem padrão do código HTTP. Trate pelo código, não pelo texto.

404application/json

Site desconhecido, ou o dispositivo não tem inscrição ativa.

{
  "message": "Recurso não encontrado."
}
messagestringoptional

Descrição do erro, em português. Quando a causa não tem mensagem própria, vem a mensagem padrão do código HTTP. Trate pelo código, não pelo texto.

422application/json

Algum campo não passou na validação. errors traz a mensagem de cada campo.

{
  "message": "O campo content.title é obrigatório.",
  "errors": {
    "content.title": [
      "O campo content.title é obrigatório."
    ]
  }
}
messagestringoptional

Primeira mensagem de erro.

errorsobjectoptional

Mensagens por campo. A chave é o caminho do campo com pontos, como content.title ou definition.groups.0.rules.1.op.

429application/json

Limite de requisições excedido. Espere os segundos indicados em Retry-After.

{
  "message": "Muitas requisições. Tente novamente em instantes."
}
messagestringoptional

Descrição do erro, em português. Quando a causa não tem mensagem própria, vem a mensagem padrão do código HTTP. Trate pelo código, não pelo texto.

Obter preferências< Previous

Powered by heyo

curl --request PUT \  'https://api.pushwi.com/v1/sites/pub_8fK2mQx7Lw3nRt5Yv9Bc1Dz4/preferences' \  --header 'X-Pushwi-Endpoint: string' \  --header 'Content-Type: application/json' \  --data '{  "max_per_day": 3}'
{  "preferences": {    "opted_out_categories": [      "promo"    ],    "max_per_day": 3,    "quiet_start": 22,    "quiet_end": 7  }}