---
sourceDocument: Australia API Reference
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/api-reference

 Release :

    - australia

ft:locale :

    - en-US

ft:publication_title :

    - Australia API Reference

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# NowSDK architecture

# NowSDK architecture {#ariaid-title1}

Release version: Australia  
Updated March 12, 2026  
![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 minutes to read
Summarize  
![AI sparkle icon](https://servicenow.com/docs/portal-asset/ai-sparkle-icon) Summarized using AI  
This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.  

## Summary of NowSDK architecture

The NowSDK is the core component of the Mobile SDK framework designed for ServiceNow customers to integrate their mobile applications with their ServiceNow instance.
It offers a comprehensive set of classes, protocols, and APIs to enable seamless interaction with ServiceNow features, including authentication, session management, logging, and data access.
Show full answer Show less  
To utilize the Mobile SDK features, you must integrate the NowSDK library into your application and configure it by calling the core library to initialize the SDK and set the necessary parameters.

## Key Features

* **SDK Initialization and Configuration:** Allows you to configure settings and initialize the SDK before accessing its functionalities.
* **Authorization and Session Handling:** Provides seamless user authentication and session management for your mobile applications.
* **Logging Interface:** Supports customizable logging with control over log levels and the option to integrate your existing logging solution.
* **Build and Release Infrastructure:** Supports development and deployment of mobile applications integrated with ServiceNow.
* **Feature Services and APIs:** Enable specific interactions with your ServiceNow instance, including:

<!-- -->

* **NowData:** Access public REST APIs of ServiceNow with simplified authentication. Includes:
  * **NowAPIService:** Interact with public REST endpoints.
  * **NowAttachmentService:** Upload and query file attachments within iOS apps.
  * **NowGraphQLService:** Perform GraphQL queries on ServiceNow tables.
  * **NowTableService:** Perform CRUD operations on tables via REST Table API.
* **NowChat:** Embed native Virtual Agent and Live Agent chat windows with UI/UX support using **NowChatService**.
* **NowPush:** Enable push notifications through:
  * **NowPushPayload:** Define push notification protocols.
  * **NowPushService:** Manage push notification interactions.
* **NowWeb:** Load ServiceNow-hosted web pages within a native web view, handling authentication automatically via **NowWebService**.
* **NowVoice:** Integrate a real-time AI-powered voice agent with full voice session management using **NowVoiceService**.

## Practical Benefits for ServiceNow Customers

* Streamlines mobile app development by providing ready-to-use APIs and services for common ServiceNow interactions.
* Enhances user experience with built-in authentication, session management, and native UI components like chat and voice agents.
* Improves app reliability and traceability through configurable logging features.
* Supports multiple communication channels with ServiceNow data, including REST, GraphQL, chat, push notifications, web content, and voice.  
The NowSDK is the top-level entity of the Mobile SDK class
framework.
It contains numerous classes, structures, protocols, type aliases, and functions that enable you to use the significant capabilities provided by the Mobile SDK and your ServiceNow instance. This document focuses on describing the primary feature services exposed in the Mobile SDK that enable you to interact with your ServiceNow instance.

To use any of the feature services provided by the Mobile SDK, you must integrate the NowSDK library into your code. You must call the core library to configure and initialize the SDK before using any SDK functionality.

NowSDK provides the following capabilities:

* SDK initialization and settings retrieval and configuration.
* Seamless authorization and user session handling.
* Logging interface. The NowSDK provides logging services to all feature services. By default, log messages are written to system logs using platform-specific functionality. You can control the logging threshold through a parameter that is part of the call to configure the SDK. There's also an option to suppress all log messages generated by the SDK and its feature services (`log level = none`). If you already have your own logging solution in place, the Mobile SDK allows you to use it.
* Build and release infrastructure.

{#mobsdk-ios-nowsdk-arch__ul_e2r_hm5_mqb}  
NowSDK provides the following feature services and associated APIs:

* NowDataEnables third-party applications to access the public REST APIs exposed by your ServiceNow instance. Development is streamlined because NowData utilizes the authentication and session handling features provided by the NowSDK.

  Primary APIs:
  * [NowAPIService](https://servicenow-prod.fluidtopics.net/SBIg7njqWusCVeuDRafr3A#NowAPIServiceiOSAPI "The NowAPIService class provides functions that enable you to perform requests to a specified ServiceNow REST API."): This API provides functionality that enables you to interact with the publicly exposed [REST APIs](https://servicenow-prod.fluidtopics.net/qh7RcF0RI6a~i9u3octdlg "REST (REpresentational State Transfer) is a simple stateless architecture that provides standards between computer systems on the web, making it easier for them to communicate with each other.") on your ServiceNow instance.
  * [NowAttachmentService](https://servicenow-prod.fluidtopics.net/LjZmku5jEFP5Stb40_XTZg#NowAttachmentServiceiOSAPI "The NowAttachmentService class provides functions that enable you to upload and query attachments that are associated with records within a table on a ServiceNow instance."): This API provides functionality to upload and query file attachments on your ServiceNow instance within your iOS application.
  * [NowGraphQLService](https://servicenow-prod.fluidtopics.net/u65FL__QF91HBhPJgnZMJw#NowGraphQLServiceiOSAPI "The NowGraphQLService class provides functions that enable you to make requests using GraphQL queries against data on your ServiceNow instance through its GraphQL REST API."): This API provides functionality that enables you to use GraphQL queries to obtain data from tables within your ServiceNow instance using the ServiceNow REST GraphQL API.
  * [NowTableService](https://servicenow-prod.fluidtopics.net/LkMs6Gvt1GD68YtBdvIiqQ#NowTableServiceiOSAPI "The NowTableService class provides functions that enable you to perform create, read, update, and delete operations on records of existing ServiceNow tables."): This API provides functionality that enables you to perform create, read, update, and delete (CRUD) operations on existing tables in your ServiceNow instance that are serviced through the ServiceNow REST Table API.
  {#mobsdk-ios-nowsdk-arch__ul_dbt_r45_mqb}
* NowChatEnables you to embed a native [Virtual Agent](https://www.servicenow.com/docs/access?context=virtual-agent-landing-page&version=australia&pubname=australia-conversational-interfaces&ft:locale=en-US) chat window in your applications. This service includes UI/UX features.

  Primary API: [NowChatService](https://servicenow-prod.fluidtopics.net/RYiKMPqvJJayLf5g2RvNMw#NowChatServiceiOSAPI "The NowChatService class provides Virtual and Live Agent chat capabilities."): This API provides Virtual Agent and Live Agent chat capabilities to your iOS applications. Use the full-service chat capabilities provided by the ServiceNow platform by simply implementing NowChatService within your application.
* NowPushNow Push: Enables you to send unsolicited messages to your applications.

  Primary APIs:
  * [NowPushPayload](https://servicenow-prod.fluidtopics.net/gpPzTQcIDhw0bmIql5t4NQ#NowPushPayloadiOSProtocol "NowPushPayload is a generic protocol you can use to define a push notification protocol within the NowSDK framework."): This is a generic protocol that you can use to define a push notification protocol within the `NowSDK` framework.
  * [NowPushService](https://servicenow-prod.fluidtopics.net/xn6H6KRdD~U6wMnqfVeNcg#NowPushServiceiOSAPI "The NowPushService class provides functions that enable interaction with the Push Notification service."): This API provides functions that enable interaction with the Push Notification service.
  {#mobsdk-ios-nowsdk-arch__ul_ubc_zxt_vrb}
* NowWebEnables you to load web pages hosted on your ServiceNow instance in a native web view, with support for Cabrillo. It automatically handles user authentication and session management instead of forcing users to log in to the instance via a login
  web page.

  Primary API: [NowWebService](https://servicenow-prod.fluidtopics.net/azd9OsniOWvfEzBB6fAujw#NowWebServiceiOSAPI "The NowWebService class provides functions that enable the browsing of web pages on a ServiceNow instance."): This API provides functionality that enables the browsing of web pages on your ServiceNow instance.
* NowVoiceEmbed a real-time, AI-powered voice agent directly in your mobile application. NowVoice provides a full-screen voice interface that connects users to a ServiceNow voice agent, with live transcripts, mute controls, and post-call transcript sharing.

  Primary API: [NowVoiceService](https://servicenow-prod.fluidtopics.net/s_OvVdDJDVew6swvY7zHBA#NowVoiceServiceiOSAPI "The NowVoiceService class manages voice agent sessions for a single ServiceNow instance."): This API provides functions to manage voice agent sessions for a single ServiceNow instance.

