> For the complete documentation index, see [llms.txt](https://multisource.gitbook.io/api-dintegration-multisource/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://multisource.gitbook.io/api-dintegration-multisource/integration/search-and-autocomplete.md).

# Search & Autocomplete

L’API permet une recherche progressive d’éléments individuels (*ex.* : nom, rue) avec la possibilité d’affiner les résultats au fur et à mesure. Contrairement à la fonction Match, une chaîne de caractères complète n’est pas nécessaire.

## Authentification avec clé API

Pour accéder à l’API, une clé API est nécessaire.

* La clé API est fournie après un processus [d’onboarding](https://www.multisource.ch/autocomplete-start) réussi.
* La clé API doit être transmise dans l’en-tête de chaque requête.

Exemple:

<pre class="language-http" data-overflow="wrap"><code class="lang-http"><strong>curl 'https://api.multisource.ch/v2/Search/AutoComplete?source=business&#x26;value=swisscom+directories' \
</strong>  --header 'Auth-Key: &#x3C;API-KEY>'
</code></pre>

## Point de terminaison API

## GET /search/autocomplete

>

```json
{"openapi":"3.0.1","info":{"title":"multisource•api","version":"v2"},"tags":[{"name":"Search"}],"servers":[{"url":"https://api.multisource.ch/v2","description":"Production - v2"}],"security":[{"auth-key":[]}],"components":{"securitySchemes":{"auth-key":{"type":"apiKey","description":"API Key required for authorized endpoints.","name":"auth-key","in":"header"}},"schemas":{"SearchOutputOfListOfOutputDataSearch":{"type":"object","properties":{"hitCount":{"type":"integer","format":"int32"},"resultCount":{"type":"integer","format":"int32"},"data":{"type":"array","items":{"$ref":"#/components/schemas/OutputDataSearch"}}}},"OutputDataSearch":{"type":"object","properties":{"dwhId":{"type":"string","nullable":true},"companyname":{"type":"string","nullable":true},"firstname":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"street":{"type":"string","nullable":true},"houseNumber":{"type":"string","nullable":true},"zip":{"type":"string","nullable":true},"location":{"type":"string","nullable":true},"category":{"type":"object","additionalProperties":{"type":"string"},"nullable":true},"email":{"type":"string"},"url":{"type":"string"},"phoneNumbers":{"type":"array","items":{"type":"string"},"nullable":true},"mobileNumbers":{"type":"array","items":{"type":"string"},"nullable":true}}}}},"paths":{"/search/autocomplete":{"get":{"tags":["Search"],"parameters":[{"name":"source","in":"query","required":true,"schema":{"type":"string"}},{"name":"value","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/SearchOutputOfListOfOutputDataSearch"}},"application/json":{"schema":{"$ref":"#/components/schemas/SearchOutputOfListOfOutputDataSearch"}},"text/json":{"schema":{"$ref":"#/components/schemas/SearchOutputOfListOfOutputDataSearch"}}}}}}}}}
```

## Paramètres

<table><thead><tr><th width="130.05078125">Paramètre</th><th width="110">Type</th><th width="500.171875">Description</th><th>Exemple</th></tr></thead><tbody><tr><td><code>source</code></td><td>string</td><td><p>Source de données :</p><ul><li><code>consumer</code> (Personnes privées)</li><li><code>business</code> (Entreprises)</li><li><code>geo</code> (Adresses)</li><li>Plusieurs sources combinables, séparées par une virgule : <code>consumer,business</code></li></ul></td><td><code>consumer,business</code></td></tr><tr><td><code>value</code></td><td>string</td><td>Terme ou phrase de recherche – combinaisons de nom, lieu, rue possibles.</td><td><code>Lara Graf Zürich</code></td></tr></tbody></table>

## Champs de réponse

### Champs racine

<table><thead><tr><th width="145">Champ</th><th width="88">Type</th><th width="290">Description</th><th>Exemple</th></tr></thead><tbody><tr><td><code>hitCount</code></td><td>integer</td><td>Nombre total de résultats dans la base de données pour la requête</td><td><code>1</code></td></tr><tr><td><code>resultCount</code></td><td>integer</td><td>Nombre d'entrées effectivement retournées dans le tableau <code>data</code></td><td><code>1</code></td></tr><tr><td><code>data</code></td><td>array</td><td>Tableau contenant les entrées d'annuaire trouvées</td><td>voir champs de sortie ci-dessous</td></tr></tbody></table>

### Champs de sortie

<table><thead><tr><th width="145">Champ</th><th width="88">Type</th><th width="290">Description</th><th>Exemple</th></tr></thead><tbody><tr><td><code>companyname</code></td><td>string</td><td>Nom de l'entreprise pour les entrées professionnelles</td><td><code>Swisscom Directories AG</code></td></tr><tr><td><code>firstname</code></td><td>string</td><td>Prénom pour les particuliers</td><td><code>Lara</code></td></tr><tr><td><code>name</code></td><td>string</td><td>Nom de famille pour les particuliers</td><td><code>Graf</code></td></tr><tr><td><code>street</code></td><td>string</td><td>Nom de la rue</td><td><code>Förrlibuckstrasse</code></td></tr><tr><td><code>houseNumber</code></td><td>string</td><td>Numéro de maison</td><td><code>62</code></td></tr><tr><td><code>zip</code></td><td>string</td><td>Code postal (NPA)</td><td><code>8005</code></td></tr><tr><td><code>location</code></td><td>string</td><td>Nom de la localité</td><td><code>Zürich</code></td></tr><tr><td><code>category</code></td><td>string</td><td><p>Catégorie / secteur</p><p>(multilingue : DE, FR, IT, EN)</p></td><td><p><code>"de": "Pizzakurier",</code></p><p><code>"en": "Pizza delivery",</code></p><p><code>"it": "Pizza consegne a domicilio",</code></p><p><code>"fr": Pizza livraison à domicile"</code></p></td></tr><tr><td><code>email</code></td><td>string</td><td>E-mail</td><td><code>info@abc.com</code></td></tr><tr><td><code>url</code></td><td>string</td><td>Site web</td><td><code>www.multisource.ch</code></td></tr><tr><td><code>phoneNumbers</code></td><td>array</td><td>Tableau avec un ou plusieurs numéros fixes</td><td><p><code>[</code></p><p><code>“*0800 123 456",</code></p><p><code>"*058 123 45 67"</code></p><p><code>]</code> </p></td></tr><tr><td><code>mobileNumbers</code></td><td>array</td><td>Tableau avec un ou plusieurs numéros de portable</td><td><p><code>[</code></p><p><code>“*079  123 45 67"</code></p><p><code>]</code></p></td></tr></tbody></table>

### Marquage opposition à la publicité

Les numéros retournés avec un astérisque en préfixe (`*`) (p. ex. `*0791234567`) sont marqués d'une opposition à la publicité. Le titulaire s'est opposé à l'utilisation de son numéro à des fins publicitaires. Ces numéros ne doivent pas être utilisés pour du démarchage téléphonique. L'astérisque fait actuellement partie de la chaîne du numéro et non d'un champ séparé – veuillez en tenir compte (le traiter séparément) lors du traitement des données.

## Metrics & Usage

**Votre utilisation en un coup d'œil** L'endpoint `metrics/usage` vous permet de consulter à tout moment le nombre de requêtes envoyées et d'éléments retournés pour ce module – ventilé par période. [**En savoir plus**](/api-dintegration-multisource/integration/metrics-and-usage.md)
