Documentação SyraOS

Guia completo para integrar o SyraOS em sua aplicação. APIs robustas, SDKs simples, documentação clara.

Começando

1. Criar conta

Acesse syraos.com e clique em "Começar agora". Escolha seu plano (Starter ou Pro) e complete o cadastro.

2. Gerar API Key

No dashboard, vá em Settings API Keys. Clique em "Nova chave", copie e guarde em segurança (não compartilhe com ninguém).

3. Escolher SDK

Recomendamos SyraOS — uma forma simples e dinâmica de consumir qualquer rota da API. Disponível em TypeScript, JavaScript e Python.

4. Seu primeiro request

Execute um teste com sua chave. Todos os exemplos abaixo estão prontos para copiar, colar e rodar.

SyraOS SDK

Uma forma simples, dinâmica e poderosa de consumir a API do SyraOS. Sem boilerplate, sem complicação.

Como funciona: Tudo depois de syra. vira automaticamente uma rota da API.

syra.usuario({ id: 1 })
GET /usuario?id=1

Instalação

npm install syraos

Uso básico

import { syra } from "syraos";

// Chamada automática  GET /teste?valor=5
const res = await syra.teste({ valor: 5 });

console.log(res);

Suporte a parâmetros

✅ Valores simples

syra.teste({ valor: 5 })

✅ Arrays

syra.teste({ ids: [1, 2, 3] })
//  ?ids[]=1&ids[]=2&ids[]=3

✅ Objetos (nested)

syra.teste({
  filtro: { nome: "syra" }
})
//  ?filtro[nome]=syra

✅ Métodos HTTP

syra.teste(
  { valor: 5 },
  { method: "POST" }
)

Criar e Usar Minds

Minds são agentes inteligentes que você configura uma vez e reutiliza infinitas vezes. Cada Mind é salvo no sistema com configurações de interpretação, regras e estilo de resposta.

Estrutura do Mind (JSON)

{
  "access_level": 0,
  "active": true,
  "authors": ["Syra", "Quim"],
  "code": "0001",
  "created_at": "2026-03-26",
  "name": "SyraAI",
  "version": "1.0",
  "system": {
    "context": "Usuário busca expressão emocional",
    "interpretation": "Interprete como um desabafo pessoal",
    "response_style": "Tom acolhedor, humano e íntimo",
    "restrictions": "Não julgar, não ser frio, não dar respostas genéricas",
    "thinking": "Reflita antes de responder",
    "rules": "Sempre valide entrada antes de processar"
  }
}

1. Criar uma Mind

const api = createSyra({ token: "sk_live_..." });

// Criar nova Mind
const mind = await api.minds.create({
  name: "SyraAI",
  code: "0001",
  authors: ["Syra", "Quim"],
  system: {
    context: "Usuário busca expressão emocional",
    interpretation: "Interprete como um desabafo pessoal",
    response_style: "Tom acolhedor, humano e íntimo",
    restrictions: "Não julgar, não ser frio",
    thinking: "Reflita antes de responder",
    rules: "Sempre valide entrada"
  },
  version: "1.0",
  active: true
}, { method: "POST" });

console.log(mind.id); // "mind_syraai_0001"

2. Consultar Mind por ID

// Buscar Mind existente
const mind = await api.minds.get({ id: "mind_syraai_0001" });

console.log(mind.name);          // "SyraAI"
console.log(mind.system.context); // "Usuário busca expressão emocional"

3. Usar Mind em um Chat

// Enviar mensagem para a Mind
const response = await api.chat({
  message: "Estou me sentindo desanimado com tudo",
  mind_id: "mind_syraai_0001",  // Usar Mind existente
  context: { user_id: "user_123" }
});

console.log(response.content); 
// "Entendo perfeitamente como você se sente. É importante reconhecer esses sentimentos..."

4. Listar todas as Minds

// Buscar todas as Minds do usuário
const minds = await api.minds.list({ limit: 10, offset: 0 });

minds.forEach(m => {
  console.log(`${m.name} (v${m.version})`);
});

5. Atualizar Mind

