API Externa
A API externa permite que programas acessem ou acionem as funcionalidades do UMS com uma chamada HTTP.
Como ativar a API Externa
Edite o arquivo UMS.conf e configure uma "api_key" assim:
api_key = senha_secreta
A senha_secreta deve conter um número mínimo de 12 caracteres.
Uso da API
Se a API Externa estiver habilitada, a API estará acessível com uma chamada POST para o endereço /api/COMMAND
Escaneamento das pastas
rescan
| Intenção | Escanear novamente a biblioteca de mídia completa |
|---|---|
| URI | /api/folderscanner/rescan |
| POST BODY | NONE |
| POST BODY exemplo / descrição | Este comando não necessita de conteúdo no BODY |
| Disponível desde | 10.4.2 |
:::Informação Este comando pode ser bem lento para bibliotecas de mídia grandes :::
Exemplo:
curl -w "%{http_code}\n" -H "api-key: senha_secreta" http://localhost:5001/api/folderscanner/rescan
re-escanear arquivo ou pasta
| Intenção | Escanear novamente uma subárvore parcial do sistema de arquivos. |
|---|---|
| URI | /api/folderscanner/rescanFileOrFolder |
| POST BODY | CAMINHO_PARA_ESCANEAR |
| POST BODY exemplo / descrição | exemplo: "/music/pop/Madonna". O caminho deve ser a raiz da pasta ou uma subpasta de um caminho compartilhado. |
| Disponível desde | 10.4.2 |
Exemplo:
curl -d "CAMINHO_PARA_ESCANEAR" -w "%{http_code}\n" -H "api-key: senha_secreta" -X POST http://localhost:5001/api/folderscanner/rescanFileOrFolder
Curtindo Músicas (álbuns e músicas)
like song
A música será marcada como curtida.
| Intenção | Curtir uma música identificada por um trackId do musicBrainz |
|---|---|
| URI | <span class="s1">/api/like/likesong</span> |
| POST BODY | musicBrainz_trackID |
| POST BODY exemplo / descrição | b8695995-45e9-405d-b4aa-e50e8760fe25 |
| Disponível desde | 10.20 |
Exemplo:
curl -d "b8695995-45e9-405d-b4aa-e50e8760fe25" -w "%{http_code}\n" -H "api-key: secret_password" -X POST http://localhost:5001/api/like/likesong
Descurtir uma música
A música será descurtida
| Intenção | Descurtir uma música identificada pelo trackId do musicBrainz |
|---|---|
| URI | <span class="s1">/api/like/</span>dislikesong |
| POST BODY | musicBrainz_trackID |
| POST BODY exemplo / descrição | b8695995-45e9-405d-b4aa-e50e8760fe25 |
| Disponível desde | 10.20 |
Exemplo:
curl -d "b8695995-45e9-405d-b4aa-e50e8760fe25" -w "%{http_code}\n" -H "api-key: secret_password" -X POST http://localhost:5001/api/like/dislikesong
É uma música curtida
Checar se uma música foi curtida.
| Intenção | Checar se uma música foi curtida identificada pelo trackId do musicBrainz |
|---|---|
| URI | <span class="s1">/api/like/</span><span class="s1">issongliked</span> |
| POST BODY | musicBrainz_trackID |
| POST BODY exemplo / descrição | b8695995-45e9-405d-b4aa-e50e8760fe25 |
| RESPONSE BODY | VERDADEIRO ou FALSO |
| Disponível desde | 10.20 |
Exemplo:
curl -d "b8695995-45e9-405d-b4aa-e50e8760fe25" -w "%{http_code}\n" -H "api-key: secret_password" -X POST http://localhost:5001/api/like/issongliked
Esta chamada acrescenta o atributo curtido do álbum identificado pelo release-id do musicBrainz 1e0eee38-a9f6-49bf-84d0-45d0647799af.
Curtir um álbum
Definir o estado de curtido de um álbum para verdadeiro.
| Intenção | Curtir um álbum identificado pelo releaseId do musicBrainz |
|---|---|
| URI | <span class="s1">/api/like/</span>likealbum |
| POST BODY | musicBrainz_releaseID |
| POST BODY exemplo / descrição | 1e0eee38-a9f6-49bf-84d0-45d0647799af |
| Disponível desde | 10.20 |
Exemplo:
curl -d "1e0eee38-a9f6-49bf-84d0-45d0647799af" -w "%{http_code}\n" -H "api-key: secret_password" -X POST http://localhost:5001/api/like/likealbum