API Externa
A API externa permite que programas acedam ou acionem funcionalidades UMS com um pedido HTTP.
Como ativar a API externa
Editar UMS.conf e configurar uma api_key como esta
api_key = palavra_passe
A secret_password
deve ter no mínimo 12 caracteres.
Utilização da API
Se a API externa estiver ativada, a API estará acessível através de um pedido POST para /api/COMMAND
Procurar em Pastas
Pesquisar novamente
Intenção | Verificar toda a biblioteca. |
---|---|
URI | /api/folderscanner/rescan |
CAIXA DE PUBLICAÇÃO | NENHUM |
POST BODY exemplo / descrição | Este comando não precisa de corpo no pedido |
Disponível desde | 10.4.2 |
Isto pode ser lento para bibliotecas grandes
Exemplo:
curl -w "%{http_code}\n" -H "api-key: secret_password" http://localhost:5001/api/folderscanner/rescan
Pesquisar novamente ficheiro ou pasta
Intenção | Verificar parte do sistema de ficheiros. |
---|---|
URI | /api/folderscanner/rescanFileOrFolder |
CAIXA DE PUBLICAÇÃO | CAMINHO_PARA_PESQUISA |
POST BODY examplo / descrição | exemplo: "/music/pop/Madonna". O caminho deve ser a raiz ou uma subpasta de um caminho partilhado. |
Disponível desde | 10.4.2 |
Exemplo:
Gostos em Músicas (Álbuns e Canções)
Gostar da música
A música será marcada com Gosto.
Intenção | Colocar gosto numa música identificada pelo trackId da musicBrainz. |
---|---|
URI | <span class="s1">/api/like/likesong</span> |
CAIXA DE PUBLICAÇÃO | musicBrainz_trackID |
POST BODY examplo / 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
Não gostar a música
Música deixará de estar marcada com Gosto.
Intenção | Retirar gosto numa música identificada pelo trackId da musicBrainz. |
---|---|
URI | <span class="s1">/api/like/</span>dislikesong |
CAIXA DE PUBLICAÇÃO | musicBrainz_trackID |
POST BODY examplo / 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
Gostaram da música
Verificar se gostaram da música.
Intenção | Verificar se gostaram da música identificada por musicBrainz trackId |
---|---|
URI | <span class="s1">/api/like/</span><span class="s1">issongliked</span> |
CAIXA DE PUBLICAÇÃO | musicBrainz_trackID |
CAIXA DE PUBLICAÇÃO exemplo/descrição | b8695995-45e9-405d-b4aa-e50e8760fe25 |
CAIXA DE RESPOSTA | TRUE or FALSE |
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 escolha adiciona o atributo gostado do álbum identificado por musicbrainz release-id 1e0eee38-a9f6-49bf-84d0-45d0647799af
.
Gostar do álbum
Define o estado do álbum como true.
Intenção | Colocar gosto num álbum identificado pelo trackId da musicBrainz. |
---|---|
URI | <span class="s1">/api/like/</span>likealbum |
CAIXA DE PUBLICAÇÃO | musicBrainz_releaseID |
1e0eee38-a9f6-49bf-84d0-45d0647799af | |
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
Não gostar do álbum
Remover gostar do estado do álbum.
Intenção | Remover gosto numa música identificada pelo trackId da musicBrainz. |
---|---|
URI | <span class="s1">/api/like/</span>dislikealbum |
CAIXA DE PUBLICAÇÃO | musicBrainz_releaseID |
CAIXA DE PUBLICAÇÃO 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/dislikealbum
Esta escolha adiciona o atributo gostado do álbum identificado por musicbrainz release-id 1e0eee38-a9f6-49bf-84d0-45d0647799af
.
é um álbum com gosto
Verificar o estado de gosto do álbum
Intenção | Verificar se o álbum tem gosto identificado por musicBrainz trackId |
---|---|
URI | <span class="s1">/api/like/</span>isalbumliked |
CAIXA DE PUBLICAÇÃO | musicBrainz_releaseID |
CAIXA DE PUBLICAÇÃO exemplo/descrição | 1e0eee38-a9f6-49bf-84d0-45d0647799af |
CAIXA DE RESPOSTA | "TRUE" or "FALSE" |
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/isalbumliked
Esta opção verifica se o álbum identificado por musicbrainz release-id 1e0eee38-a9f6-49bf-84d0-45d0647799af
está com gosto.
Classificação
A API de avaliação é responsável pela avaliação de músicas. Informações de avaliação são guardadas no base de dados interna (cache habilitado) e, opcionalmente, no próprio arquivo. Se oaudio_update_rating_tag = true
estiver definido no UMS. o campo de classificação conf IDv3 também está a ser actualizado no arquivo de música (se o formato do arquivo de músicas for suportado).
Ao navegar pelo servidor de directório de conteúdo, MusicBrainzTrackID (se disponível) e audiotrackID são disponibilizados como metadados desc
dentro do elemento DIDL.
Defina a classificação
Intenção | Classificar com estrelas (0 - 5) uma música identificada pelo trackId do musicBrainz |
---|---|
URI | <span class="s1">/api/</span><span class="s1">rating/setrating</span> |
CAIXA DE PUBLICAÇÃO | musicbrainzTrackId /stars |
CAIXA DE PUBLICAÇÃO exemplo/descrição | b8695995-45e9-405d-b4aa-e50e8760fe25/3 |
Disponível desde | 10.20 |
Exemplo:
curl -d "b8695995-45e9-405d-b4aa-e50e8760fe25/3" -w "%{http_code}\n" -H "api-key: secret_password" -X POST http://localhost:5001/api/rating/setrating
Esta opção define a classificação do utilizador de todas as músicas identificadas pelo track-id de música b8695995-45e9-405d-b4aa-e50e8760fe25
para 3
.
Aceda à classificação
Lê avaliação de músicas na base de dados
Intenção | Obtenha a classificação da música em estrelas (0 - 5) pela musicBrainz trackID. A caixa de resposta contém as informações da classificação. |
---|---|
URI | <span class="s1">/api/</span><span class="s1">rating/getrating </span> |
CAIXA DE PUBLICAÇÃO | musicbrainzTrackId |
CAIXA DE PUBLICAÇÃO exemplo/descrição | b8695995-45e9-405d-b4aa-e50e8760fe25 |
CAIXA DE RESPOSTA exemplo | 3 |
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/rating/getrating
Esta opção define a classificação do utilizador de todas as músicas identificadas pelo track-id de música b8695995-45e9-405d-b4aa-e50e8760fe25
.