// Atualizar configuração da Mind
const updated = await api.minds.update(
  { id: "mind_syraai_0001" },
  {
    system: {
      response_style: "Tom mais professoral",
      // ... outras configurações
    },
    version: "1.1"
  },
  { method: "PUT" }
);

console.log(updated.version); // "1.1"

6. Exportar e Compartilhar Mind

// Exportar Mind para compartilhamento
const exported = await api.minds.export({ id: "mind_syraai_0001" });

console.log(exported.qr_code);  // URL do QR Code
console.log(exported.share_url); // Link para importar

Testing com Mock Mode

Teste suas integrações sem gastar tokens reais. Use chaves de teste (sk_test_...) para desenvolver com segurança.

import { createSyra } from "syraos";

// ✅ Modo teste (sem gastar tokens reais)
const api = createSyra({ 
  token: "sk_test_xxxxx",  // Token começa com sk_test_
  mock: true  // Ativa modo sandbox
});

const res = await api.chat({ message: "Olá" });
// Retorna resposta simulada com estrutura real
// { id: "msg_fake_123", content: "[Simulado]...", tokens_used: 10 }

Tratamento de Erros Padrão

Todos os erros seguem um padrão JSON consistente, permitindo que sua aplicação tome decisões automáticas.

import { SyraAuthError, SyraRateLimitError, SyraAPIError } from "syraos/errors";

try {
  const res = await api.chat({ message: "Olá" });
} catch (error) {
  if (error instanceof SyraAuthError) {
    console.log("❌ Token inválido. Regenere.");
  } else if (error instanceof SyraRateLimitError) {
    console.log(`⏱️ Aguarde ${error.retryAfter}s`);
  } else if (error instanceof SyraAPIError) {
    console.log(`${error.status} - ${error.message}`);
  }
}

Rate Limiting & Quotas

SDK gerencia automaticamente limite de requisições e tokens. Cada plano tem seu rate limit.

// Verificar limites restantes
const limits = api.getLimits();
console.log(`Tokens: ${limits.tokensRemaining} / ${limits.tokensLimit}`);
console.log(`Req/min: ${limits.requestsRemaining} / ${limits.requestsLimit}`);

Observabilidade & Logging

Rastreamento completo com Request-ID único. Cada requisição é identificada para debugging.

// Debug em 3 níveis: "off", "minimal", "full"
const api = createSyra({ 
  token: "sk_live_...",
  debug: "full"  // Loga Request-ID, latência, status
});

// Metadados em cada resposta
const res = await api.chat({ message: "Teste" });
console.log(res.$meta.requestId);   // "req_8f7b2c1a3d..."
console.log(res.$meta.latencyMs);   // 234
console.log(res.$meta.tokensUsed);  // 45

Autenticação

⚠️ OBRIGATÓRIO : Token em TODAS as funções

Para garantir nossos níveis de acesso e segurança, é necessário passar sua API Key em todas as chamadas à API. Sem o token, a requisição será rejeitada.

O token é enviado automaticamente no header Authorization: Bearer após a inicialização.

import { createSyra } from "syraos";

// Sua chave (exemplo)
const token = "sk_live_gvegb1856fvev4eve5v4";

const syra = createSyra({
  token: token  // Token é OBRIGATÓRIO
});

// Pronto! Token já é enviado em TODA requisição
const res = await syra.models();

Configuração completa

Todo o processo de requisição inclui automaticamente o seu token. Você não precisa adicionar header manualmente — o SDK faz isso para você.

const syra = createSyra({
  baseURL: "https://api.syracloud.com",
  token: "sk_live_YOUR_TOKEN",  // Token é enviado automaticamente
  debug: true  // Loga requisições no console
});

Exemplo completo

Veja como usar a API com o token configurado — ele vai em todas as requisições automaticamente:

import { createSyra } from "syraos";

const api = createSyra({
  token: "sk_live_gvegb1856fvev4eve5v4",  // Sua chave
  debug: true
});

// Primeira função - token é enviado automaticamente
const res1 = await api.chat({
  message: "Olá IA!",
  context: {
    user: "João",
    session: "12345"
  },
  tags: ["ai", "chat"]
});

// Qualquer outra função - token também é enviado
const res2 = await api.models();
const res3 = await api.completions({ ... });

