Axuz Developers

POST /teams/{teamId}/timelines/{timelineId}/import/slack

Consome um bundle diário (`YYYY-MM-DD.json`) de um canal do Slack e grava cada mensagem como post do channel, retrodatando a criação.

  • Acesso: Membro com escopo
  • Serviço: https://api-workspace.axuz.net

Autenticação aceita

  • sessionCookie — Sessão plena Axuz (cookie de sessão da casa). Sessão restrita é 403 enrollment_required.
  • bearerSession — JWT de acesso da sessão em `Authorization: Bearer`.

Consome um bundle diário (YYYY-MM-DD.json) de um canal do Slack e grava cada mensagem como post do channel, retrodatando a criação.

importSlackHandler — POST /teams/{teamId}/timelines/{timelineId}/import/slack.

Multi-tenancy: teamId vem do path validado contra o token; o channel é resolvido por GetTimeline(teamID, timelineID) ANTES de escrever, então um timelineId de outro team devolve 404 sem criar post nenhum.

Retorno: 200 com o resumo (created_tasks = mensagens importadas, por contrato do client); 400 param/arquivo inválido; 403 do gate de escopo (aplicado antes deste handler); 404 channel de outro team; 413 acima do limite; 500 só em falha de banco na resolução do channel.

Parâmetros

NomeEmTipoObrigatórioDescrição
teamIdpathstringsim
timelineIdpathstringsim

Corpo da requisição

Corpo JSON. O schema detalhado deste endpoint ainda não está tipado na spec; veja a descrição da operação.

application/json

NomeTipoObrigatórioDescrição
(corpo)objectnão
{}

Respostas

200

Com o resumo (created_tasks = mensagens importadas, por contrato do client)

400

Param/arquivo inválido

NomeTipoObrigatórioDescrição
errorstringsim

401

Sem credencial valida

NomeTipoObrigatórioDescrição
errorstringsim

403

Sem permissao (nao e owner/admin; token sem escopo; token de integracao em rota nao permitida)

NomeTipoObrigatórioDescrição
errorstringsim

404

Channel de outro team

NomeTipoObrigatórioDescrição
errorstringsim

413

Acima do limite

NomeTipoObrigatórioDescrição
errorstringsim

429

Limite de requisições excedido.

NomeTipoObrigatórioDescrição
errorstringsim

500

Só em falha de banco na resolução do channel

NomeTipoObrigatórioDescrição
errorstringsim

Exemplos

O "Try it" está desligado nesta referência. Use os exemplos com a sua credencial de teste.

curl

curl -sS -X POST 'https://api-workspace.axuz.net/teams/TEAM_ID/timelines/TIMELINE_ID/import/slack' \
  -H "Authorization: Bearer $AXUZ_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'

Node.js

const res = await fetch("https://api-workspace.axuz.net/teams/TEAM_ID/timelines/TIMELINE_ID/import/slack", {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.AXUZ_TOKEN}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({}),
});
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(
    "POST",
    "https://api-workspace.axuz.net/teams/TEAM_ID/timelines/TIMELINE_ID/import/slack",
    headers={
        "Authorization": f"Bearer {os.environ['AXUZ_TOKEN']}",
    },
    json={},
    timeout=30,
)
res.raise_for_status()
print(res.json())