API

Referência da API do Speco.

Visão Geral

O Speco expõe uma API RESTful para integração com outros sistemas. A API segue os padrões do Tryton e permite acesso programático às funcionalidades do sistema.

Autenticação

A autenticação é feita via sessão do Tryton. Os endpoints da API requerem um cookie de sessão válido obtido através do login.

Endpoints Principais

Core API

  • GET /speco/core - Listar núcleos

  • POST /speco/core - Criar núcleo

  • GET /speco/core/{id} - Obter núcleo específico

  • PUT /speco/core/{id} - Atualizar núcleo

  • DELETE /speco/core/{id} - Excluir núcleo

Group API

  • GET /speco/group - Listar grupos

  • POST /speco/group - Criar grupo

  • GET /speco/group/{id} - Obter grupo específico

  • PUT /speco/group/{id} - Atualizar grupo

Production Entity API

  • GET /speco/production_entity - Listar entidades de produção

  • POST /speco/production_entity - Criar entidade de produção

  • GET /speco/production_entity/{id} - Obter entidade específica

Family API

  • GET /speco/family - Listar famílias

  • POST /speco/family - Criar família

  • GET /speco/family/{id} - Obter família específica

Certification API

  • GET /speco/certification - Listar certificações

  • POST /speco/certification - Criar certificação

  • GET /speco/certification/{id} - Obter certificação específica

Annuity API

  • GET /speco/annuity - Listar anualidades

  • POST /speco/annuity - Criar anualidade

  • GET /speco/annuity/{id} - Obter anualidade específica

Exemplos de Uso

Obter lista de núcleos:

GET /speco/core
Cookie: session_id=abc123

Response:
[
  {
    "id": 1,
    "name": "Núcleo Porto Alegre",
    "code": "PA001",
    "state": "active"
  },
  {
    "id": 2,
    "name": "Núcleo Curitiba",
    "code": "CT001",
    "state": "active"
  }
]

Criar um novo núcleo:

POST /speco/core
Content-Type: application/json
Cookie: session_id=abc123

{
  "name": "Núcleo Florianópolis",
  "code": "FL001",
  "country": "BR"
}

Erros Comuns

  • 401 Unauthorized - Sessão inválida ou expirada

  • 403 Forbidden - Permissões insuficientes

  • 404 Not Found - Recurso não encontrado

  • 500 Internal Server Error - Erro interno do servidor

Para mais informações sobre a API do Tryton, consulte: https://docs.tryton.org/