Documentação Api Auth

GET /api/request-code/{CLIENT_ID}?authcode={AUTH_CODE} Requisição de Código de Autenticação

Parâmetros da URL

CLIENT_IDobrigatórioCódigo de autorização do cliente.
Composto de 10 dígitos alfanumérico. Ex: 5745819-11
AUTH_CODECódigo de autorização de uma máquina da empresa.
Composto de 10 dígitos alfanumérico. Ex: 1912B5DD69
Se informado, clona a configuração para a nova estação.

200Sucesso

{
    "auth_code": "679664CF3F"
}

404Código de cliente não encontrado

{
    "message": "Código de cliente não encontrado"
}
POST /api/revoke-code/{AUTH_CODE} Cancela um Código de Autenticação

Parâmetros da URL

AUTH_CODEobrigatórioCódigo de autorização de uma máquina da empresa.
Composto de 10 dígitos alfanumérico. Ex: 1912B5DD69

200Sucesso

{
    "code": 200
}

404Estação não encontrada

{
    "message": "Estação não encontrada"
}

404Cliente não encontrado

{
    "message": "Cliente não encontrado"
}
GET /api/reset-auth-code/{AUTH_CODE}/{TARGET} Reseta Código de Autenticação

Parâmetros da URL

AUTH_CODEobrigatórioCódigo de autorização de uma máquina da empresa.
Composto de 10 dígitos alfanumérico. Ex: 1912B5DD69
TARGETobrigatórioAlvo do reset do código podendo ser: TOKEN, CONFIG, ALL.
TOKEN: reseta os Tokens do código, retornando um novo token e refresh token.
CONFIG: reseta as Configs do código, retornando a config padrão.
ALL: reseta os tokens e config.

Obs: se um TARGET fora de TOKEN, CONFIG ou ALL for enviado, o código atual não retorna um erro tratado (500 genérico do servidor).

200target: token

{
    "data": {
        "token": {
            "token": "A47649BDA7F3E05EF1E0EACB4CFFC4C8",
            "refresh_token": "554062E05D67C53EE323B49385B12FAF"
        }
    }
}

200target: config

{
    "data": {
        "config": {
            "local_config": false,
            "automatic_directory_management": false,
            "remove_musics": false,
            "remove_medias": false,
            "propagate_deletions": false,
            "optimize_verifications": true,
            "sync_interval": 1,
            "partial_sync_interval": 10,
            "complete_sync_interval": "04:00",
            "check_version_software": "03:00",
            "update_products": false,
            "has_password": false,
            "available_download": true,
            "available_upload": false
        },
        "token": {
            "token": "352CA7BF4128254F3933BAF665E23089",
            "refresh_token": "DC1861D815E18EF90AD7075B6A8D5B27"
        }
    }
}

200target: all

{
    "data": {
        "config": {
            "authorization_code": "5EDF2AE32E",
            "nickname": "POP-AR",
            "local_config": false,
            "automatic_directory_management": false,
            "type_root_path_automatic": "C",
            "root_path_automatic": "C",
            "remove_intruders": false,
            "propagate_deletions": false,
            "optimize_verifications": true,
            "sync_interval": 1,
            "partial_sync_interval": 10,
            "complete_sync_interval": "04:35",
            "check_version_software": "03:00",
            "update_products": false,
            "available_download": true,
            "available_upload": false,
            "has_password": false,
            "timezone": "America/Sao_Paulo",
            "trash": "",
            "upload_sync_parcial": true,
            "boot_with_system": true,
            "created": "2024-05-08T20:10:15-03:00",
            "modified": "2024-05-08T20:10:15-03:00",
            "id": 3857
        },
        "token": {
            "token": "69C22F60ABBF2964C1DCAA51B7BD4901",
            "refresh_token": "C8963469BD2C5CEE50226AA5DA7CDF2F"
        }
    }
}

404Estação não encontrada

{
    "message": "Estação não encontrada"
}

404Cliente não encontrado

{
    "message": "Cliente não encontrado"
}
GET /api/request-token/{AUTH_CODE} Requisição de Token

Parâmetros da URL

AUTH_CODEobrigatórioCódigo de autorização de uma máquina da empresa.
Composto de 10 dígitos alfanumérico. Ex: 1912B5DD69

200Sucesso

{
    "token": "4FFE2F70B6B915FD1C97B45EE9321377",
    "refresh_token": "CE57930462A7CC5553A45B2806CF36B3"
}

