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


---

# NowVoiceThemeable protocol - iOS

# NowVoiceThemeable protocol - iOS {#ariaid-title1}

Release version: Australia  
Updated July 14, 2026  
![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 minute to read  
Sets the colors to apply to NowVoice UI elements.

To match the voice UI to your app's visual identity, create a type conforming to NowVoiceThemeable and pass it to [NowVoiceService - startVoice(endpoint:uiConfiguration:callbacks:theme:)](https://servicenow-prod.fluidtopics.net/s_OvVdDJDVew6swvY7zHBA#NVoiceServ-startVoice_O_O_O_O "Creates a UIViewController containing the voice agent UI, ready to be presented in a modal.") or [NowVoiceService - updateTheme(theme:)](https://servicenow-prod.fluidtopics.net/s_OvVdDJDVew6swvY7zHBA#NVoiceServ-updateTheme_O "Updates the visual theme of the currently active voice UI.").  
{#NVoiceThemeableiOSProtocol__table_vx2_klw_nv4__entry__3}

| Name | Type | Description |
|-|-|-|
| color | [NowUIColoring](https://servicenow-prod.fluidtopics.net/fncPYHhK0PVG29ulf2_Bjw "Use NowUIColoring to create themes with NowWebThemeable, NowChatThemeable, and NowVoiceThemeable. The NowUIColoring interface contains all the colors used by all NowSDK modules.") | Colors to apply to NowVoice UI elements. |
[Table 1. Properties]

{#NVoiceThemeableiOSProtocol__table_vx2_klw_nv4}  
This example shows how to apply custom app colors to the voice UI.

    import NowVoice

    let instanceUrl = URL(string: "https://your-instance.service-now.com")!

    do {
        let voiceService = try await NowVoice.makeVoiceService(instanceUrl: instanceUrl)
    } catch {
        // Handle NowServiceError (see Error reference below)
        print("Failed to create voice service: \(error)")
    }

    struct MyVoiceTheme: NowVoiceThemeable {
        var color: NowUIColoring = MyAppColors()
    }

    // Apply at voice session launch
    let vc = try await voiceService.startVoice(endpoint: endpoint, theme: MyVoiceTheme())

    // Or update while a voice session is active
    voiceService.updateTheme(theme: MyVoiceTheme())

**Related concepts**   

* [NowVoiceDefaultTheme structure - iOS](https://servicenow-prod.fluidtopics.net/03n1e_DysVRF5a0ai~ZzQQ#NVoiceDefThemeiOSStruct "The default implementation of NowVoiceThemeable.")

