<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->

  <title>Archiva Web :: REST support :: Api: SearchService</title>

  <!-- Mobile viewport optimized: j.mp/bplateviewport -->
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <!-- Bootstrap core CSS -->
  <!-- <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css"> -->

  <!--custom css for these pages-->
  <link rel="stylesheet" href="css/style.css">

  <link href="https://cdnjs.cloudflare.com/ajax/libs/prettify/r298/prettify.css" type="text/css">

  <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
  <!--[if lt IE 9]>
  <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
  <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  <![endif]-->
</head>

<body class="home">
 <div class="container">
  <header>
 
   <div id="header" class="column first last span-20">
        <div id="site-name" class="column span-18 append-1 prepend-1 first last"><a href="index.html">Archiva Web :: REST support :: Api: SearchService</a></div>
        <div id="primary" class="column span-18 append-1 prepend-1 first last">
          <ul class="navigation">
            <li id="nav-rest"><a href="resources.html">REST</a></li>
            <li id="nav-data"><a href="data.html">Data Model</a></li>
          </ul>
        </div>
        <div>
          <ul class="xbreadcrumbs" id="breadcrumbs">
<li>
 <a href="index.html" class="home">Home</a> &gt;

            </li>
<li>
 <a href="resources.html">Resources</a> &gt;

            </li>
<li class="current">
 <a href="resource_SearchService.html">SearchService</a>

            </li>
          </ul>
        </div>
      </div>
  <!--<nav class="navbar navbar-inverse navbar-fixed-top">
    <div class="container-fluid">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar">
          <span class="sr-only">Toggle navigation</span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </button>
        <a class="navbar-brand" href="index.html">Archiva Web :: REST support :: Api: SearchService</a>
      </div>
      <div id="navbar" class="navbar-collapse collapse">
        <ul class="nav navbar-nav navbar-right">
          <li><a href="resources.html">Resources</a></li>
          <li><a href="data.html">Data Types</a></li>
          <li><a href="downloads.html">Files and Libraries</a></li>
        </ul>
      </div>
    </div>
  </nav>-->
 </header>
  <div id="main" class="column first last span-20">
  
      <h1 class="page-header">SearchService <small>Resource</small></h1>

      <p></p>
      <ul>
<li><a href="#resource_SearchService_redirectToArtifactFile_GET">./searchService/artifact</a></li>
<li><a href="#resource_SearchService_getArtifactByChecksum_POST">./searchService/artifactsByChecksum</a></li>
<li><a href="#resource_SearchService_getAllGroupIds_GET">./searchService/getAllGroupIds</a></li>
<li><a href="#resource_SearchService_getArtifactVersions_GET">./searchService/getArtifactVersions</a></li>
<li><a href="#resource_SearchService_getObservablesRepoIds_GET">./searchService/observableRepoIds</a></li>
<li><a href="#resource_SearchService_quickSearch_GET">./searchService/quickSearch</a></li>
<li><a href="#resource_SearchService_quickSearchWithRepositories_POST">./searchService/quickSearchWithRepositories</a></li>
<li><a href="#resource_SearchService_searchArtifacts_POST">./searchService/searchArtifacts</a></li>
      </ul>

      <div id="resource_SearchService_redirectToArtifactFile_GET">
        <h2>GET <small>/searchService/artifact <a href="./searchService/artifact" class="glyphicon glyphicon-new-window" target="_blank"></a></small></h2>

        <p></p>

        <table class="table">
          <caption>Request Parameters</caption>
          <thead>
          <tr>
            <th>name</th>
            <th>type</th>
            <th>description</th>
            <th>default</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td>a</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          <tr>
            <td>c</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          <tr>
            <td>g</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          <tr>
            <td>p</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          <tr>
            <td>r</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          <tr>
            <td>v</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          </tbody>
        </table>

        <table class="table">
          <caption>Response Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: text/html&quot; HTTP header to request that this media type be provided by the server.">text/html</abbr></td>
            <td>(custom)
</td>
          </tr>
          </tbody>
        </table>
      </div>

      <div id="resource_SearchService_getArtifactByChecksum_POST">
        <h2>POST <small>/searchService/artifactsByChecksum <a href="./searchService/artifactsByChecksum" class="glyphicon glyphicon-new-window" target="_blank"></a></small></h2>

        <p>If searchRequest contains repositories, the search will be done only on those repositories.
<b>if no repositories, the search will be apply on all repositories the current user has karma</b></p>

        <table class="table">
          <caption>Request Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Content-Type: application/xml&quot; HTTP header to specify this media type to the server.">application/xml</abbr></td>
            <td><a href="xml_ns0_checksumSearch.html">checksumSearch</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>

        <table class="table">
          <caption>Response Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/json&quot; HTTP header to request that this media type be provided by the server.">application/json</abbr></td>
            <td>(custom)
</td>
          </tr>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/xml&quot; HTTP header to request that this media type be provided by the server.">application/xml</abbr></td>
            <td>list of <a href="xml_ns0_artifact.html">artifact</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>
      </div>

      <div id="resource_SearchService_getAllGroupIds_GET">
        <h2>GET <small>/searchService/getAllGroupIds <a href="./searchService/getAllGroupIds" class="glyphicon glyphicon-new-window" target="_blank"></a></small></h2>

        <p><b>this method applies on Maven Indexer lucene index, so datas not yet indexed won't be available</b></p>

        <table class="table">
          <caption>Request Parameters</caption>
          <thead>
          <tr>
            <th>name</th>
            <th>type</th>
            <th>description</th>
            <th>default</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td>selectedRepos</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          </tbody>
        </table>

        <table class="table">
          <caption>Response Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/json&quot; HTTP header to request that this media type be provided by the server.">application/json</abbr></td>
            <td>(custom)
