GET /public/shares/{token}
Board publico (somente-leitura, sem login)
- Acesso: Pública (link ou assinatura)
- Serviço:
https://api-workspace.axuz.net
Autenticação aceita
Sem autenticação (rota pública ou protegida por link/assinatura).
Sem autenticacao. Rate limit por IP (default 60/min, env PUBLIC_SHARE_RATE_LIMIT_PER_MIN; 0 desliga). Token inexistente, malformado, expirado, revogado, de board apagado: SEMPRE o mesmo 404 ({"error":"not_found"}), para nao revelar qual dos casos ocorreu. Toda resposta (inclusive 404/429) leva Cache-Control: no-store, X-Robots-Tag: noindex, nofollow, Referrer-Policy: no-referrer e X-Content-Type-Options: nosniff. Sem CORS aberto: nenhum header Access-Control-* e emitido para origem fora da allowlist do servico (o front consome pelo mesmo origin via proxy/BFF).
O shape e DEDICADO e minimo (lista branca em PublicBoard): nunca e-mail, id de usuario, comentarios, anexos, campos custom, time tracking, labels, checklists, ids de task/board/team. Membro interno atribuido aparece SO pelo nome de exibicao.
Parâmetros
| Nome | Em | Tipo | Obrigatório | Descrição |
|---|---|---|---|---|
token | path | string | sim |
Respostas
200
Board publicado.
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
name | string | sim | |
description | string | null | sim | So se show_descriptions. |
columns | array<PublicColumn> | sim | |
columns[].name | string | sim | |
columns[].position | integer | sim | |
columns[].tasks | array<PublicTask> | sim | |
columns[].tasks[].title | string | sim | |
columns[].tasks[].description | string | null | sim | So se show_descriptions. |
columns[].tasks[].priority | string | sim | enum: |
columns[].tasks[].due_at | string | null | sim | So se show_due_dates. YYYY-MM-DD se is_all_day; senao RFC 3339 UTC. |
columns[].tasks[].is_all_day | boolean | sim | |
columns[].tasks[].assignees | array<PublicAssignee> | sim | Vazio se !show_assignees. |
columns[].tasks[].assignees[].name | string | sim | Nome de exibicao. Nunca e-mail. |
columns[].tasks[].assignees[].organization | string | null | sim | So para externos. |
columns[].tasks[].assignees[].external | boolean | sim |
404
Erro no formato do servico.
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
error | string | sim |
429
Rate limit.
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
error | string | sim | |
retry_after | integer | sim |
500
Erro interno. Tente de novo com backoff; reporte o X-Request-Id.
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
error | string | sim |
503
Erro no formato do servico.
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
error | string | sim |
Exemplos
O "Try it" está desligado nesta referência. Use os exemplos com a sua credencial de teste.
curl
curl -sS -X GET 'https://api-workspace.axuz.net/public/shares/TOKEN'Node.js
const res = await fetch("https://api-workspace.axuz.net/public/shares/TOKEN", {
method: 'GET',
});
if (!res.ok) throw new Error(`HTTP ${res.status}: ${await res.text()}`);
console.log(await res.json());Python
import os
import requests
res = requests.request(
"GET",
"https://api-workspace.axuz.net/public/shares/TOKEN",
timeout=30,
)
res.raise_for_status()
print(res.json())