console.log(res1);

Compatibilidade

✔ React   |   ✔ Next.js   |   ✔ Expo / React Native  
✔ Node.js   |   ✔ HTML (via script)   |   ✔ Browsers

Outras linguagens

Python

from syraos import Syra

api = Syra(token="sk_live_xyz")
res = await api.chat({ 
  message: "Olá!" 
})

JavaScript

import { syra } from "syraos";

const res = await syra.chat({ 
  message: "Olá!" 
})

Segurança do Token

🔐 Como manter seu token seguro:

  • Nunca compartilhe seu token com ninguém
  • Não exponha o token em código público (GitHub, etc)
  • Use variáveis de ambiente (ex: process.env.SYRA_TOKEN)
  • Regenere a chave se suspeitar que foi comprometida
  • Nunca forneça seu token por email ou chat

Usando com variáveis de ambiente

Usando com variáveis de ambiente

// .env
SYRA_TOKEN=sk_live_gvegb1856fvev4eve5v4

// app.js
const syra = createSyra({
  token: process.env.SYRA_TOKEN  // Nunca exponha diretamente
});

Filosofia SyraOS: Rápida, Inteligente, Simples e Extensível

Sem boilerplate. Sem configuração complexa. Apenas: syra.qualquerCoisa({ dados }) com seu token configurado uma única vez.

Como usar os SDKs (v2.2.0)

Escolha a linguagem que você usa e siga o guia. Em todas elas, o token é obrigatório e incluído automaticamente em TODAS as requisições.

TypeScript (Totalmente tipado)

Melhor para: Projetos grandes com type-safety, IDE autocomplete, e melhor experiência de desenvolvimento.

import { createSyra } from "./syraos.ts";

// 1. Inicializar com token
const api = createSyra({
  baseURL: "https://api.syradevops.com",
  token: "sk_live_xxxxx",  // Obrigatório
  debug: true
});

// 2. Usar qualquer rota (token incluído automaticamente)
const models = await api.v1.models();
const chat = await api.chat({ message: "Olá!" });
const embedding = await api.embeddings({ input: "texto" });

JavaScript (ES6 moderno)

Melhor para: React, Next.js, Node.js, qualquer ambiente JavaScript moderno.

import { createSyra } from "./syraos.js";

// 1. Inicializar com token
const api = createSyra({
  token: process.env.SYRA_TOKEN,  // Obrigatório (recomendado: variável de ambiente)
  debug: true
});

// 2. Usar qualquer rota (token incluído automaticamente)
await api.models();
await api.chat({ message: "Olá!" });
await api.minds.create({ name: "meu-agente" });

Python (Pythônico)

Melhor para: Scripts, automação, data science, backends Python.

from syraos import Syra
import os

# 1. Inicializar com token
api = Syra(
    base_url="https://api.syradevops.com",
    token=os.getenv("SYRA_TOKEN")  # Obrigatório (recomendado: variável de ambiente)
)

# 2. Usar qualquer rota (token incluído automaticamente)
models = api.models()
chat = api.chat({"message": "Olá!"})
embedding = api.embeddings({"input": "texto"})

Exemplos práticos

Listar modelos

const models = await api.v1.models();
// Token enviado automaticamente
console.log(models);

Fazer uma requisição

const res = await api.chat({
  message: "Como você está?",
  context: { user_id: "123" }
});
// Token enviado automaticamente

Embeddings

const embedding = await api.embeddings({
  input: "Vetorize este texto",
  model: "syra-embed"
});
// Token enviado automaticamente

Executar Mind (Agente)

const result = await api.v1.agents.run({
  mind_id: "meu-bot",
  input: { msg: "Olá" }
});
// Token enviado automaticamente

📥 Baixe os SDKs: Todos estão disponíveis em Downloads (v2.2.0)

Incluso: TypeScript, JavaScript, Python, README e exemplos prontos para usar.

SyraOS por nível

Escolha o plano que melhor se encaixa no seu projeto.

Starter

Agora disponível

Ideal para:

  • ✔ Protótipos
  • ✔ MVPs
  • ✔ Desenvolvimento
  • ✔ Testes
