---
sourceDocument: オーストラリア API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/api-reference

 Release :

    - australia

ft:locale :

    - ja-JP

ft:publication_title :

    - オーストラリア API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# NowChat API - iOS

# NowChat API - iOS {#ariaid-title1}

* リリースバージョン: Australia
* 
* 更新日 2026年03月12日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：4分

NowChat API は、ユーザーが NowChat サービスインスタンスをインスタンス化できるようにするトップレベルのグローバル API です。

## NowChat - makeChatService(instanceUrl: URL, delegate: NowChatServiceDelegate?) {#ariaid-title2}

指定された構成で NowChatService のインスタンスを作成します。
注:  
この関数を呼び出す前に SDK を初期化する必要があります。そうしないと、完了ブロックが `sdkNotConfigured` エラーで呼び出されます。SDK を初期化するには、目的の構成で `NowSDK.configure()` メソッドを呼び出します。
{#NChat-makeChatService-pub_S_O_O__table_pft_qzv_kqb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| instanceUrl | URL | チャットサービスを提供する ServiceNow インスタンスの URL。 |
| 代理人 | NowChatService委任 | オプション。NowChatServiceDelegate プロトコルを実装する Delegate オブジェクト。 |
[表 : 1. パラメーター]

{#NChat-makeChatService-pub_S_O_O__table_pft_qzv_kqb} {#NChat-makeChatService-pub_S_O_O__table_qft_qzv_kqb__entry__2}

| タイプ | 説明 |
|-|-|
| AnyPublisher\<[NowChatService](https://servicenow-prod.fluidtopics.net/3BIGTN_cKzccpzZLGLOcjQ#NowChatServiceiOSAPI "NowChatService クラスは、仮想チャット機能とライブエージェントチャット機能を提供します。")、NowServiceError\> | 成功した場合、初期化された NowChatService オブジェクトを返します。失敗した場合は、NowServiceError オブジェクトを返します。 |
[表 : 2. 返される内容]

{#NChat-makeChatService-pub_S_O_O__table_qft_qzv_kqb}  
次のコード例は、この関数を呼び出す方法を示しています。

    ....
    guard 
      let jwtUrl = URL(string: "http://xx.xx.xx.xxx:8080"),
      let instanceUrl = URL(string: "https://instance.service-now.com") else {
        return
      }
    // AuthorizationProvider -- struct conforming to NowSDKAuthorizationProviding protocol
    let authorizationProvider = AuthorizationProvider(userEmail: "sdk@servicenow.com", jwtProviderUrl: jwtUrl, clientId: "deb8756b452d201039231ca568f26511")
            
    // PermissionProvider -- class conforming to DevicePermissionDelegate protocol
    let permissionProvider = PermissionProvider()
    let config = NowSDKConfiguration(authorizationProvider: authorizationProvider, permissionDelegate: permissionProvider, logLevel: .debug)
    	
    do {
      try NowSDK.configure(with: config)
      let chat = setup(with: instanceUrl)
    } catch {
      // Return ConfigurationError.sdkError(error)
    }
    .....

    func initializeChatService(with instanceURL: URL) -> AnyPublisher<NowService, ConfigurationError> {
      NowChat.makeChatService(instanceUrl: instanceURL, delegate: nil)
      .mapError { .sdkError($0) }
      .map { $0 as NowService }
      .eraseToAnyPublisher()
    }

## NowChat - makeChatService(instanceUrl: URL, delegate: NowChatServiceDelegate?, completion: @escaping ((Result\<NowChatService, NowServiceError\>) -\> Void)) {#ariaid-title3}

指定された構成で `NowChatService` のインスタンスを作成し、完了したら、指定された補完ハンドラーを呼び出します。
注:  
この関数を呼び出す前に SDK を初期化する必要があります。そうしないと、完了ブロックが `sdkNotConfigured` エラーで呼び出されます。SDK を初期化するには、目的の構成で `NowSDK.configure()` メソッドを呼び出します。
{#NChat-makeChatService_S_O_O__table_nv2_5xv_kqb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| instanceUrl | URL | チャットサービスを提供する ServiceNow インスタンスの URL。 |
| 代理人 | NowChatService委任 | オプション。NowChatServiceDelegate プロトコルを実装する Delegate オブジェクト。 |
| 完了 | @escaping ((result\<[NowChatService](https://servicenow-prod.fluidtopics.net/3BIGTN_cKzccpzZLGLOcjQ#NowChatServiceiOSAPI "NowChatService クラスは、仮想チャット機能とライブエージェントチャット機能を提供します。"), NowServiceError\>) -\> void) | 初期化された `NowChatService` インスタンスまたは初期化に失敗した理由を示す `NowServiceError` のいずれかを含む呼び出される補完ハンドラー。 |
[表 : 3. パラメーター]

{#NChat-makeChatService_S_O_O__table_nv2_5xv_kqb} {#NChat-makeChatService_S_O_O__table_ov2_5xv_kqb__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 4. 返される内容]

{#NChat-makeChatService_S_O_O__table_ov2_5xv_kqb}  
次のコード例は、この関数を呼び出す方法を示しています。

    func initializeChatService() {
      NowChat.makeChatService(instanceUrl: instanceUrl, delegate: self) { [weak self] result in
        guard let self = self else { return }
                
        switch result {
        case .success(let service):
          self.chatService = service
        case .failure(let error):
          debugPrint("Creating the chat service failed with error: \(error)")
        }
        self.viewState = self.makeViewState()
      }
    }