</td>
          </tr>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/xml&quot; HTTP header to request that this media type be provided by the server.">application/xml</abbr></td>
            <td><a href="xml_ns0_groupIdList.html">groupIdList</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>
      </div>

      <div id="resource_SearchService_getArtifactVersions_GET">
        <h2>GET <small>/searchService/getArtifactVersions <a href="./searchService/getArtifactVersions" class="glyphicon glyphicon-new-window" target="_blank"></a></small></h2>

        <p><b>search will be apply on all repositories the current user has karma</b></p>

        <table class="table">
          <caption>Request Parameters</caption>
          <thead>
          <tr>
            <th>name</th>
            <th>type</th>
            <th>description</th>
            <th>default</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td>artifactId</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          <tr>
            <td>groupId</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          <tr>
            <td>packaging</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          </tbody>
        </table>

        <table class="table">
          <caption>Response Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/json&quot; HTTP header to request that this media type be provided by the server.">application/json</abbr></td>
            <td>(custom)
</td>
          </tr>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/xml&quot; HTTP header to request that this media type be provided by the server.">application/xml</abbr></td>
            <td>list of <a href="xml_ns0_artifact.html">artifact</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>
      </div>

      <dl class="dl-horizontal">
        <dt>Available Since</dt>
        <dd>1.4-M3</dd>
      </dl>

      <div id="resource_SearchService_getObservablesRepoIds_GET">
        <h2>GET <small>/searchService/observableRepoIds <a href="./searchService/observableRepoIds" class="glyphicon glyphicon-new-window" target="_blank"></a></small></h2>

        <p></p>

        <dl class="dl-horizontal">
          <dt>Available Since</dt>
          <dd>1.4-M3</dd>
        </dl>

        <table class="table">
          <caption>Response Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/json&quot; HTTP header to request that this media type be provided by the server.">application/json</abbr></td>
            <td>(custom)
</td>
          </tr>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/xml&quot; HTTP header to request that this media type be provided by the server.">application/xml</abbr></td>
            <td><a href="xml_ns0_stringList.html">stringList</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>
      </div>

      <div id="resource_SearchService_quickSearch_GET">
        <h2>GET <small>/searchService/quickSearch <a href="./searchService/quickSearch" class="glyphicon glyphicon-new-window" target="_blank"></a></small></h2>

        <p></p>

        <table class="table">
          <caption>Request Parameters</caption>
          <thead>
          <tr>
            <th>name</th>
            <th>type</th>
            <th>description</th>
            <th>default</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td>queryString</td>
            <td>query</td>
            <td></td>
            <td>n/a</td>
          </tr>
          </tbody>
        </table>

        <table class="table">
          <caption>Response Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/json&quot; HTTP header to request that this media type be provided by the server.">application/json</abbr></td>
            <td>(custom)
</td>
          </tr>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/xml&quot; HTTP header to request that this media type be provided by the server.">application/xml</abbr></td>
            <td>list of <a href="xml_ns0_artifact.html">artifact</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>
      </div>

      <div id="resource_SearchService_quickSearchWithRepositories_POST">
        <h2>POST <small>/searchService/quickSearchWithRepositories <a href="./searchService/quickSearchWithRepositories" class="glyphicon glyphicon-new-window" target="_blank"></a></small></h2>

        <p><b>if not repositories in SearchRequest: search will be apply on all repositories the current user has karma</b></p>

        <table class="table">
          <caption>Request Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Content-Type: application/xml&quot; HTTP header to specify this media type to the server.">application/xml</abbr></td>
            <td><a href="xml_ns0_searchRequest.html">searchRequest</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>

        <table class="table">
          <caption>Response Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/json&quot; HTTP header to request that this media type be provided by the server.">application/json</abbr></td>
            <td>(custom)
</td>
          </tr>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/xml&quot; HTTP header to request that this media type be provided by the server.">application/xml</abbr></td>
            <td>list of <a href="xml_ns0_artifact.html">artifact</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>
      </div>

      <div id="resource_SearchService_searchArtifacts_POST">
        <h2>POST <small>/searchService/searchArtifacts <a href="./searchService/searchArtifacts" class="glyphicon glyphicon-new-window" target="_blank"></a></small></h2>

        <p>If searchRequest contains repositories, the search will be done only on those repositories.
<b>if no repositories, the search will be apply on all repositories the current user has karma</b></p>

        <table class="table">
          <caption>Request Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Content-Type: application/xml&quot; HTTP header to specify this media type to the server.">application/xml</abbr></td>
            <td><a href="xml_ns0_searchRequest.html">searchRequest</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>

        <table class="table">
          <caption>Response Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/json&quot; HTTP header to request that this media type be provided by the server.">application/json</abbr></td>
            <td>(custom)
</td>
          </tr>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/xml&quot; HTTP header to request that this media type be provided by the server.">application/xml</abbr></td>
            <td>list of <a href="xml_ns0_artifact.html">artifact</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>
      </div>
        
        <footer>
          <div class="footer">
            Generated by <a href="http://enunciate.webcohesion.com">Enunciate</a>.
          </div>
        </footer>

      </div>
    
  </div>


  <!-- JavaScript placed at the end of the document so the pages load faster. -->
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>

  
  <!-- prettify code blocks. see http://code.google.com/p/google-code-prettify/ -->
  <script src="https://cdnjs.cloudflare.com/ajax/libs/prettify/r298/run_prettify.js" type="text/javascript"></script>
  

</body>
</html>