---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Classe NowCoreService - iOS

# Classe NowCoreService - iOS {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 7 min. de leitura

A classe NowCoreService fornece serviços fundamentais para os vários serviços de recursos do SDK. Esta classe só deve ser instanciada pelo NowSDK.

Os serviços do recurso, como Now Analytics e NowChat, podem acessar uma instância principal compartilhada por meio da propriedade NowSDK.core.

## NowCoreService - accessTokenDidFail (para serviço: NowService) {#ariaid-title2}

Notifica o núcleo do SDK de que o token de acesso usado para autorizar as solicitações de API para a instância ServiceNow do serviço especificado não é mais válido.
O núcleo do SDK retornará um token de acesso válido se for capaz de gerar um ou retornar um erro.  
Nota:  
Este método foi descontinuado. Em vez disso, você deve usar a implementação assíncrona/aguardar do método.
{#NCoreServ-accessTokenDidFail_O__table_p5n_vcb_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| para serviço | [NowService](https://servicenow-prod.fluidtopics.net/IA572v6lPxV2Ze9mbU_8xA#NowServiceiOSProtocol "O protocolo NowService fornece uma única interface para o NowSDK para todos os serviços de recursos. Ele define os parâmetros de configuração necessários para acessar sua instância ServiceNow.") | Serviço do recurso que solicita o token de acesso. |
[Tabela 1. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<NowSDK.AccessToken, AccessTokenProviderError\> | Sucesso: token de acesso válido. Falha: AccessTokenProviderError Valores possíveis: * userSessionError * accessTokenRetrievalFailed * hostReturnedNoTokens --- Indica um usuário convidado |
[Tabela 2. Retorna]

{#NCoreServ-accessTokenDidFail_O__table_q5n_vcb_npb}  
<br />

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

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

## NowCoreService - accessTokenDidFail (para serviço: NowService) lançamentos assíncronos {#ariaid-title3}

Notifica o núcleo do SDK de que o token de acesso usado para autorizar as solicitações de API para a instância ServiceNow do serviço especificado não é mais válido.
O núcleo do SDK retornará um token de acesso válido se for capaz de gerar um ou retornar um erro.
{#NCoreServ-accessTokDidFail-async_O__table_p5n_vcb_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| para serviço | [NowService](https://servicenow-prod.fluidtopics.net/IA572v6lPxV2Ze9mbU_8xA#NowServiceiOSProtocol "O protocolo NowService fornece uma única interface para o NowSDK para todos os serviços de recursos. Ele define os parâmetros de configuração necessários para acessar sua instância ServiceNow.") | Serviço do recurso que solicita o token de acesso. |
[Tabela 3. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| NowSDK.TokenDeAcesso | Retornado quando o método é bem-sucedido. Token de acesso válido. |
| AccessTokenProviderError | Lançado quando o método falha. Indica um erro ao recuperar um token de acesso. Valores possíveis: * userSessionError * accessTokenRetrievalFailed * hostReturnedNoTokens --- Indica um usuário convidado |
[Tabela 4. Retorna]

{#NCoreServ-accessTokDidFail-async_O__table_q5n_vcb_npb}  
Os exemplos de código a seguir mostram como chamar este método.

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

## NowCoreService - canRequestPermission(_ permissão: DevicePermission) {#ariaid-title4}

Consulta a aplicação host para saber se o serviço tem permissão para solicitar a permissão do dispositivo.
Esta função não solicita a permissão, somente se ela tem permissão para consultar a permissão do dispositivo. Os serviços do recurso devem chamar esta função para determinar se eles têm permissão para solicitar uma permissão de dispositivo desejada.
{#NCoreServ-canReqPermission_S__table_t4p_c1b_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| permissão | PermissãoDeDispositivo | Dispositivo para o qual a solicitação está sendo feita. Valores possíveis (diferencia maiúsculas de minúsculas): * câmera * local * microfone * biblioteca de fotos * spokeReknowledge |
[Tabela 5. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Booliano | Sinalizador que indica se a aplicação host permite que o SDK solicite a permissão de dispositivo especificada. Valores possíveis: * verdadeiro: a permissão do dispositivo pode ser solicitada. * falso: a permissão do dispositivo não pode ser solicitada. |
[Tabela 6. Retorna]

{#NCoreServ-canReqPermission_S__table_u4p_c1b_npb}  
<br />

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

## NowCoreService - isGuestUser (para serviço: NowService) assíncrono {#ariaid-title5}

Verifica se o usuário atual é um usuário convidado.
{#NCoreServ-isGuestUser-async_O__table_ugj_4w2_lxb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| para serviço | NowService | Serviço do recurso para o qual a verificação do usuário convidado será executada. |
[Tabela 7. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Booliano | Sinalizador que indica se o usuário atual é um usuário convidado. Valores possíveis: * verdadeiro: o usuário atual do serviço especificado é um usuário convidado. * falso: o usuário atual do serviço especificado não é um usuário convidado. |
[Tabela 8. Retorna]

{#NCoreServ-isGuestUser-async_O__table_vgj_4w2_lxb}  
O exemplo de código a seguir mostra como chamar este método.

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

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

Atualiza todas as configurações do SDK para todos os serviços, buscando-as novamente nos servidores ativos.
Para receber valores de configurações do SDK atualizados sempre que forem atualizados, assine o fornecedor fornecido pela função [NowCoreService - configuraçõesPublisher(para serviço: NowService)](https://servicenow-prod.fluidtopics.net/_Gt_sJZjLdcDP3_D1wmXmA#NCoreServ-settingsPublisher_O "Recupera as configurações do fornecedor do serviço especificado.").
{#NCoreServ-refreshAllSettings__table_ckb_zgb_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 9. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Nenhum |   |
[Tabela 10. Retorna]

{#NCoreServ-refreshAllSettings__table_dkb_zgb_npb}  
<br />

    NowSDK.core()?.refreshAllSettings()

## NowCoreService - refreshSettings (para serviço: NowService) {#ariaid-title7}

Atualiza as configurações do SDK do serviço especificado, buscando-as novamente no servidor.
Nota:  
Este método foi descontinuado. Em vez disso, você deve usar a implementação assíncrona/aguardar do método.
{#NCoreServ-refreshSettings_S__table_qv3_knb_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| para serviço | NowService | Serviço do recurso, como NowChat ou NowAnalytics, solicitando a atualização das configurações. |
[Tabela 11. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Settings, SettingsError\> | Sucesso: dicionário de configurações atualizadas do SDK. Os serviços de recursos precisam examinar os dados retornados para as configurações relevantes a seus recursos específicos. Falha: SettingsError - Tipo e descrição do erro encontrado. Valores possíveis: * erro de busca * fetchFailed * JSON inválido * provedorinválido * não autorizado * sdkNotLicensed * configuraçãoNão encontrado * desconhecido |
[Tabela 12. Retorna]

{#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 - atualizações assíncronas de refreshSettings (para serviço: NowService) {#ariaid-title8}

Atualiza as configurações do SDK do serviço especificado, buscando-as novamente no servidor.
{#NCoreServ-refreshSettings-async_S__table_qv3_knb_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| para serviço | NowService | Serviço do recurso, como NowChat ou NowAnalytics, solicitando a atualização das configurações. |
[Tabela 13. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Configurações | Retornado quando o método é bem-sucedido. Dicionário de configurações atualizadas do SDK. Os serviços de recursos precisam examinar os dados retornados para as configurações relevantes a seus recursos específicos. |
| Erro nas configurações | Lançado quando o método falha. Valores possíveis: * erro de busca * fetchFailed * JSON inválido * provedorinválido * não autorizado * sdkNotLicensed * configuraçãoNão encontrado * desconhecido |
[Tabela 14. Retorna]

{#NCoreServ-refreshSettings-async_S__table_rv3_knb_npb}  
Os exemplos de código a seguir mostram como chamar este método.

    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 (para serviço: NowService) {#ariaid-title9}

Adquire um token de acesso para o serviço especificado.
Nota:  
Este método foi descontinuado. Em vez disso, você deve usar a implementação assíncrona/aguardar do método.
{#NCoreServ-requestAccessToken_O__table_dt1_ftb_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| para serviço | [NowService](https://servicenow-prod.fluidtopics.net/IA572v6lPxV2Ze9mbU_8xA#NowServiceiOSProtocol "O protocolo NowService fornece uma única interface para o NowSDK para todos os serviços de recursos. Ele define os parâmetros de configuração necessários para acessar sua instância ServiceNow.") | Serviço do recurso que solicita o token de acesso. |
[Tabela 15. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<NowSDK.AccessToken, AccessTokenProviderError\> | Sucesso: NowSDK.AccessToken - Token de acesso a ser usado para autorizar solicitações de API feitas para uma instância ServiceNow. Falha: AccessTokenProviderError - Tipo e descrição do erro encontrado. Valores possíveis: * accessTokenRetrievalFailed * hostReturnedNoTokens --- Indica um usuário convidado * userSessionError |
[Tabela 16. Retorna]

{#NCoreServ-requestAccessToken_O__table_et1_ftb_npb}  
<br />

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

## NowCoreService - requestAccessToken (para serviço: NowService) lançamentos assíncronos {#ariaid-title10}

Adquire um token de acesso para o serviço especificado.
{#NCoreServ-requestAccessToken-async_O__table_dt1_ftb_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| para serviço | [NowService](https://servicenow-prod.fluidtopics.net/IA572v6lPxV2Ze9mbU_8xA#NowServiceiOSProtocol "O protocolo NowService fornece uma única interface para o NowSDK para todos os serviços de recursos. Ele define os parâmetros de configuração necessários para acessar sua instância ServiceNow.") | Serviço do recurso que solicita o token de acesso. |
[Tabela 17. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| NowSDK.TokenDeAcesso | Retornado quando o método é bem-sucedido. Token de acesso a ser usado para autorizar solicitações de API feitas para uma instância ServiceNow. |
| AccessTokenProviderError | Lançado quando o método falha. Indica um erro ao recuperar um token de acesso. Valores possíveis: * accessTokenRetrievalFailed * hostReturnedNoTokens --- Indica um usuário convidado * userSessionError |
[Tabela 18. Retorna]

{#NCoreServ-requestAccessToken-async_O__table_et1_ftb_npb}  
Os exemplos de código a seguir mostram como chamar este método.

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

## NowCoreService - requestNetworkService (para serviço: NowService) {#ariaid-title11}

Retorna uma referência a um serviço de rede compartilhado que você pode usar para fazer solicitações de API.
Nota:  
Este é um serviço compartilhado. Alterar as configurações ou encerrar a sessão pode causar problemas para outros serviços da feição que compartilham esta sessão.
{#NCoreServ-reqNetworkService_O__table_zmb_tpb_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| para serviço | [NowService](https://servicenow-prod.fluidtopics.net/IA572v6lPxV2Ze9mbU_8xA#NowServiceiOSProtocol "O protocolo NowService fornece uma única interface para o NowSDK para todos os serviços de recursos. Ele define os parâmetros de configuração necessários para acessar sua instância ServiceNow.") | Serviço do recurso que solicita o serviço de rede. |
[Tabela 19. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Serviço de rede | Serviço de rede compartilhado que você pode usar para fazer chamadas de API. |
[Tabela 20. Retorna]

{#NCoreServ-reqNetworkService_O__table_dkb_zgb_npb}  
O exemplo de código a seguir mostra como chamar esta função.

    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}

Retorna as configurações do SDK para o serviço do recurso especificado.
Nota:  
Este método foi descontinuado. Em vez disso, você deve usar a implementação assíncrona/aguardar do método.
{#NCoreServ-requestSettings_O__table_qwv_s5b_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| paraserviço | NowService | Serviço do recurso que solicita as configurações. |
[Tabela 21. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Settings, SettingsError\> | Sucesso: configurações - Matriz de configurações do SDK para o serviço da feição especificado. Falha: SettingsError - Tipo e descrição do erro associado. Valores possíveis: * erro de busca * fetchFailed * JSON inválido * provedorinválido * não autorizado * sdkNotLicensed * configuraçãoNão encontrado * desconhecido |
[Tabela 22. Retorna]

{#NCoreServ-requestSettings_O__table_rwv_s5b_npb}  
<br />

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

## NowCoreService - lances assíncronos de requestSettings (para serviço: NowService) {#ariaid-title13}

Retorna as configurações do SDK para o serviço do recurso especificado.
{#NCoreServ-requestSettings-async_O__table_qwv_s5b_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| para serviço | NowService | Serviço do recurso que solicita as configurações. |
[Tabela 23. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Configurações | Retornado quando o método é bem-sucedido. Matriz de configurações do SDK para o serviço da feição especificado. |
| Erro nas configurações | Lançado quando o método falha. Tipo e descrição do erro associado. Valores possíveis: * erro de busca * fetchFailed * JSON inválido * provedorinválido * não autorizado * sdkNotLicensed * configuraçãoNão encontrado * desconhecido |
[Tabela 24. Retorna]

{#NCoreServ-requestSettings-async_O__table_rwv_s5b_npb}  
Os exemplos de código a seguir mostram como chamar este método.

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

## NowCoreService - configuraçõesPublisher(para serviço: NowService) {#ariaid-title14}

Recupera as configurações do fornecedor do serviço especificado.
{#NCoreServ-settingsPublisher_O__table_jbw_j1c_npb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| para serviço | [Protocolo NowService - iOS](https://servicenow-prod.fluidtopics.net/IA572v6lPxV2Ze9mbU_8xA#NowServiceiOSProtocol "O protocolo NowService fornece uma única interface para o NowSDK para todos os serviços de recursos. Ele define os parâmetros de configuração necessários para acessar sua instância ServiceNow.") | Serviço do recurso que solicita a assinatura do fornecedor. |
[Tabela 25. Parâmetros]

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

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Settings, Never\> | Sucesso: configurações - Matriz de configurações do SDK para o serviço da feição especificado. |
[Tabela 26. Retorna]

{#NCoreServ-settingsPublisher_O__table_kbw_j1c_npb}  
O exemplo de código a seguir mostra como chamar esta função.

    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)