403Estação já possui token válido

{
    "message": "Esta estação já possui um token válido"
}

404Estação não encontrada

{
    "message": "Estação não encontrada."
}

404Cliente não encontrado

{
    "message": "Cliente não encontrado."
}
GET /api/request-infos/{CLIENT_ID} Requisição de Informações da Empresa

Parâmetros da URL

CLIENT_IDobrigatórioCódigo de autorização do cliente.
Composto de 10 dígitos alfanumérico. Ex: 5745819-11

200type: Afiliada (Start Radios)

{
    "data": {
        "name": "Rádio Lite",
        "type": "Afiliada (Start Radios)"
    }
}

200type: Assinante

{
    "data": {
        "name": "Rádio Assinante",
        "type": "Assinante"
    }
}

404Cliente não encontrado

{
    "message": "Cliente não encontrado"
}

404Rádio não encontrada

{
    "message": "Rádio não encontrada"
}
POST /api/set-infos/ Cadastra Informações

Parâmetros POST

client_idobrigatórioComposto de 10 dígitos alfanumérico. Ex: 5745819-11
auth_codeobrigatórioComposto de 10 dígitos alfanumérico. Ex: 1912B5DD69
nicknameobrigatórioApelido do PC que o Software foi instalado - Alfanumérico
serial_numberobrigatórioSerial Number do cadastro do software - Alfanumérico - Tamanho 06 caracteres
versionobrigatórioVersão do Software Instalado - Alfanumérico - Ex: 1.1.15

200Sucesso

{}

400invalid client_id

{
    "message": "invalid client_id"
}

400invalid auth_code

{
    "message": "invalid auth_code"
}

400invalid serial_number

{
    "message": "invalid serial_number"
}

400invalid nickname

{
    "message": "invalid nickname"
}

400invalid version

{
    "message": "invalid version"
}

404Client não encontrado

{
    "message": "Client não encontrado"
}

404Estação não encontrada

{
    "message": "Estação não encontrada"
}
POST /api/update-infos/ Atualiza Versão

Parâmetros POST

client_idobrigatórioComposto de 10 dígitos alfanumérico. Ex: 5745819-11
auth_codeobrigatórioComposto de 10 dígitos alfanumérico. Ex: 1912B5DD69
versionobrigatórioVersão do Software Instalado - Alfanumérico - Ex: 1.1.15

Obs: no código atual, a ausência do parâmetro version também retorna a mensagem "invalid auth_code" (erro 400), em vez de uma mensagem específica.

200Sucesso

{}

400invalid client_id

{
    "message": "invalid client_id"
}

400invalid auth_code

{
    "message": "invalid auth_code"
}

404Client não encontrado

{
    "message": "Client não encontrado"
}

404Estação não encontrada

{
    "message": "Estação não encontrada"
}
GET /api/revoke-token/{ACCESS_TOKEN} Cancela um Token

Parâmetros da URL

ACCESS_TOKENobrigatórioToken de acesso.
Composto de 32 dígitos alfanumérico. Ex: 4FFE2F70B6B915FD1C97B45EE9321377

200Sucesso

{}

404Token não encontrado

{
    "message": "Token não encontrado"
}

404Estação não encontrada

{
    "message": "Estação não encontrada"
}
GET /api/validate-token/{ACCESS_TOKEN} Validação de um Token

Parâmetros da URL

ACCESS_TOKENobrigatórioToken de acesso.
Composto de 32 dígitos alfanumérico. Ex: 4FFE2F70B6B915FD1C97B45EE9321377

200Sucesso

{
    "expires": "2017-05-02 18:33:21",
    "seconds_left": 91
}

403Forbidden — token expirado

{
    "message": "ApiAccessToken Error: token has expired"
}

404NotFound — AccessToken não encontrado

{
    "message": "AccessToken não encontrado."
}
GET /api/refresh-token/{REFRESH_TOKEN} Atualiza Token

Parâmetros da URL

REFRESH_TOKENobrigatórioRefresh Token.
Composto de 32 dígitos alfanumérico. Ex: 155232C4FC7CB530232A341A8D8221CC

200Sucesso

{
    "message": null,
    "token": "1DC55F89F14BAAAEDB06CEA79C3DDD17",
    "refresh_token": "155232C4FC7CB530232A341A8D8221CC",
    "code": 200
}

