Axuz Developers

POST /teams/{teamId}/flowcharts/{id}/clone

Serve POST /teams/{teamId}/flowcharts/{id}/clone — o owner duplica um flowchart do próprio team.

  • Access: Team member
  • Service: https://api-flow.axuz.net

Accepted authentication

  • 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`.

Serve POST /teams/{teamId}/flowcharts/{id}/clone — o owner duplica um flowchart do próprio team. O clone leva snapshot puro do document; nada de op_log/versions/share tokens (é intencional — user pediu clone limpo por segurança).

Motivo (F5.1 aprovado): user pediu botão "Duplicar" no editor. Clone deve ser snapshot do momento exato, sem histórico (op_log com autoria/ timestamps antigos vazaria contexto de outros users).

Entradas: URL {teamId}/{id}, JWT no cookie.

Retorno: 201 Flowchart (novo id + title "<original> (cópia)"). 404 se original não existe/soft-deleted. 500 em erro DB.

Parameters

NameInTypeRequiredDescription
teamIdpathstringyes
idpathstringyes

Request body

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

application/json

NameTypeRequiredDescription
(corpo)objectno
{}

Responses

201

Flowchart (novo id + title "<original> (cópia)")

401

Sem credencial valida

NameTypeRequiredDescription
errorstringyes

403

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

NameTypeRequiredDescription
errorstringyes

404

Se original não existe/soft-deleted

NameTypeRequiredDescription
errorstringyes

429

Limite de requisições excedido.

NameTypeRequiredDescription
errorstringyes

500

Em erro DB

NameTypeRequiredDescription
errorstringyes

Examples

"Try it" is turned off in this reference. Use the examples with your test credential.

curl

curl -sS -X POST 'https://api-flow.axuz.net/teams/TEAM_ID/flowcharts/ID/clone' \
  -H "Authorization: Bearer $AXUZ_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'

Node.js

const res = await fetch("https://api-flow.axuz.net/teams/TEAM_ID/flowcharts/ID/clone", {
  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-flow.axuz.net/teams/TEAM_ID/flowcharts/ID/clone",
    headers={
        "Authorization": f"Bearer {os.environ['AXUZ_TOKEN']}",
    },
    json={},
    timeout=30,
)
res.raise_for_status()
print(res.json())