---
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


---

# Classe NowCoreService : iOS

# Classe NowCoreService : iOS {#ariaid-title1}

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

La classe NowCoreService fournit des services fondamentaux aux différents services de fonctionnalité du Kit de développement logiciel (SDK). Cette classe ne doit être instanciée que par NowSDK.

Les services de fonctionnalité, tels que Now Analytics et NowChat, peuvent accéder à une instance principale partagée via la propriété NowSDK.core.

## NowCoreService : accessTokenDidFail(pour le service : NowService) {#ariaid-title2}

Notifie le noyau du SDK que le jeton d'accès utilisé pour autoriser les demandes d'API à l'instance ServiceNow pour le service spécifié n'est plus valide.
Le cœur du SDK renvoie un jeton d'accès valide s'il est capable d'en générer un ou s'il renvoie une erreur.  
Remarque :  
Cette méthode a été déconseillée. Vous devez utiliser l'implémentation async/await de la méthode à la place.
{#NCoreServ-accessTokenDidFail_O__table_p5n_vcb_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pour le service | [Now Service (en anglais seulement)](https://servicenow-prod.fluidtopics.net/jCMrQc1DKbItTnR11Hh3oQ#NowServiceiOSProtocol "Le protocole NowService fournit une interface unique au NowSDK pour tous les services de fonctionnalité. Il définit les paramètres de configuration nécessaires pour accéder à votre ServiceNow instance.") | Service de fonctionnalité demandant le jeton d'accès. |
[Tableau 1. Paramètres]

{#NCoreServ-accessTokenDidFail_O__table_p5n_vcb_npb} {#NCoreServ-accessTokenDidFail_O__table_q5n_vcb_npb__entry__2}

| Type | Description |
|-|-|
| AnyPublisher\<NowSDK.AccessToken, AccessTokenProviderError\> | Réussite : jeton d'accès valide. Échec : AccessTokenProviderError Valeurs possibles : * userSessionError (en anglais seulement) * accessTokenRetrievalFailed * hostReturnedNoTokens : indique un utilisateur invité |
[Tableau 2. Renvoie]

{#NCoreServ-accessTokenDidFail_O__table_q5n_vcb_npb}  
<br />

    NowSDK.core()?.accessTokenDidFail(for: someService)
      .mapError { YourCustomError.accessTokenFailed($0) }

    .flatMap(self.handleFailedAccessToken())
      .eraseToAnyPublisher()

## NowCoreService : accessTokenDidFail(pour le service : NowService) lèvements asynchrones {#ariaid-title3}

Notifie le noyau du SDK que le jeton d'accès utilisé pour autoriser les demandes d'API à l'instance ServiceNow pour le service spécifié n'est plus valide.
Le cœur du SDK renvoie un jeton d'accès valide s'il est capable d'en générer un ou s'il renvoie une erreur.
{#NCoreServ-accessTokDidFail-async_O__table_p5n_vcb_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pour le service | [Now Service (en anglais seulement)](https://servicenow-prod.fluidtopics.net/jCMrQc1DKbItTnR11Hh3oQ#NowServiceiOSProtocol "Le protocole NowService fournit une interface unique au NowSDK pour tous les services de fonctionnalité. Il définit les paramètres de configuration nécessaires pour accéder à votre ServiceNow instance.") | Service de fonctionnalité demandant le jeton d'accès. |
[Tableau 3. Paramètres]

{#NCoreServ-accessTokDidFail-async_O__table_p5n_vcb_npb} {#NCoreServ-accessTokDidFail-async_O__table_q5n_vcb_npb__entry__2}

| Type | Description |
|-|-|
| NowSDK.AccessToken | Renvoyé lorsque la méthode réussit. Jeton d'accès valide. |
| AccessTokenProviderError (en anglais seulement) | Levée lorsque la méthode échoue. Indique une erreur lors de la récupération d'un jeton d'accès. Valeurs possibles : * userSessionError (en anglais seulement) * accessTokenRetrievalFailed * hostReturnedNoTokens : indique un utilisateur invité |
[Tableau 4. Renvoie]

{#NCoreServ-accessTokDidFail-async_O__table_q5n_vcb_npb}  
Les exemples de code suivants montrent comment appeler cette méthode.

    do {
        let accessToken = try await NowSDK.core()?.accessTokenDidFail(for: someService)
    } catch {
        self.handleFailedAccessToken(error)
    }

## NowCoreService : canRequestPermission(_ permission : DevicePermission) {#ariaid-title4}

Interroge l'application hôte pour savoir si le service est autorisé à demander l'autorisation de l'appareil.
Cette fonction ne demande pas l'autorisation, seulement si elle est autorisée à interroger l'autorisation de l'appareil. Les services de fonctionnalité doivent appeler cette fonction pour déterminer s'ils sont autorisés à demander une autorisation d'appareil souhaitée.
{#NCoreServ-canReqPermission_S__table_t4p_c1b_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| autorisation | Autorisation de l'appareil | Appareil pour lequel la demande est effectuée. Valeurs possibles (sensibles à la casse) : * appareil photo * emplacement * microphone * Photothèque * speachRecognition (en anglais seulement) |
[Tableau 5. Paramètres]

{#NCoreServ-canReqPermission_S__table_t4p_c1b_npb} {#NCoreServ-canReqPermission_S__table_u4p_c1b_npb__entry__2}

| Type | Description |
|-|-|
| Booléen | Marqueur indiquant si l'application hôte autorise le Kit de développement logiciel (SDK) à demander l'autorisation de l'appareil spécifiée. Valeurs possibles : * vrai : l'autorisation de l'appareil peut être demandée. * faux : l'autorisation de l'appareil ne peut pas être demandée. |
[Tableau 6. Renvoie]

{#NCoreServ-canReqPermission_S__table_u4p_c1b_npb}  
<br />

    extension AppDelegate: DevicePermissionDelegate {
      func canRequestPermission(_ permission: DevicePermission) -> Bool {
        return true
      }
    }

## NowCoreService : isGuestUser(pour le service : NowService) asynchrone {#ariaid-title5}

Vérifie si l'utilisateur actuel est un utilisateur invité.
{#NCoreServ-isGuestUser-async_O__table_ugj_4w2_lxb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pour le service | Now Service (en anglais seulement) | Service de fonctionnalité pour lequel effectuer le contrôle de l'utilisateur invité. |
[Tableau 7. Paramètres]

{#NCoreServ-isGuestUser-async_O__table_ugj_4w2_lxb} {#NCoreServ-isGuestUser-async_O__table_vgj_4w2_lxb__entry__2}

| Type | Description |
|-|-|
| Booléen | Marqueur indiquant si l'utilisateur actuel est un utilisateur invité. Valeurs possibles : * true : l'utilisateur actuel du service spécifié est un utilisateur invité. * false : l'utilisateur actuel du service spécifié n'est pas un utilisateur invité. |
[Tableau 8. Renvoie]

{#NCoreServ-isGuestUser-async_O__table_vgj_4w2_lxb}  
L'exemple de code suivant montre comment appeler cette méthode.

    let isGuestUser = await NowSDK.core()?.isGuestUser(for: someService)

## NowCoreService : refreshAllSettings() {#ariaid-title6}

Actualise tous les paramètres SDK pour tous les services en les extrayant à nouveau à partir des serveurs actifs.
Pour recevoir les valeurs mises à jour des paramètres du SDK chaque fois qu'elles sont actualisées, abonnez-vous à l'éditeur fourni par la [NowCoreService : settingsPublisher(pour le service : NowService)](https://servicenow-prod.fluidtopics.net/vzOZnz73GqAQp4ceKKMtww#NCoreServ-settingsPublisher_O "Récupère les paramètres de l’éditeur du service spécifié.") fonction.
{#NCoreServ-refreshAllSettings__table_ckb_zgb_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| Aucun |   |   |
[Tableau 9. Paramètres]

{#NCoreServ-refreshAllSettings__table_ckb_zgb_npb} {#NCoreServ-refreshAllSettings__table_dkb_zgb_npb__entry__2}

| Type | Description |
|-|-|
| Aucun |   |
[Tableau 10. Renvoie]

{#NCoreServ-refreshAllSettings__table_dkb_zgb_npb}  
<br />

    NowSDK.core()?.refreshAllSettings()

## NowCoreService : refreshSettings(pour le service : NowService) {#ariaid-title7}

Actualise les paramètres du SDK pour le service spécifié en les récupérant à nouveau à partir du serveur.
Remarque :  
Cette méthode a été déconseillée. Vous devez utiliser l'implémentation async/await de la méthode à la place.
{#NCoreServ-refreshSettings_S__table_qv3_knb_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pour le service | Now Service (en anglais seulement) | Service de fonctionnalité, tel que NowChat ou NowAnalytics, demandant l'actualisation des paramètres. |
[Tableau 11. Paramètres]

{#NCoreServ-refreshSettings_S__table_qv3_knb_npb} {#NCoreServ-refreshSettings_S__table_rv3_knb_npb__entry__2}

| Type | Description |
|-|-|
| AnyPublisher\<Settings, SettingsError\> | Réussite : dictionnaire des paramètres actualisés du SDK. Les services d'entités doivent examiner les données renvoyées à la recherche des paramètres pertinents pour leurs fonctionnalités spécifiques. Échec : SettingsError : type et description de l'erreur rencontrée. Valeurs possibles : * fetchError (en anglais seulement) * fetchFailed * invalidJSON * Fournisseur invalide * notAuthorized (en anglais seulement) * sdkNotLicensed (en anglais seulement) * settingNotFound (en anglais seulement) * Inconnu |
[Tableau 12. Renvoie]

{#NCoreServ-refreshSettings_S__table_rv3_knb_npb}  
<br />

    var subscriptions = Set<AnyCancellable>()
    NowSDK.core?.refreshSettings(for: someService)
      .sink(receiveCompletion: { completion in
        if case .failure(let error) = completion {
          print("Refresh failed with error:\ (error)")
        }
      }, receiveValue: { settings in
        print("Received refreshed settings:\ (settings)")
      })
      .store(in: &subscriptions)

## NowCoreService : refreshSettings(pour le service : NowService) lèvements asynchrones {#ariaid-title8}

Actualise les paramètres du SDK pour le service spécifié en les récupérant à nouveau à partir du serveur.
{#NCoreServ-refreshSettings-async_S__table_qv3_knb_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pour le service | Now Service (en anglais seulement) | Service de fonctionnalité, tel que NowChat ou NowAnalytics, demandant l'actualisation des paramètres. |
[Tableau 13. Paramètres]

{#NCoreServ-refreshSettings-async_S__table_qv3_knb_npb} {#NCoreServ-refreshSettings-async_S__table_rv3_knb_npb__entry__2}

| Type | Description |
|-|-|
| Paramètres | Renvoyé lorsque la méthode réussit. Dictionnaire des paramètres actualisés du SDK. Les services d'entités doivent examiner les données renvoyées à la recherche des paramètres pertinents pour leurs fonctionnalités spécifiques. |
| Erreur de paramètres | Levée lorsque la méthode échoue. Valeurs possibles : * fetchError (en anglais seulement) * fetchFailed * invalidJSON * Fournisseur invalide * notAuthorized (en anglais seulement) * sdkNotLicensed (en anglais seulement) * settingNotFound (en anglais seulement) * Inconnu |
[Tableau 14. Renvoie]

{#NCoreServ-refreshSettings-async_S__table_rv3_knb_npb}  
Les exemples de code suivants montrent comment appeler cette méthode.

    do {
        let settings = try await NowSDK.core()?.refreshSettings(for: someService)
        print("Received refreshed settings: \(settings)")
    } catch {
        print("Refresh failed with Settings error: \(error)")
    }

## NowCoreService : requestAccessToken(pour le service : NowService) {#ariaid-title9}

Acquiert un jeton d'accès pour le service spécifié.
Remarque :  
Cette méthode a été déconseillée. Vous devez utiliser l'implémentation async/await de la méthode à la place.
{#NCoreServ-requestAccessToken_O__table_dt1_ftb_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pour le service | [Now Service (en anglais seulement)](https://servicenow-prod.fluidtopics.net/jCMrQc1DKbItTnR11Hh3oQ#NowServiceiOSProtocol "Le protocole NowService fournit une interface unique au NowSDK pour tous les services de fonctionnalité. Il définit les paramètres de configuration nécessaires pour accéder à votre ServiceNow instance.") | Service de fonctionnalité demandant le jeton d'accès. |
[Tableau 15. Paramètres]

{#NCoreServ-requestAccessToken_O__table_dt1_ftb_npb} {#NCoreServ-requestAccessToken_O__table_et1_ftb_npb__entry__2}

| Type | Description |
|-|-|
| AnyPublisher\<NowSDK.AccessToken, AccessTokenProviderError\> | Réussite : NowSDK.AccessToken : jeton d'accès à utiliser pour autoriser les demandes d'API effectuées à une ServiceNow instance. Échec : AccessTokenProviderError : type et description de l'erreur rencontrée. Valeurs possibles : * accessTokenRetrievalFailed * hostReturnedNoTokens : indique un utilisateur invité * userSessionError (en anglais seulement) |
[Tableau 16. Renvoie]

{#NCoreServ-requestAccessToken_O__table_et1_ftb_npb}  
<br />

    NowSDK.core()?.requestAccessToken(for: someService)

## NowCoreService : requestAccessToken(pour le service : NowService) lèvements asynchrones {#ariaid-title10}

Acquiert un jeton d'accès pour le service spécifié.
{#NCoreServ-requestAccessToken-async_O__table_dt1_ftb_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pour le service | [Now Service (en anglais seulement)](https://servicenow-prod.fluidtopics.net/jCMrQc1DKbItTnR11Hh3oQ#NowServiceiOSProtocol "Le protocole NowService fournit une interface unique au NowSDK pour tous les services de fonctionnalité. Il définit les paramètres de configuration nécessaires pour accéder à votre ServiceNow instance.") | Service de fonctionnalité demandant le jeton d'accès. |
[Tableau 17. Paramètres]

{#NCoreServ-requestAccessToken-async_O__table_dt1_ftb_npb} {#NCoreServ-requestAccessToken-async_O__table_et1_ftb_npb__entry__2}

| Type | Description |
|-|-|
| NowSDK.AccessToken | Renvoyé lorsque la méthode réussit. Jeton d'accès à utiliser pour autoriser les demandes d'API adressées à une ServiceNow instance. |
| AccessTokenProviderError (en anglais seulement) | Levée lorsque la méthode échoue. Indique une erreur lors de la récupération d'un jeton d'accès. Valeurs possibles : * accessTokenRetrievalFailed * hostReturnedNoTokens : indique un utilisateur invité * userSessionError (en anglais seulement) |
[Tableau 18. Renvoie]

{#NCoreServ-requestAccessToken-async_O__table_et1_ftb_npb}  
Les exemples de code suivants montrent comment appeler cette méthode.

    do {
        let accessToken = try await NowSDK.core()?.requestAccessToken(for: someService)
    } catch {
        self.handleFailedAccessToken(error)
    }

## NowCoreService : requestNetworkService(pour le service : NowService) {#ariaid-title11}

Renvoie une référence à un service de réseau partagé que vous pouvez utiliser pour effectuer des demandes d'API.
Remarque :  
Il s'agit d'un service partagé. La modification des paramètres ou l'arrêt de la session peut entraîner des problèmes pour d'autres services d'entités qui partagent cette session.
{#NCoreServ-reqNetworkService_O__table_zmb_tpb_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pour le service | [Now Service (en anglais seulement)](https://servicenow-prod.fluidtopics.net/jCMrQc1DKbItTnR11Hh3oQ#NowServiceiOSProtocol "Le protocole NowService fournit une interface unique au NowSDK pour tous les services de fonctionnalité. Il définit les paramètres de configuration nécessaires pour accéder à votre ServiceNow instance.") | Service de fonctionnalité demandant le service réseau. |
[Tableau 19. Paramètres]

{#NCoreServ-reqNetworkService_O__table_zmb_tpb_npb} {#NCoreServ-reqNetworkService_O__table_dkb_zgb_npb__entry__2}

| Type | Description |
|-|-|
| Service réseau | Service de réseau partagé que vous pouvez utiliser pour effectuer des appels d'API. |
[Tableau 20. Renvoie]

{#NCoreServ-reqNetworkService_O__table_dkb_zgb_npb}  
L'exemple de code suivant montre comment appeler cette fonction.

    NowSDK.core()?.settingsPublisher(for: chatService)
    .sink(receiveCompletion: { completion in
      if case .failure(let error) = completion {
        // Setting publisher failed with error
      }
    }, receiveValue: { updatedSettings in
      // Receive array of SDK settings for chatService
    })
    .store(in: &subscriptions)

## NowCoreService : requestSettings(forservice : NowService) {#ariaid-title12}

Retourne les paramètres du Kit de développement logiciel (SDK) pour le service d'entités spécifié.
Remarque :  
Cette méthode a été déconseillée. Vous devez utiliser l'implémentation async/await de la méthode à la place.
{#NCoreServ-requestSettings_O__table_qwv_s5b_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| forservice | Now Service (en anglais seulement) | Service de fonctionnalité demandant les paramètres. |
[Tableau 21. Paramètres]

{#NCoreServ-requestSettings_O__table_qwv_s5b_npb} {#NCoreServ-requestSettings_O__table_rwv_s5b_npb__entry__2}

| Type | Description |
|-|-|
| AnyPublisher\<Settings, SettingsError\> | Réussite : Paramètres : tableau des paramètres du Kit de développement logiciel (SDK) pour le service de fonctionnalités spécifié. Échec : SettingsError : type et description de l'erreur associée. Valeurs possibles : * fetchError (en anglais seulement) * fetchFailed * invalidJSON * Fournisseur invalide * notAuthorized (en anglais seulement) * sdkNotLicensed (en anglais seulement) * settingNotFound (en anglais seulement) * Inconnu |
[Tableau 22. Renvoie]

{#NCoreServ-requestSettings_O__table_rwv_s5b_npb}  
<br />

    NowSDK.core()?.requestSettings(for: someService)

## NowCoreService : requestSettings(pour le service : NowService) lèvements asynchrones {#ariaid-title13}

Retourne les paramètres du Kit de développement logiciel (SDK) pour le service d'entités spécifié.
{#NCoreServ-requestSettings-async_O__table_qwv_s5b_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pour le service | Now Service (en anglais seulement) | Service de fonctionnalité demandant les paramètres. |
[Tableau 23. Paramètres]

{#NCoreServ-requestSettings-async_O__table_qwv_s5b_npb} {#NCoreServ-requestSettings-async_O__table_rwv_s5b_npb__entry__2}

| Type | Description |
|-|-|
| Paramètres | Renvoyé lorsque la méthode réussit. Tableau des paramètres SDK pour le service de fonctionnalités spécifié. |
| Erreur de paramètres | Levée lorsque la méthode échoue. Type et description de l'erreur associée. Valeurs possibles : * fetchError (en anglais seulement) * fetchFailed * invalidJSON * Fournisseur invalide * notAuthorized (en anglais seulement) * sdkNotLicensed (en anglais seulement) * settingNotFound (en anglais seulement) * Inconnu |
[Tableau 24. Renvoie]

{#NCoreServ-requestSettings-async_O__table_rwv_s5b_npb}  
Les exemples de code suivants montrent comment appeler cette méthode.

    do {
        let settings = try await NowSDK.core()?.requestSettings(for: someService)
        print("Received settings: \(settings)")
    } catch {
        print("Refresh saved with Settings error: \(error)")
    }

## NowCoreService : settingsPublisher(pour le service : NowService) {#ariaid-title14}

Récupère les paramètres de l'éditeur du service spécifié.
{#NCoreServ-settingsPublisher_O__table_jbw_j1c_npb__entry__3}

| Nom | Type | Description |
|-|-|-|
| pour le service | [Protocole NowService - iOS](https://servicenow-prod.fluidtopics.net/jCMrQc1DKbItTnR11Hh3oQ#NowServiceiOSProtocol "Le protocole NowService fournit une interface unique au NowSDK pour tous les services de fonctionnalité. Il définit les paramètres de configuration nécessaires pour accéder à votre ServiceNow instance.") | Service de fonctionnalité demandant l'abonnement de l'éditeur. |
[Tableau 25. Paramètres]

{#NCoreServ-settingsPublisher_O__table_jbw_j1c_npb} {#NCoreServ-settingsPublisher_O__table_kbw_j1c_npb__entry__2}

| Type | Description |
|-|-|
| AnyPublisher\<Settings, Jamais\> | Réussite : Paramètres : tableau des paramètres du Kit de développement logiciel (SDK) pour le service de fonctionnalités spécifié. |
[Tableau 26. Renvoie]

{#NCoreServ-settingsPublisher_O__table_kbw_j1c_npb}  
L'exemple de code suivant montre comment appeler cette fonction.

    NowSDK.core()?.settingsPublisher(for: chatService)
    .sink(receiveCompletion: { completion in
      if case .failure(let error) = completion {
        // Setting publisher failed with error
      }
    }, receiveValue: { updatedSettings in
      // Receive array of SDK settings for chatService
    })
    .store(in: &subscriptions)