403Refresh token bloqueado

{
    "message": "refresh token bloqueado",
    "token": null,
    "refresh_token": null,
    "code": 403
}

404Código de autenticação não encontrado

{
    "message": "código de autenticação não encontrado",
    "token": null,
    "refresh_token": null,
    "code": 404
}

404Refresh token não encontrado

{
    "message": "refresh token não encontrado",
    "token": null,
    "refresh_token": null,
    "code": 404
}

404Token de destino não encontrado

{
    "message": "token de destino não encontrado.",
    "token": null,
    "refresh_token": null,
    "code": 404
}

500Atualização do código de autenticação falhou

{
    "message": "atualização do código de autenticação falhou",
    "token": null,
    "refresh_token": null,
    "code": 500
}
GET /api/scopes-token/{ACCESS_TOKEN}/{SCOPE_TYPE} Escopos Disponíveis do Token

Parâmetros da URL

ACCESS_TOKENobrigatórioToken de acesso.
Composto de 32 dígitos alfanumérico. Ex: 4FFE2F70B6B915FD1C97B45EE9321377
SCOPE_TYPEobrigatórioTipo dos Escopos requisitados.
Tipos de Escopos Disponíveis: DOWNLOAD, UPLOAD, DELETE, NOTIFICATION, READ, CONFIGURATION

200Sucesso

{
    "message": null,
    "scopes": "{\u0022MUSICS\u0022:\u0022Musicas\u0022}",
    "code": 200
}

500Falha ao buscar escopos

{
    "message": "falha ao buscar escopos.",
    "scopes": null,
    "code": 500
}
GET /api/busca-config/{AUTH_CODE} Busca Configurações da Estação

Parâmetros da URL

AUTH_CODEobrigatórioCódigo de autorização de uma máquina da empresa.

200Sucesso

{
    "status": "success",
    "code": 200,
    "data": {
        "local_config": true,
        "automatic_directory_management": false,
        "remove_intruders": true,
        "propagate_deletions": false,
        "optimize_verifications": false,
        "sync_interval": 1,
        "partial_sync_interval": 0,
        "complete_sync_interval": "00:00",
        "update_products": false,
        "has_password": false,
        "available_download": true,
        "available_upload": true,
        "check_version_software": "03:00",
        "timezone": "America/Sao_Paulo",
        "nickname": "desenvolvedor"
    }
}

500Estação não encontrada

{
    "status": "error",
    "code": 500,
    "message": "estação não encontrada"
}
POST /api/atualiza-config-sync/{AUTH_CODE} Atualiza Configurações da Estação

Parâmetros da URL

AUTH_CODEobrigatórioCódigo de autorização de uma máquina da empresa.

Parâmetros POST

automatic_directory_managementobrigatório(boolean)
remove_musicsobrigatório(boolean)
remove_mediasobrigatório(boolean)
propagate_deletionsobrigatório(boolean)
optimize_verificationsobrigatório(boolean)
partial_sync_intervalobrigatório(integer)
complete_sync_intervalobrigatório(string, formato HH:mm)
nicknameobrigatório(string)

200Sucesso

{
    "status": "success",
    "code": 200,
    "message": "As configurações foram atualizadas com sucesso."
}

500Estação não encontrada

{
    "status": "error",
    "code": 500,
    "message": "estação não encontrada"
}
POST /api/compara-senha-sync/{AUTH_CODE} Validação da senha da estação do Sync

Parâmetros da URL

AUTH_CODEobrigatórioCódigo de autorização de uma máquina da empresa.

Parâmetros POST

passwordobrigatório(string)

200Sucesso

{
    "status": "success",
    "code": 200,
    "message": null
}

500Estação não encontrada

{
    "status": "error",
    "code": 500,
    "message": "estação não encontrada"
}

500Senha não informada

{
    "status": "error",
    "code": 500,
    "message": "senha não informada"
}

500Senha não encontrada

{
    "status": "error",
    "code": 500,
    "message": "senha não encontrada"
}

500Senha não coincide

{
    "status": "error",
    "code": 500,
    "message": "Desculpe a senha informada não coincide."
}
GET /api/authorize/{RESPONSE_TYPE}.{CLIENT_ID} Autoriza a geração de um novo Código de Autenticação

Parâmetros da URL

RESPONSE_TYPEobrigatórioTipo de resposta esperado (uso interno/legado).
CLIENT_IDobrigatórioCódigo de autorização do cliente.
Composto de 10 dígitos alfanumérico. Ex: 5745819-11

