---
sourceDocument: Interface do usuário da Now Platform Yokohama
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/yokohama/platform-user-interface

 Release :

    - yokohama

ft:locale :

    - pt-BR

ft:publication_title :

    - Interface do usuário da Now Platform Yokohama

ft:clusterId :

    - platux

bundleId :

    - platux

workflow :

    - Platform


---

# Exemplo: Configure uma fonte de pesquisa do GitHub

# Exemplo: Configure uma fonte de pesquisa do GitHub {#ariaid-title1}

* Versão de lançamento: Yokohama
* 
* Atualizado 30 de jan. de 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 min. de leitura

Configure uma fonte de pesquisa avançada que consulta dados de um site externo.

## Antes de Iniciar

Função necessária: nenhuma

Para criar uma fonte de pesquisa avançada, você precisa de acesso autenticado a um site externo por meio de uma REST API e conhecimento básico de [AngularJS](https://angularjs.org/).

## Procedimento

1. Na IU da plataforma, navegue até Portal de serviçosPortais e selecione o portal ao qual você deseja adicionar fontes de pesquisa.
2. Na lista relacionada Fontes de pesquisa, clique em Novo .
3. Crie um nome e ID para a origem de pesquisa.  
   O ID deve ser exclusivo e não deve incluir espaços ou caracteres especiais.
4. Em Fonte de dados , selecione É origem com script caixa de seleção.
5. Adicione conteúdo ao campo de script de busca de dados.  
   Para configurar uma integração do GitHub:

       (function(query) {
           var results = [];
           /* Calculate your results here. */
           var url = "https://api.github.com/search/repositories?q=" + encodeURI(query);
           var ws = new GlideHTTPRequest(url);
           ws.setBasicAuth("YOUR_USERNAME_HERE", "YOUR_PASSWORD_HERE");
           var jsonOutput = ws.get();
           if (jsonOutput) {
               var response = new JSON().decode(jsonOutput.getBody());
               results = response.items;
               results.forEach(function(result) {
                   result.url = result.svn_url;
                   result.target = "_blank";
                   result.primary = result.full_name;
               });
           }

           return results;
       })(query);

   Nota:  
   No exemplo anterior, `ws.setBasicAuth `requer um nome de usuário e senha para o recurso externo. Para obter mais detalhes, consulte [GlideHTTPRequest - Global](https://www.servicenow.com/docs/access?context=GlideHTTPRequestAPI&version=yokohama&pubname=yokohama-api-reference&ft:locale=en-US).
6. Use o modelo de página Pesquisar para personalizar a forma como os resultados da pesquisa são exibidos.  

       <div>
         <div class="pull-right">
           <strong>{{item.language}}</strong>
           <a ng-href="{{item.svn_url}}/stargazers" target="_blank" class="m-l-sm"><span class="fa fa-star m-r-xs"></span>{{item.stargazers_count}}</a>
           <a ng-href="{{item.svn_url}}/network" target="_blank" class="m-l-sm"><span class="fa fa-code-fork m-r-xs"></span>{{item.forks}}</a>
         </div>
         <a ng-href="{{item.svn_url}}" target="_blank" class="h4 text-primary m-b-sm block">
           <span ng-bind-html="highlight(item.full_name, data.q)"></span>
         </a>
         <p>{{item.description}}</p>
         <p>Updated <sn-time-ago timestamp="item.updated_at"></sn-time-ago> ago</p>
       </div>

{#search-sp-advanced__steps_qcx_dx1_qz}

