My favorites | Sign in
Project Logo
             
Search
for
Updated Oct 05, 2008 by vagalumeweb
SearchAPI  
Busca dinâmica com o nome do artista e título da música. Ideal para integrações de rádio online.

Introdução

Fornece interface de busca flexível, ou seja, basta passar o nome do artista e o título, e o sistema retorna a música correta (com letra original, tradução e/ou cifra).

Exemplo: Consulta via GET

GET http://www.vagalume.com.br/searchapi.php?key=172836781263&artist=u2&song=one

Retorno

<letras>
  <urls>
    <artistaresp>
      <artista>u2</artista>
      <musica>one</musica>
      <urlset>
        <url type="cifra">http://www.vagalume.com.br/u2/one-cifrada.html</url>
        <url type="letra">http://www.vagalume.com.br/u2/one.html</url>
        <url type="traducao">http://www.vagalume.com.br/u2/one-(traducao).html</url>
      </urlset>
    </artistaresp>
  </urls>
</letras>

Exemplo: Consulta via POST

Vamos supor que você tenha várias músicas e precisa mapear com os registros do Vaga-lume. Ao invês de mandar uma pesquisa por vez, você pode enviar vários pedidos em apenas uma requisição. Sendo assim, ao invés do GET acima, utilize o POST na seguinte URL:

POST http://www.vagalume.com.br/searchapi.php?key=172836781263

No conteúdo do POST, basta enviar por exemplo:

<?xml version="1.0" encoding="ISO-8859-1"?>
<letras>
   <consulta>
      <item>
         <artista>Madonna</artista>
         <musica>La isla bonita</musica>
      </item>
      <item>
         <artista>Rolling Stones</artista>
         <musica>Love me tender</musica>
      </item>
      <item>
         <artista>INXS</artista>
         <musica>Not enough time</musica>
      </item>
   </consulta>
</letras>

Assim, será feito 3 pedidos em apenas uma requisição. O resultado seria algo como:

<?xml version="1.0" encoding="ISO-8859-1"?>
<letras>
   <urls>
      <artistaresp>
         <artista>Madonna</artista>
         <musica>La isla bonita</musica>
         <urlset>
             <url type="cifra">http://www.vagalume.com.br/madonna/la-isla-bonita-(cifrada).html</url>
             <url type="letra">http://www.vagalume.com.br/madonna/la-isla-bonita.html</url>
             <url tupe="traducao">http://www.vagalume.com.br/madonna/la-isla-bonita(traducao).html</url>
         </urlset>
      </artistaresp>
      <artistanoresp>
         <artista>Rolling Stones</artista>
         <musica>Love me tender</musica>
      </artistanoresp>
      <artistaresp>
         <artista>INXS</artista>
         <musica>Not enough time</musica>
         <urlset>
             <url type="cifra"/>
             <url type="letra">http://www.vagalume.com.br/inxs/not-enough-time.html</url>
             <url type="traducao"/>
         </urlset>
      </artistaresp>
   </urls>
</letras>

artistaresp e artistanoresp

Atenção para o retorno do XML. Quando o resultado vem dentro de <artistaresp> significa que existe uma resposta válida. Se o resultado estiver dentro do <artistanoresp> o resultado não foi encontrado e consta no retorno apenas para informação.


Sign in to add a comment
Hosted by Google Code