uloggdDesenvolvedores
Portal do desenvolvedoruloggd
ComeçarRecursosArcade
Portal do desenvolvedoruloggdIdentidadeCatálogoPerfilBibliotecaAvaliaçõesDiárioListasPremiaçõesCapturasSocialContaNotificaçõesComentáriosCurtidasHistóricoPessoasMineraisArcade

Social

Com quem o dono está conectado.

Este escopo diz quem, nunca o que essas contas têm.

Os pedidos para seguir uma conta privada são respondidos um a um em /api/v1/social/follow-requests/{username}, ou todos de uma vez: PUT /api/v1/social/follow-requests com {"all": true} aceita, e DELETE /api/v1/social/follow-requests?all=true recusa. O all é obrigatório nos dois, porque esvaziar a fila não tem volta.

GET/api/v1/social/followers

Contas que seguem o dono.

Escopo social.read · Conta na cota read

GET/api/v1/social/following

Contas que o dono segue.

Escopo social.read · Conta na cota read

GET/api/v1/social/blocks

Quem o dono bloqueou. A direção contrária não existe: uma conta lê os bloqueios que fez, nunca os que sofreu.

Escopo social.read · Conta na cota read

Parâmetros

CampoTipoObservações
pageintegerDe 1 a 1000.
qstringFiltra por nome de usuário ou nome de exibição.
PUT/api/v1/social/following/{username}

Segue uma conta, ou pede para seguir se ela for privada. A resposta traz following e requested, e só um dos dois é verdadeiro. Fazer duas vezes não muda nada.

Escopo social.write · Conta na cota write

DELETE/api/v1/social/following/{username}

Deixa de seguir uma conta, ou retira o pedido que ainda não foi respondido.

Escopo social.write · Conta na cota write

PUT/api/v1/social/blocks/{username}

Bloqueia uma conta. Isso também desfaz o seguir nos dois sentidos, o que é decisão do banco e não desta rota.

Escopo social.write · Conta na cota write

DELETE/api/v1/social/blocks/{username}

Desbloqueia uma conta. Seguir de volta não é automático.

Escopo social.write · Conta na cota write

GET/api/v1/social/follow-requests

Quem pediu para seguir uma conta privada e ainda está esperando. Só essa direção existe: o que esta conta pediu a outras é a fila delas para responder, e listá-la aqui seria ler uma decisão que ninguém tomou.

Escopo social.read · Conta na cota read

Parâmetros

CampoTipoObservações
pageintegerDe 1 a 1000.
qstringFiltra por nome de usuário ou nome de exibição.
PUT/api/v1/social/follow-requests

Aceita todos os pedidos que estão esperando, de uma vez, e diz quantos: {"data": {"approved": 3}}. Cada um é aceito como na rota de um pedido só, com a mesma verificação em duas etapas quando a conta a exige. Sem all: true no corpo responde 400, porque esvaziar a fila não tem volta e não devia acontecer por engano.

Escopo social.write · Conta na cota write

Corpo

CampoTipoObservações
allobrigatóriobooleanPrecisa ser true.
DELETE/api/v1/social/follow-requests

Recusa todos os pedidos que estão esperando, de uma vez, e diz quantos: {"data": {"declined": 3}}. Sem ?all=true responde 400, pelo mesmo motivo do PUT.

Escopo social.write · Conta na cota write

Parâmetros

CampoTipoObservações
allobrigatóriobooleanPrecisa ser true.
PUT/api/v1/social/follow-requests/{username}

Aceita um pedido. Quem não estava esperando responde 404, em vez de um sucesso silencioso: aprovar um pedido que foi retirado não devia parecer aprovado.

Escopo social.write · Conta na cota write

DELETE/api/v1/social/follow-requests/{username}

Recusa um pedido. Some da fila dos dois jeitos; só aceitar cria o seguir.

Escopo social.write · Conta na cota write

POST/api/v1/reports

Conta à moderação sobre alguma coisa. Não existe lado de leitura, e não vai existir: uma denúncia é um recado para quem cuida delas, e deixar ver o andamento (ou deixar contar quantas vezes uma conta foi denunciada) transforma a fila em arma. A resposta diz que chegou, e nada mais. Uma pessoa tem uma denúncia aberta por coisa: denunciar de novo o mesmo perfil ou o mesmo conteúdo enquanto a primeira não foi fechada responde 409 conflict, e a primeira continua valendo. ARCADE_APP denuncia um jogo do Arcade: não pede username, porque a conta é a de quem publica o jogo, e leva o uloggd a verificar de novo a URL do jogo, no máximo uma vez por hora por jogo.

Escopo social.write · Conta na cota write

Corpo

CampoTipoObservações
onobrigatóriostringPROFILE, REVIEW, LIST, SCREENSHOT, DIARY, PROFILE_COMMENT, CONTENT_COMMENT ou ARCADE_APP.
usernamestringA conta de quem publicou. Uma denúncia nomeia a conta de que trata, mesmo quando é sobre um conteúdo dela. Obrigatório para todo tipo menos ARCADE_APP, em que o banco tira a conta do próprio jogo.
reasonobrigatóriostringHARASSMENT, HATE_SPEECH, SPAM, IMPERSONATION, SEXUAL_CONTENT, CHILD_SAFETY, SELF_HARM, VIOLENCE, PRIVACY, SPOILER, SCAM ou OTHER. Todos valem para qualquer tipo, menos SPOILER, que é para algo publicado (uma avaliação, sessão, lista, captura ou comentário) e é recusado com 400 num PROFILE, e SCAM (golpe), que só vale para ARCADE_APP. CHILD_SAFETY, SELF_HARM e VIOLENCE vão para o começo da fila da moderação, e SCAM também passa à frente. OTHER não nomeia regra nenhuma, então pede details.
idstringO conteúdo denunciado. Obrigatório para tudo que não seja PROFILE, onde a conta em si é o assunto. Com ARCADE_APP, o id do aplicativo do jogo.
detailsstringAté 1000 caracteres. Com OTHER é obrigatório e tem pelo menos 10, sem contar espaços nas pontas: sem isso responde 400.
instance_iduuidSó com ARCADE_APP, opcional: a partida de onde a denúncia saiu. A moderação recebe junto o lançamento, a origem e a última verificação daquele momento.

Capturas

As capturas do dono.

Conta

A conta em si, e só com sessão.