Programações
Acesse suas programações de exibição (programação) que definem quando e onde o conteúdo é exibido.
Escopo Necessário: schedules:read
Listar Programações
Recupera todas as programações do seu tenant.
GET /api/external/schedulesParâmetros de Query
| Parâmetro | Tipo | Padrão | Descrição |
|---|---|---|---|
status | string | - | Filtrar por status: active, inactive |
Exemplo de Requisição
curl -X GET "https://api.efflux.media/api/external/schedules?status=active" \ -H "X-API-Key: SUA_API_KEY"const response = await fetch( 'https://api.efflux.media/api/external/schedules?status=active', { headers: { 'X-API-Key': 'SUA_API_KEY' } });const schedules = await response.json();import requests
response = requests.get( 'https://api.efflux.media/api/external/schedules', headers={'X-API-Key': 'SUA_API_KEY'}, params={'status': 'active'})schedules = response.json()Resposta
[ { "id": 1, "name": "Promoções da Manhã", "description": "Conteúdo promocional para horário da manhã", "status": "active", "orientation": "landscape", "validFrom": "2024-01-01T00:00:00Z", "validUntil": "2024-12-31T23:59:59Z", "startAt": "06:00", "endAt": "12:00", "priority": 100, "daysOfWeek": ["MON", "TUE", "WED", "THU", "FRI"], "playerIds": [ "550e8400-e29b-41d4-a716-446655440000", "550e8400-e29b-41d4-a716-446655440001" ], "contentIds": [ "660e8400-e29b-41d4-a716-446655440000", "660e8400-e29b-41d4-a716-446655440001", "660e8400-e29b-41d4-a716-446655440002" ], "estados": ["SP", "RJ"], "contentCount": 3, "createdAt": "2024-01-10T08:00:00Z", "updatedAt": "2024-01-15T14:30:00Z" }]Objeto de Programação
| Campo | Tipo | Descrição |
|---|---|---|
id | inteiro | Identificador único |
name | string | Nome da programação |
description | string | Descrição opcional |
status | string | active ou inactive |
orientation | string | Orientação do conteúdo: landscape ou portrait |
validFrom | datetime | Início do período de validade |
validUntil | datetime | Fim do período de validade |
startAt | string | Horário de início diário (formato HH:mm) |
endAt | string | Horário de fim diário (formato HH:mm) |
priority | inteiro | Nível de prioridade (maior = mais importante) |
daysOfWeek | string[] | Dias da semana ativos |
playerIds | UUID[] | Lista de IDs de players associados |
contentIds | UUID[] | Lista de IDs de conteúdo na playlist |
estados | string[] | Códigos de estados brasileiros (ex: SP, RJ) |
contentCount | inteiro | Número de itens de conteúdo |
createdAt | datetime | Timestamp de criação |
updatedAt | datetime | Timestamp da última atualização |
Dias da Semana
Os dias são representados como códigos de três letras:
| Código | Dia |
|---|---|
MON | Segunda-feira |
TUE | Terça-feira |
WED | Quarta-feira |
THU | Quinta-feira |
FRI | Sexta-feira |
SAT | Sábado |
SUN | Domingo |
Prioridade de Programação
Quando múltiplas programações podem se aplicar a um player ao mesmo tempo, a que tiver maior prioridade prevalece.
Janelas de Tempo
Programações podem ser restritas por:
- Intervalo de datas:
validFromevalidUntildefinem o período geral de validade - Horário diário:
startAteendAtdefinem quando o conteúdo é exibido a cada dia - Dias da semana:
daysOfWeekespecifica quais dias estão ativos
Uma programação está ativa quando todas as três condições são atendidas.
Exemplo: Horário Comercial em Dias Úteis
{ "validFrom": "2024-01-01T00:00:00Z", "validUntil": "2024-12-31T23:59:59Z", "startAt": "09:00", "endAt": "18:00", "daysOfWeek": ["MON", "TUE", "WED", "THU", "FRI"]}Esta programação está ativa de segunda a sexta, das 9h às 18h, durante todo o ano de 2024.
Segmentação Geográfica
O campo estados permite segmentar estados brasileiros específicos usando códigos UF padrão:
{ "estados": ["SP", "RJ", "MG"]}