const api = createSyra({ 
  token: "sk_live_..." 
});

await api.chat({ message: "Olá" })

Incluso: Core funcional, 3 linguagens, debug básico

Enterprise (v4.0)

Fim do ano

Ideal para:

  • ✔ Startups de IA
  • ✔ Plataformas complexas
  • ✔ Observabilidade crítica
  • ✔ Teams distribuídas
const api = createSyra({
  plugins: [cache(), metrics()],
  observability: { APM: true }
});

await api.ai.smart("top clientes")

Superpoderes: IA auto-queries, Plugins, Observability 360°

Diferenciais principais

Zero boilerplate

Sem classes, sem factory patterns, sem imports complexos. Apenas: syra.qualquerCoisa({ dados })

Proxy dinâmico

Novas rotas na API? Seu código continua funcionando automaticamente. Zero mudanças no SDK.

Query complexa

Arrays, objetos nested, valores complexos. Tudo convertido automaticamente pra query string correta.

Multiplataforma

TypeScript, JavaScript, Python. Com exemplos reais pra cada um. Não é só "suportamos" — mostramos como.

Roadmap

v2.0 ( Starter)

✔ Agora
• Core Proxy funcional
• 3 linguagens
• Debug básico
• Production-ready

v3.0 ( Pro)

⏳ Próximo trimestre
• Tipagem automática
• Interceptors/Middlewares
• Retry + Timeout
• Debug avançado

v4.0 ( Enterprise)

⏳ Fim do ano
• IA gerando queries
• Plugin system
• Observabilidade 360°
• CLI pra gerar tipos

Beyond ( Future)

⏳ Ideias avançadas
• Cache distribuído
• GraphQL support
• Webhooks automáticos
• Analytics integradas

Exemplos práticos por caso de uso

React com hooks

import { useSyraChat } from "@/hooks/useSyraChat";

export default function Chat() {
  const { chat, loading } = useSyraChat();
  
  const handleSend = async (msg) => {
    const res = await chat(msg);
    console.log(res.content);
  };

  return (
    <button onClick={() => handleSend("Olá!")} disabled={loading}>
      {loading ? "..." : "Chat"}
    </button>
  );
}

Node.js com TypeScript

import { createSyra } from "syraos";

const api = createSyra({
  token: process.env.SYRA_API_KEY,
  debug: true
});

async function processOrders() {
  const orders = await api.orders.list({ status: "pending" });
  
  for (const order of orders) {
    const analysis = await api.analyze({ data: order });
    console.log(`Order ${order.id}: ${analysis.summary}`);
  }
}

processOrders();

Python para scripts

from syraos import Syra

api = Syra(token="sk_live_...", debug=True)

# Batch processing
users = api.users.list({"status": "active"})

for user in users['data']:
  result = api.analyze({"input": user['data']})
  print(f"User {user['id']}: {result['score']}")

Recursos premium (Plano Scale)

Desbloqueie novos poderes para seus Minds.

Visão Computacional (Sory Vision)

Analise imagens, documentos e vídeos com IA. OCR avançado, detecção de objetos, classificação e análise de frames.

const api = createSyra({ token: "sk_live_..." });

// Analisar imagem de nota fiscal
const receipt = await api.vision.analyze({
  image_url: "https://...",
  task: "extract_text",
  format: "json"
});

console.log(receipt.items); // Itens da nota com valores

Syra Bridge (Conexão Segura)

Conecte seus dados locais à Syra Cloud sem expor IPs. Criptografia end-to-end para PostgreSQL, MySQL, MongoDB.

// Configurar túnel seguro
const bridge = api.bridge.create({
  name: "db_producao",
  type: "postgresql",
  host: "localhost",
  port: 5432,
  database: "erp_main"
  // Credenciais nunca saem de sua rede
});

// Usar no seu Mind
const data = await api.minds.query({
  mind: "analise_financeira",
  database: "db_producao",
  query: "SELECT * FROM invoices WHERE status = 'pending'"
});

Frameworks IoT (Deploy em Hardware)

Embarque Minds em Raspberry Pi, sensores industriais e robôs com suporte a MQTT e WebSockets.