200Sucesso

{
    "message": null,
    "auth_code": "1912B5DD69",
    "code": 200
}

404Nenhum código de autenticação encontrado

{
    "message": "nenhum código de autenticação encontrado",
    "auth_code": null,
    "code": 404
}
GET /api/generate-token/{AUTH_CODE}/{DATE} Geração de Token (uso interno)

Parâmetros da URL

AUTH_CODEobrigatórioCódigo de autorização de uma máquina da empresa.
Composto de 10 dígitos alfanumérico. Ex: 1912B5DD69
DATEobrigatórioSegmento obrigatório na URL. Data base para o cálculo da expiração do token; envie o literal "undefined" para usar o padrão (agora + 30 minutos).

200Sucesso

{
    "message": null,
    "token": "4FFE2F70B6B915FD1C97B45EE9321377",
    "refresh_token": "CE57930462A7CC5553A45B2806CF36B3",
    "code": 200
}

404Código de autenticação inválido

{
    "message": "código de autenticação inválido",
    "token": null,
    "code": 404
}

500Geração do token falhou

{
    "message": "geração do token falhou",
    "token": null,
    "refresh_token": null,
    "code": 500
}
POST /api/set-force-sync/{AUTH_CODE}/{TYPE} Força Sincronização

Parâmetros da URL

AUTH_CODEobrigatórioCódigo de autorização de uma máquina da empresa.
TYPETipo de sincronização a ser forçada: "complete" (padrão) ou "parcial".

200Sucesso

{
    "code": 200
}

404Parâmetro não encontrado

{
    "message": "Parâmetro não encontrados",
    "code": 404
}

500Falha ao tentar forçar uma sincronização

{
    "message": "falha ao tentar forçar uma sincronização",
    "code": 500
}
GET /api/scheduled-tasks/{AUTH_CODE}?type={TYPE} Verifica Agendamento de Tarefas

Parâmetros da URL

AUTH_CODEobrigatórioCódigo de autorização de uma máquina da empresa.
TYPEEnvie "syncplay" para consultar as tarefas do Syncplay. Se omitido, retorna as tarefas padrão do sync.

Obs: quando o parâmetro de query type=syncplay é informado, as tarefas retornadas são: reload_next_position, reload_now e update_software_syncplay.

200Sucesso

{
    "code": 200,
    "tasks": {
        "force_sync_parcial": {
            "active": true,
            "scheduled": "08/11/2018 00:15:00"
        },
        "force_sync_complete": {
            "active": false,
            "scheduled": false
        },
        "set_directories": {
            "active": false,
            "scheduled": false
        },
        "get_configs": {
            "active": false,
            "scheduled": false
        },
        "set_configs": {
            "active": false,
            "scheduled": false
        },
        "check_version_software": {
            "active": false,
            "scheduled": false
        },
        "update_updater_software": {
            "active": false,
            "scheduled": false
        }
    }
}

404Parâmetro não encontrado

{
    "message": "Parâmetro não encontrados",
    "code": 404
}

500Código não encontrado

{
    "message": "Código não encontrado.",
    "code": 500
}
POST /api/confirm-scheduled-task/ Confirma a Execução de uma Tarefa Agendada

Parâmetros POST

auth_codeobrigatórioCódigo de autorização de uma máquina da empresa.
taskobrigatórioNome da tarefa cuja execução está sendo confirmada.

200Sucesso

{
    "code": 200
}

400Falha ao atualizar a última conexão

{
    "message": "Não foi possivel atualizar a ultima conexão.",
    "code": 400
}

404Parâmetro não encontrado

{
    "message": "Parâmetro não encontrados",
    "code": 404
}

404Código não encontrado

{
    "message": "Código não encontrado.",
    "code": 404
}

500Task não informada

{
    "message": "Task não informada.",
    "code": 500
}
POST /api/set-sync-online/ Estação Online

Parâmetros POST

auth_codeobrigatórioCódigo de autorização de uma máquina da empresa.

Obs: no código atual, o retorno final é sempre 200 (sucesso) ou 500 (erro genérico); mesmo quando auth_code não é informado, a mensagem de erro específica não chega a ser retornada ao cliente.

200Sucesso

{
    "code": 200
}

500Erro genérico

{
    "message": "error",
    "code": 500
}