---
sourceDocument: Référence de l’API Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - fr-FR

ft:publication_title :

    - Référence de l’API Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Interface NowAPIService : Android

# Interface NowAPIService : Android {#ariaid-title1}

* Rversion finale: Xanadu
* 
* Mis à jour 1 août 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 minute de lecture

L'interface NowAPIService permet d'effectuer des demandes sur une API REST spécifiée ServiceNow .  
Remarque :  
Les utilisateurs invités ne fonctionnent pour l'interface NowAPIService que si l'API REST à laquelle vous accédez est configurée pour les utilisateurs invités.
{#NowAPIServiceAndroidInterface__table_vx2_klw_5pb__entry__3}

| Nom | Type | Description |
|-|-|-|
| configuration | [Configuration Now ServiceConfiguration](https://servicenow-prod.fluidtopics.net/cw95tRreqlkfNCknivurbQ "La classe NowServiceConfiguration vous permet de configurer l’URL d’instance et le nom du ServiceNow package d’un service de fonctionnalités.") | Configuration du service à associer au protocole. |
[Tableau 1. Propriétés]

{#NowAPIServiceAndroidInterface__table_vx2_klw_5pb}

## NowAPIService : data(point de terminaison : NowAPIService.Endpoint, queryParams : QueryParams, en-têtes : en-têtes, corps : chaîne) {#ariaid-title2}

Appelle l'API REST spécifiée sur l'instance spécifiée ServiceNow .
{#NAPIServ-data_S_S_S_S__table_u3p_dkt_4pb__entry__3}

| Nom | Type | Description |
|-|-|-|
| endpoint | ServiceNow APIService.Point de terminaison | Point de terminaison REST à appeler. |
| queryParams | QueryParams | Facultatif. Objet du paramètre de requête qui contient les paramètres de requête à transmettre dans l'appel REST. Par défaut : null |
| en-têtes | En-têtes | Facultatif. Objet Headers qui contient les en-têtes à transmettre dans l'appel REST. Par défaut : null |
| body | Chaîne | Facultatif. Objet qui contient le corps et le type de contenu de la demande à transmettre dans l'appel REST. Par défaut : null |
[Tableau 2. Paramètres]

{#NAPIServ-data_S_S_S_S__table_u3p_dkt_4pb} {#NAPIServ-data_S_S_S_S__table_v3p_dkt_4pb__entry__2}

| Type | Description |
|-|-|
| [Appeler](https://servicenow-prod.fluidtopics.net/Ftyw7Yt2YUqnJyFyCGm5lg#CallAndroidInterface "L’interface d’appel représente une demande préparée pour traitement.")\<[ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/)\> | Renvoyer les résultats à partir du point de terminaison REST appelé. |
[Tableau 3. Renvoie]

{#NAPIServ-data_S_S_S_S__table_v3p_dkt_4pb}  
<br />

    suspend fun loadCases(): List<CaseItem> = withContext(Dispatchers.IO) {
      val apiService = nowServiceManager.getNowAPIService()

      val result = runCatching {
        val response = apiService.data(NowAPIService.Endpoint(
          relativePath = CASES_API,
          requestMethod = HttpMethod.GET,
          requireAuth = true)
        ).execute()

        val byteArray = response.body ?: throw Exception("Null Result")
        val buffer = Buffer()
        val reader = JsonReader.of(buffer.write(byteArray))
        val listType = Types.newParameterizedType(
          List::class.java,
          CaseItem::class.java
        )

        val resultType = Types.newParameterizedType(
          ResultResponse::class.java,
          listType
        )
        val adapter = moshi.adapter<ResultResponse<List<CaseItem>>>(resultType)
        adapter.fromJson(reader)
      }

      if (result.isSuccess) {
          result.getOrNull()?.result ?: throw Exception("Cases not in response")
      } else {
          throw result.exceptionOrNull() ?: Exception("Error Cases")
      }
    }


