Pular para o conteúdo
Produtos

Início rápido da HTTP API

O Alta oferece uma HTTP API com requisições e respostas em JSON. A interface web usa a mesma API. Este artigo mostra como fazer login e ler o status da aplicação e do host.

  • As requisições vão para o API Server (porta padrão 8100), não para o OTT Server. Saiba mais em Servidor HTTP.
  • Você precisa de um usuário da interface web do Alta. Saiba mais em Usuários.

A API suporta dois métodos:

  • Bearer token: obtenha um token com /api/login e envie-o no cabeçalho Authorization: Bearer <token>.
  • HTTP Basic: envie o login e a senha do usuário em cada requisição.

Fazer login:

Terminal window
curl -sS -X POST 'http://alta.example.com:8100/api/login' \
-H 'Content-Type: application/json' \
-d '{"id": "admin", "password": "PASSWORD"}'

A resposta é o token em texto simples.

Use o token nas próximas requisições:

Terminal window
curl -sS -H "Authorization: Bearer $TOKEN" 'http://alta.example.com:8100/api/about'
Terminal window
GET /api/about

Resposta:

{
"service_name": "alta",
"version": {
"version": "261020",
"commit": "349de372",
"build": 1638139770
},
"runtime": {
"instance_id": "8b1f6c3e-6a52-4c0e-9d1a-5f2f2a0c9e11",
"uptime": 86400
}
}
  • service_name: nome do serviço.
  • version: versão, commit e build do Alta.
  • runtime.instance_id: identificador único da instância do Alta.
  • runtime.uptime: tempo de atividade da aplicação em segundos.
Terminal window
GET /api/status

Resposta:

{
"host": {
"cpu": { "usage_percent": 12.5, "load_avg": [0.4, 0.5, 0.6], "cores": 8 },
"mem": { "total_bytes": 16777216000, "used_bytes": 4294967296, "available_bytes": 12482248704 }
},
"storages": [
{
"name": "archive",
"path": "/var/lib/alta/archive",
"total_bytes": 1000000000000,
"used_bytes": 250000000000,
"free_bytes": 750000000000
}
]
}
  • host.cpu: uso de CPU em porcentagem, carga média de 1, 5 e 15 minutos e número de núcleos.
  • host.mem: memória total, usada e disponível em bytes.
  • storages: nome, caminho e espaço total, usado e livre em bytes de cada Armazenamento.
  • 401 Unauthorized: sem token, ou o token é inválido ou expirou.
  • 403 Forbidden: o papel do usuário não permite a requisição.
  • Requisições de um único item, como um canal ou um receptor, usam o parâmetro de consulta id. Por exemplo, /api/ott/channel/storage/preview?id=discovery/hd. Leia um exemplo completo em Preview API.