Como faço para publicar um post usando a API?
eu ainda vou adicionar, mas você faz um POST para https://www.tabnews.com.br/api/v1/contents
.
Ai no header você bota cookies
com session_id={seusessionid}
e no body você bota
title: título,
body: corpo do seu post,
source_url: link de fonte (opcional),
status: published
Estou tentando fazer o post, mas não está dando certo... O que pode ser?
await axios.post(tabnews + '/contents', {
title: article.title,
body: `<p>${article.content}</p>`,
status: "published",
source_url: article.source
}, {
headers: {
cookies: `session_id=${user.token}`
}
})
Vinicius, você pode me informar qual o erro que a API retorna?
Consegui arrumar a internet aqui, esse erro que está dando:
data: {
name: 'ForbiddenError',
message: 'Usuário não pode executar esta operação.',
action: 'Verifique se este usuário possui a feature "create:content".',
status_code: 403,
error_id: 'ac0ecc0c-0641-4001-975e-fc41754463b4',
request_id: 'a0bbfb85-be29-48f3-a31b-95b5fbf5f8bb',
error_location_code: 'MODEL:AUTHORIZATION:CAN_REQUEST:FEATURE_NOT_FOUND'
}
De acordo com o tópico, ele também não conseguiu fazer a chamada pra esse Endpoint.
Provavelmente você está enviando um session_id inválido. Eu já passei por isso no passado, não me lembro de como resolvi.
Você pode tentar entrar na comunidade do TabNews no Discord e pedir ajuda por lá: link
Ou então você pode criar uma issue lá no repositório.
Consegui! Era isso mesmo, vou deixar o código aqui pra caso alguém estiver passando pelo memso problema.
await axios.post(tabnews + '/contents', {
title,
body: content,
status: "published",
source_url: article.source
}, {
headers: {
Cookie: `session_id=${user.token}`
}
})
vlw cara, isso vai ajudar muito!
Ah, e se você quiser, você ainda pode definir o slug
no body.