// Deploy em Raspberry Pi via MQTT
const iot = api.iot.deploy({
  mind: "sensor_monitor",
  platform: "arm64", // ou arm32
  protocol: "mqtt",
  broker: "mqtt://broker.local",
  topic: "sensors/temperature/+"
});

// Seu Mind rodará localmente
// Se precisar, escalará pra Syra Cloud automaticamente

Ambientes Exclusivos + Eventos

Acesso a staging/production isolados, eventos Syra com seal VIP e suporte dedicado.

// Alternar entre ambientes
const apiProd = createSyra({ 
  token: "sk_live_...",
  environment: "production"
});

const apiStaging = createSyra({ 
  token: "sk_live_...",
  environment: "staging"
});

// Ambientes são 100% isolados
// Teste livremente antes de ir pro prod

Quer usar esses recursos? Upgrade para o plano Scale (R$ 99,90/mês) e desbloqueie tudo!

Ver detalhes do Scale

Após assinar: Seu kit de boas-vindas

Email de confirmação por syradevops@gmail.com

Assim que você confirmar a compra, nossa equipe enviará um email automático de syradevops@gmail.com contendo:

Seu API Token

Chave única formato sk_live_xxxxx para autenticar via SyraOS SDK

Painel personalizado

Link direto para seu dashboard com configurações, uso em tempo real e histórico

📚 Docs personalizadas

Exemplos de código já com seu token pré-preenchido (JS, Python, TypeScript)

Guia de início rápido

4 passos para fazer seu primeiro request em minutos

⚠️ Segurança: Sempre verifique que o email vem de syradevops@gmail.com. Nunca compartilhe seu token com terceiros.

Próximas etapas

Quer começar agora?

1. Crie sua conta (Starter ou Pro)
2. Gere sua API Key no dashboard
3. Instale: npm install syraos
4. Use: const api = createSyra({ token: "..." })

Ver planos Falar com time

Suporte e recursos

Precisa de ajuda?

Entre em contato com nosso time de suporte prioritário (plano Pro).

Falar com suporte

Downloads dos SDKs

Acesse a página de downloads para obter SyraOS e outras ferramentas.

Ver downloads

Se preferir integração direta sem SDK, use os endpoints REST abaixo.

Autenticação via Bearer Token

curl -X GET https://api.syracloud.com/v1/models \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json"

Endpoints principais

GET /v1/models

Listar modelos disponíveis

POST /v1/completions

Gerar texto com prompt

POST /v1/embeddings

Converter texto em embedding

POST /v1/agents/run

Executar um Mind/agente

Exemplo com completions

curl -X POST https://api.syracloud.com/v1/completions \
  -H "Authorization: Bearer sk_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "sory-1.5",
    "messages": [
      {"role": "user", "content": "Olá!"}
    ],
    "max_tokens": 100
  }'

Exemplos em diferentes linguagens

JavaScript (SyraOS)

import { createSyra } from "syraos";

const api = createSyra({
  token: "sk_live_YOUR_KEY"
});

// Completions
const chat = await api.completions({
  model: "sory-1.5",
  messages: [{ role: "user", content: "Olá!" }]
});

console.log(chat.choices[0].message.content);

Python (SyraOS)

from syraos import Syra

api = Syra(token="sk_live_YOUR_KEY")

# Completions
chat = api.completions(
  model="sory-1.5",
  messages=[{"role": "user", "content": "Olá!"}]
)

print(chat['choices'][0]['message']['content'])

TypeScript (SyraOS com tipos)

import { createSyra } from "syraos";

const api = createSyra({
  token: "sk_live_YOUR_KEY",
  debug: true
});

interface ChatRequest {
  model: string;
  messages: Array<{ role: string; content: string }>;
}

const res: ChatRequest = await api.completions({
  model: "sory-1.5",
  messages: [{ role: "user", content: "Olá!" }]
});

Suporte e recursos

Precisa de ajuda?

Entre em contato com nosso time de suporte prioritário (plano Pro).

Falar com suporte

Downloads dos SDKs

Acesse a página de downloads para obter SyraOS e outras ferramentas.

Ver downloads