# Desenvolvedores

> Desenvolva no Nodaro com a API REST, o SDK para TypeScript e a CLI. Use tokens de API ou OAuth, gere clientes pelo OpenAPI e conecte agentes de IA via MCP.

Source: https://nodaro.ai/pt-BR/docs/developers

O Nodaro é **REST-first**: o editor do Nodaro, o SDK para TypeScript e a CLI conversam com a mesma API HTTP, então tudo o que você faz no Nodaro pode ser automatizado com um token Bearer e uma requisição JSON. Esta seção documenta essa API, os clientes dela, as formas de autenticação e as formas de colocar o Nodaro dentro do seu próprio produto. Os assistentes de IA acessam os mesmos workflows e modelos pelo [servidor MCP](https://nodaro.ai/docs/mcp).

## Três formas de acesso
| Interface | Instalação | Use para |
| --- | --- | --- |
| [API REST](https://nodaro.ai/docs/developers/api) | Nada: envie requisições HTTPS para `https://app.nodaro.ai/v1/` | Qualquer linguagem, qualquer plataforma |
| [SDK para TypeScript](https://nodaro.ai/docs/developers/sdk) | `npm install @nodaro/sdk` | Código tipado em Node, navegadores, React Native e runtimes de edge |
| [CLI](https://nodaro.ai/docs/developers/cli) | `npm install -g @nodaro/cli` ou um binário independente | Terminais, cron jobs e pipelines de CI |

O SDK usa `fetch` e `URL`, então funciona no Node.js 20 ou mais recente, em navegadores, no React Native, no Cloudflare Workers, no Deno e no Bun. A CLI é uma camada fina sobre o SDK: tudo o que a CLI faz, o SDK também faz.

A mesma chamada em cada um deles, executando um workflow salvo:

**curl**

```bash
curl -s -X POST https://app.nodaro.ai/v1/workflows/8c2d7f1e-3a4b-4c5d-9e6f-7a8b9c0d1e2f/run \
  -H "Authorization: Bearer $NODARO_API_KEY"
# {"executionId":"3f9e2b1a-…","status":"pending"}
```

**TypeScript SDK**

```ts

const client = createClient({
baseUrl: 'https://app.nodaro.ai',
auth: new StaticTokenAuth(process.env.NODARO_API_KEY!),
})

const { executionId } = await client.workflows.run('8c2d7f1e-3a4b-4c5d-9e6f-7a8b9c0d1e2f')
```

**CLI**

```bash
nodaro auth login --token "$NODARO_API_KEY"
nodaro workflows run 8c2d7f1e-3a4b-4c5d-9e6f-7a8b9c0d1e2f --watch
```

Três coisas funcionam da mesma forma em todos eles:

- **Execute qualquer coisa.** Execute um [workflow](https://nodaro.ai/docs/developers/api/workflows) salvo, um [app](https://nodaro.ai/docs/developers/embed/miniapps) publicado ou um único [nó](https://nodaro.ai/docs/developers/api/nodes) com `POST /v1/<node-type>`, sem montar um workflow.
- **Consulte os resultados periodicamente.** As gerações levam de segundos a minutos, então uma execução devolve um id na hora, e você consulta periodicamente o [job](https://nodaro.ai/docs/developers/api/jobs) ou a [execução](https://nodaro.ai/docs/developers/api/executions) dela. O SDK e a CLI podem esperar por você.
- **Descubra sem token.** `GET /v1/nodes` e `GET /v1/models` listam todos os nós e modelos, com as configurações e os preços em créditos.

## Autenticação
| Credencial | Formato | Use quando |
| --- | --- | --- |
| Token de API pessoal | `ndr_…` | O seu próprio servidor, script ou job de CI chama o Nodaro com a sua conta. Crie o token em **Configurações › Tokens de API**. |
| Token de acesso OAuth | `ndr_app_…` | O seu produto executa workflows nas contas do Nodaro dos seus usuários, com o consentimento deles. |
| JWT de sessão | Um JWT | Você executa a Community Edition self-hosted para uso próprio. |

Os tokens de API estão disponíveis no Nodaro Cloud e na Business edition. Uma instalação self-hosted também pode executar as suas gerações no Nodaro Cloud com um token de API pessoal, sem OAuth. Leia [Autenticação](https://nodaro.ai/docs/developers/api/authentication) e [Apps OAuth](https://nodaro.ai/docs/developers/oauth).

## Especificação OpenAPI
O servidor publica uma especificação OpenAPI 3.1 do núcleo da API em `https://app.nodaro.ai/v1/openapi.json`. A partir dela, gere um cliente tipado para Go, Rust, Python ou qualquer outra linguagem. Veja [Especificação OpenAPI](https://nodaro.ai/docs/developers/api/openapi).

## Para agentes de IA
- **MCP.** Adicione `https://mcp.nodaro.ai/mcp` como conector personalizado no Claude, no ChatGPT, no Cursor e em outros clientes MCP. O assistente entra com a sua conta do Nodaro e ganha ferramentas para gerar mídia, montar e executar workflows e gerenciar personagens e outras entidades. Veja [Nodaro MCP](https://nodaro.ai/docs/mcp).
- **Skills para agentes.** Arquivos de skill ensinam assistentes de programação, como o Claude Code e o Cursor, a usar o SDK e a criar um app OAuth. Veja [Skills para agentes](https://nodaro.ai/docs/developers/agent-skills).

## O Nodaro no seu produto
- **Incorpore um app.** Execute um app publicado do Nodaro a partir da sua própria interface web ou mobile. Veja [Incorporações](https://nodaro.ai/docs/developers/embed).
- **Crie os seletores você mesmo.** Os catálogos dos Controles criativos vêm como dados em `@nodaro/prompts`, então o seu app pode oferecer as mesmas opções e escrever os mesmos prompts. Veja [Catálogos de seletores](https://nodaro.ai/docs/developers/picker-catalogs).
- **Faça o login dos usuários com o seu provedor de identidade.** Veja [Login externo (SSO)](https://nodaro.ai/docs/developers/sso).
- **Cobre pela sua própria carteira.** Uma implantação pode autorizar os gastos de cada cliente pela própria carteira. Veja [Carteiras externas](https://nodaro.ai/docs/developers/external-wallet).

## Explore a documentação para desenvolvedores
  - [API REST](https://nodaro.ai/docs/developers/api): 
Execute workflows e nós, consulte jobs periodicamente, envie mídia e gerencie entidades por HTTPS.
  
  - [SDK para TypeScript](https://nodaro.ai/docs/developers/sdk): 
@nodaro/sdk: métodos tipados, erros tipados e auxiliares de consulta periódica para Node, navegadores e runtimes de edge.
  
  - [CLI](https://nodaro.ai/docs/developers/cli): 
@nodaro/cli: execute workflows, apps e nós individuais em um terminal ou em um job de CI.
  
  - [Apps OAuth](https://nodaro.ai/docs/developers/oauth): 
Permita que os seus usuários conectem as próprias contas do Nodaro ao seu produto, com tokens de escopo limitado.
  
  - [SSO](https://nodaro.ai/docs/developers/sso): 
Permita que um provedor de identidade confiável faça o login dos usuários na sua instalação do Nodaro.
  
  - [Catálogos de seletores](https://nodaro.ai/docs/developers/picker-catalogs): 
Crie os seletores dos Controles criativos no seu próprio app a partir dos catálogos publicados.
  
  - [Incorporações](https://nodaro.ai/docs/developers/embed): 
Execute um app publicado a partir da sua própria interface ou incorpore a prévia 3D interativa.
  
  - [Carteiras externas](https://nodaro.ai/docs/developers/external-wallet): 
Autorize os gastos de cada cliente pela carteira da própria implantação.
  
  - [Skills para agentes](https://nodaro.ai/docs/developers/agent-skills): 
Arquivos de skill que ensinam assistentes de programação a usar o SDK e a criar apps OAuth.

## Frequently asked questions

### O Nodaro tem uma API?

Sim. A API REST do Nodaro, em https://app.nodaro.ai/v1/, executa workflows e nós individuais, informa o status dos jobs, armazena as suas mídias e gerencia os seus personagens e outras entidades. Ela recebe JSON e um token Bearer, e a mesma API funciona em instalações self-hosted.

### Existe um SDK oficial para a API do Nodaro?

Sim, o @nodaro/sdk, para TypeScript e JavaScript. Ele funciona no Node.js 20 ou mais recente e em qualquer runtime com fetch e URL globais, incluindo navegadores, React Native, Cloudflare Workers, Deno e Bun.

### Como os agentes de IA usam o Nodaro?

Pelo servidor MCP do Nodaro, em https://mcp.nodaro.ai/mcp. Assistentes como Claude, ChatGPT e Cursor entram com a sua conta do Nodaro e passam a poder gerar mídia, montar workflows e executá-los.

### Posso usar a API com a Community Edition self-hosted?

Sim. Uma instalação da Community Edition oferece os mesmos endpoints, e você se autentica com o JWT da sua sessão de login. Os tokens de API exigem a Business edition ou o Nodaro Cloud, e os créditos só existem no Nodaro Cloud.

### Devo usar um token de API ou OAuth?

Use um token de API pessoal quando o seu próprio servidor chamar o Nodaro com a sua própria conta. Use OAuth quando você criar um produto e cada um dos seus usuários conectar a própria conta do Nodaro a ele.
