{"id":49373464,"url":"https://github.com/voiceittech/voiceit3-ios-sdk","last_synced_at":"2026-06-06T00:04:51.285Z","repository":{"id":56926120,"uuid":"85986038","full_name":"voiceittech/voiceit3-ios-sdk","owner":"voiceittech","description":"A library that gives you access to VoiceIt's API 3.0 featuring Voice + Face Verification and Identification right in your iOS app.","archived":false,"fork":false,"pushed_at":"2026-04-27T23:53:35.000Z","size":42786,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-04-28T01:25:31.918Z","etag":null,"topics":["api-wrapper","biometrics","face","face-recognition","ios","sdk","voice","voice-recognition","voiceit"],"latest_commit_sha":null,"homepage":"https://voiceit.io","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/voiceittech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2017-03-23T18:49:41.000Z","updated_at":"2026-04-27T19:51:35.000Z","dependencies_parsed_at":"2024-02-20T04:35:44.360Z","dependency_job_id":null,"html_url":"https://github.com/voiceittech/voiceit3-ios-sdk","commit_stats":{"total_commits":230,"total_committers":19,"mean_commits":"12.105263157894736","dds":0.7956521739130434,"last_synced_commit":"e7e5555aa3a9638651456060fc9af53a08ec0a71"},"previous_names":["voiceittech/voiceit3-iossdk","voiceittech/voiceit2-iossdk","voiceittech/voiceit3-ios-sdk"],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/voiceittech/voiceit3-ios-sdk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voiceittech%2Fvoiceit3-ios-sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voiceittech%2Fvoiceit3-ios-sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voiceittech%2Fvoiceit3-ios-sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voiceittech%2Fvoiceit3-ios-sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/voiceittech","download_url":"https://codeload.github.com/voiceittech/voiceit3-ios-sdk/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voiceittech%2Fvoiceit3-ios-sdk/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33964367,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-05T02:00:06.157Z","response_time":120,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api-wrapper","biometrics","face","face-recognition","ios","sdk","voice","voice-recognition","voiceit"],"created_at":"2026-04-28T01:04:41.725Z","updated_at":"2026-06-06T00:04:51.275Z","avatar_url":"https://github.com/voiceittech.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"https://raw.githubusercontent.com/voiceittech/voiceit3-ios-sdk/main/Graphics/ios.png\" width=\"100%\" style=\"width:100%\"\u003e\n\n\n[![Build](https://github.com/voiceittech/voiceit3-ios-sdk/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/voiceittech/voiceit3-ios-sdk/actions/workflows/test.yml)\n[![Dependabot](https://img.shields.io/github/issues-pr/voiceittech/voiceit3-ios-sdk/dependencies?label=dependabot\u0026logo=dependabot\u0026color=025e8c)](https://github.com/voiceittech/voiceit3-ios-sdk/pulls?q=is%3Apr+label%3Adependencies)\n[![Version](https://img.shields.io/badge/version-3.2.0-blue)](https://github.com/voiceittech/voiceit3-ios-sdk)\n[![License: MIT](https://img.shields.io/badge/license-MIT-green)](https://github.com/voiceittech/voiceit3-ios-sdk/blob/main/LICENSE)\n[![Platform](https://img.shields.io/badge/platform-iOS%2015%2B-lightgrey)](https://github.com/voiceittech/voiceit3-ios-sdk)\n[![Swift Package Manager](https://img.shields.io/badge/SPM-compatible-brightgreen)](https://swift.org/package-manager/)\n[![VoiceIt API](https://img.shields.io/badge/VoiceIt-API%203.0-blue)](https://voiceit.io)\n\nA fully comprehensive SDK that gives you access to VoiceIt's API 3.0 featuring Voice + Face Verification and Identification with built-in user interfaces.\n\n## Table of Contents\n\n* [UI Previews](#ui-previews)\n* [Getting Started](#getting-started)\n* [Installation](#installation)\n* [Local Installation](#local-installation)\n* [Strings and Prompts](#strings-and-prompts)\n* [API Calls](#api-calls)\n  * [Initialization](#initialization)\n  * [Encapsulated Methods](#encapsulated-methods)\n      * [Encapsulated Voice Enrollment](#encapsulated-voice-enrollment)\n      * [Encapsulated Face Enrollment](#encapsulated-face-enrollment)\n      * [Encapsulated Video Enrollment](#encapsulated-video-enrollment)\n      * [Encapsulated Voice Verification](#encapsulated-voice-verification)\n      * [Encapsulated Face Verification](#encapsulated-face-verification)\n      * [Encapsulated Video Verification](#encapsulated-video-verification)\n      * [Encapsulated Voice Identification](#encapsulated-voice-identification)\n  * [User API Calls](#user-api-calls)\n      * [Get All Users](#get-all-users)\n      * [Create User](#create-user)\n      * [Check User Exists](#check-if-specific-user-exists)\n      * [Get Groups for User](#get-groups-for-user)\n      * [Delete User](#delete-a-specific-user)\n  * [Group API Calls](#group-api-calls)\n      * [Get All Groups](#get-all-groups)\n      * [Get Group](#get-a-specific-group)\n      * [Group exists](#check-if-group-exists)\n      * [Create Group](#create-group)\n      * [Add User to Group](#add-user-to-group)\n      * [Remove User from Group](#remove-user-from-group)     \n      * [Delete Group](#delete-group)\n  * [Enrollment API Calls](#enrollment-api-calls)\n      * [Get All Voice Enrollments](#get-all-voice-enrollments)\n      * [Get All Face Enrollments](#get-all-face-enrollments)\n      * [Get All Video Enrollments](#get-all-video-enrollments)\n      * [Create Voice Enrollment](#create-voice-enrollment)\n      * [Create Face Enrollment](#create-face-enrollment)\n      * [Create Video Enrollment](#create-video-enrollment)\n      * [Delete All Enrollments](#delete-all-enrollments)\n  * [Verification API Calls](#verification-api-calls)\n      * [Voice Verification](#voice-verification)\n      * [Face Verification](#face-verification)\n      * [Video Verification](#video-verification)\n  * [Identification API Calls](#identification-api-calls)\n      * [Voice Identification](#voice-identification)\n      * [Video Identification](#video-identification)\n\n\n## UI Screenshots\n\n\u003cdiv\u003e\n  \u003cimg width=\"250px\" src=\"https://raw.githubusercontent.com/voiceittech/voiceit3-ios-sdk/main/Graphics/demo_top.png?v=4\" style=\"display: inline-block !important;\"/\u003e\u003cimg width=\"250px\" src=\"https://raw.githubusercontent.com/voiceittech/voiceit3-ios-sdk/main/Graphics/demo_bottom.png?v=4\" style=\"display: inline-block !important;\"/\u003e\u003cimg width=\"250px\" src=\"https://raw.githubusercontent.com/voiceittech/voiceit3-ios-sdk/main/Graphics/voiceVerification.png?v=4\" style=\"display: inline-block !important\"/\u003e\u003cimg width=\"250px\" src=\"https://raw.githubusercontent.com/voiceittech/voiceit3-ios-sdk/main/Graphics/faceVerification.png?v=4\" style=\"display: inline-block !important;\"/\u003e\u003cimg width=\"250px\" src=\"https://raw.githubusercontent.com/voiceittech/voiceit3-ios-sdk/main/Graphics/videoVerification.png?v=4\" style=\"display: inline-block !important;\"/\u003e\n\u003c/div\u003e\n\n## Getting Started\n\nSign up at [voiceit.io/pricing](https://voiceit.io/pricing) to get your API Key and Token, then log in to the [Dashboard](https://dashboard.voiceit.io) to manage your account.\n\n\u003cimg src=\"https://raw.githubusercontent.com/voiceittech/voiceit3-ios-sdk/main/Graphics/getcredentials.png\" alt=\"API Key and Token\" width=\"400px\" /\u003e\n\n## Installation\n\n### Swift Package Manager\n\nIn Xcode, go to **File \u003e Add Package Dependencies** and enter the repository URL:\n\n```\nhttps://github.com/voiceittech/voiceit3-ios-sdk.git\n```\n\nSelect the version and add it to your target.\n\n### Permissions\n\nAdd the following keys to your **Info.plist**:\n\n* `NSCameraUsageDescription` - Required for Face Biometrics\n* `NSMicrophoneUsageDescription` - Required for Voice Biometrics\n\n\n## Requirements \n\n#### Audio Recording\nThe SDK records audio at the following specifications for optimal biometric accuracy:\n\n| Setting | Value |\n|---------|-------|\n| Sample Rate | 48 kHz |\n| Bit Depth | 16-bit |\n| Channels | Mono |\n| Format | Linear PCM (WAV) |\n\n\u003e **Note:** Recordings below 16 kHz sample rate will significantly degrade biometric accuracy and may result in failed enrollments or verifications.\n\n#### Deployment Target (iOS Version)\nPlease make sure that the minimum Deployment Target for your project is iOS 15.\n\n#### Voiceprint Phrases\n\nMake sure you review your Voiceprint Phrases by navigating to \u003ca href=\"https://dashboard.voiceit.io/phraseManagement\" target=\"_blank\"\u003eDashboard\u003c/a\u003e in order to know what to pass for voicePrintPhrase parameter.\n\n## Strings and Prompts\n\nAll strings utilized in the encapsulated views for the SDK and the prompts provided to the user can be modified by editing the strings in the Prompts.strings file located at\n\n```\nvoiceit3-ios-sdk/Classes/Base.lproj/Prompts.strings\n```\n\n## API Calls\n\n### Initialization\n\n#### *Swift*\n\nFirst import *VoiceIt3IosSDK* in your Swift file then initialize a reference to the SDK inside a ViewController, passing in a reference to the ViewController as the first argument, then the API Credentials, and finally a styles dictionary ( *kThemeColor* can be any hexadecimal color code and *kIconStyle* can be \"default\" or \"monochrome\").\n\n```swift\nimport VoiceIt3IosSDK\n\nclass ViewController: UIViewController {\n    var myVoiceIt:VoiceItAPIThree?\n\n    override func viewDidLoad() {\n        super.viewDidLoad()\n        /* Reference to ViewController , API Credentials and styles dictionary*/\n        let styles = NSMutableDictionary(dictionary: [\"kThemeColor\":\"#FBC132\",\"kIconStyle\":\"default\"])\n        self.myVoiceIt = VoiceItAPIThree(self, apiKey: \"API_KEY_HERE\", apiToken: \"API_TOKEN_HERE\", styles: styles)\n    }\n}\n```\n#### *Objective-C*\n\nFirst import *VoiceItAPIThree.h* into your Objective-C file, then initialize a reference to the SDK inside a ViewController, passing in a reference to the ViewController as the first argument.\n\n```objc\n#import \"ViewController.h\"\n#import \"VoiceItAPIThree.h\"\n\n@interface ViewController ()\n    @property VoiceItAPIThree * myVoiceIt;\n@end\n\n@implementation ViewController\n\n- (void)viewDidLoad {\n    [super viewDidLoad];\n    /* Reference to ViewController , API Credentials and styles dictionary*/\n    NSMutableDictionary * styles = [[NSMutableDictionary alloc] init];\n    [styles setObject:@\"#FBC132\" forKey:@\"kThemeColor\"];\n    [styles setObject:@\"default\" forKey:@\"kIconStyle\"];\n    self.myVoiceIt = [[VoiceItAPIThree alloc] init:self apiKey:@\"API_KEY_HERE\" apiToken:@\"API_TOKEN_HERE\" styles: styles];\n}\n```\n### Encapsulated Methods\n\n#### Encapsulated Voice Enrollment\n\nCreates three voice enrollments for user with the given userId(begins with 'usr_') and contentLanguage('en-US','es-ES' etc.) and a given phrase such as \"my face and voice identify me\". Note: Immediately upon calling this method it displays the enrollment view controller that completely takes care of the three enrollments, including the UI, and provides relevant callbacks for whether the user cancelled their enrollments or successfully completed them.\n\n##### *Swift*\n```swift\nmyVoiceIt?.encapsulatedVoiceEnrollUser(\"USER_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", voicePrintPhrase: \"my face and voice identify me\", userEnrollmentsCancelled: {\n    print(\"User Enrollment Cancelled\")\n}, userEnrollmentsPassed: {\n    print(\"User Enrollments Passed\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt encapsulatedVoiceEnrollUser:@\"USER_ID_HERE\" contentLanguage:@\"CONTENT_LANGUAGE_HERE\" voicePrintPhrase:@\"my face and voice identify me\" userEnrollmentsCancelled:^{\n    NSLog(@\"User Enrollments Cancelled\");\n} userEnrollmentsPassed:^{\n    NSLog(@\"User Enrollments Passed\");\n}];\n```\n\n#### Encapsulated Face Enrollment\n\nCreates a face enrollment for user with the given userId(begins with 'usr_'). Note: Immediately upon calling this method it displays the enrollment view controller that completely takes care of enrolling the user's face, including the UI, and provides relevant callbacks for whether the user cancelled their enrollment or successfully completed it.\n\n##### *Swift*\n```swift\nmyVoiceIt?.encapsulatedFaceEnrollUser(\"USER_ID_HERE\", userEnrollmentsCancelled: {\n    print(\"User Enrollment Cancelled\")\n}, userEnrollmentsPassed: {\n    print(\"User Enrollments Passed\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt encapsulatedFaceEnrollUser:@\"USER_ID_HERE\" userEnrollmentsCancelled:^{\n    NSLog(@\"User Enrollments Cancelled\");\n} userEnrollmentsPassed:^{\n    NSLog(@\"User Enrollments Passed\");\n}];\n```\n\n#### Encapsulated Video Enrollment\n\nCreates three video enrollments for user with the given userId(begins with 'usr_') and contentLanguage('en-US','es-ES' etc.) and a given phrase such as \"my face and voice identify me\". Note: Immediately upon calling this method it displays the enrollment view controller that completely takes care of the three enrollments, including the UI, and provides relevant callbacks for whether the user cancelled their enrollments or successfully completed them.\n\n##### *Swift*\n```swift\nmyVoiceIt?.encapsulatedVideoEnrollUser(\"USER_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", voicePrintPhrase: \"my face and voice identify me\", userEnrollmentsCancelled: {\n    print(\"User Enrollment Cancelled\")\n}, userEnrollmentsPassed: {\n    print(\"User Enrollments Passed\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt encapsulatedVideoEnrollUser:@\"USER_ID_HERE\" contentLanguage:@\"CONTENT_LANGUAGE_HERE\" voicePrintPhrase:@\"my face and voice identify me\" userEnrollmentsCancelled:^{\n    NSLog(@\"User Enrollments Cancelled\");\n} userEnrollmentsPassed:^{\n    NSLog(@\"User Enrollments Passed\");\n}];\n```\n\n#### Encapsulated Voice Verification\n\nVerify user with given userId(begins with 'usr_'). Note: Immediately upon calling this method it displays a view controller that records and verifies the user's voice and provides relevant callbacks for whether the verification was successful or not, and the associated voice confidence.\n\n##### *Swift*\n```swift\nmyVoiceIt?.encapsulatedVoiceVerification(\"USER_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", voicePrintPhrase: \"my face and voice identify me\", userVerificationCancelled: {\n    print(\"User Cancelled Verification\");\n}, userVerificationSuccessful: {(voiceConfidence, jsonResponse) in\n    print(\"User Verification Successful, voiceConfidence : \\(voiceConfidence)\")\n}, userVerificationFailed: { (voiceConfidence, jsonResponse) in\n    print(\"User Verification Failed, voiceConfidence : \\(voiceConfidence)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt encapsulatedVoiceVerification:@\"USER_ID_HERE\" contentLanguage:@\"CONTENT_LANGUAGE_HERE\" voicePrintPhrase:@\"my face and voice identify me\" userVerificationCancelled:^{\n    NSLog(@\"User Cancelled Verification\");\n} userVerificationSuccessful:^(float voiceConfidence, NSString * jsonResponse){\n    NSLog(@\"User Verification Successful, voiceConfidence : %g\",voiceConfidence);\n} userVerificationFailed:^(float voiceConfidence, NSString * jsonResponse){\n    NSLog(@\"User Verification Failed, voiceConfidence : %g\",voiceConfidence);\n}];\n```\n\n#### Encapsulated Face Verification\n\n\n##### *Swift*\n```swift\nmyVoiceIt?.encapsulatedFaceVerification(\"USER_ID_HERE\", doAudioPrompts:true, userVerificationCancelled: {\n    print(\"User Cancelled Verification\");\n}, userVerificationSuccessful: {(faceConfidence, jsonResponse) in\n    print(\"User Verification Successful faceConfidence : \\(faceConfidence)\")\n}, userVerificationFailed: { (faceConfidence, jsonResponse) in\n    print(\"User Verification Failed, faceConfidence : \\(faceConfidence)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt encapsulatedFaceVerification:@\"USER_ID_HERE\" doAudioPrompts:YES userVerificationCancelled:^{\n    NSLog(@\"User Cancelled Verification\");\n} userVerificationSuccessful:^(float faceConfidence, NSString * jsonResponse){\n    NSLog(@\"User Verification Successful faceConfidence : %g\", faceConfidence);\n} userVerificationFailed:^(float faceConfidence, NSString * jsonResponse){\n    NSLog(@\"User Verification Failed, faceConfidence : %g\",faceConfidence);\n}];\n```\n\n\n#### Encapsulated Video Verification\n\n\n##### *Swift*\n```swift\nmyVoiceIt?.encapsulatedVideoVerification(\"USER_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", voicePrintPhrase: \"my face and voice identify me\", doAudioPrompts:true, userVerificationCancelled: {\n    print(\"User Cancelled Verification\");\n}, userVerificationSuccessful: {(faceConfidence, voiceConfidence, jsonResponse) in\n    print(\"User Verification Successful, voiceConfidence : \\(voiceConfidence), faceConfidence : \\(faceConfidence)\")\n}, userVerificationFailed: { (faceConfidence, voiceConfidence, jsonResponse) in\n    print(\"User Verification Failed, voiceConfidence : \\(voiceConfidence), faceConfidence : \\(faceConfidence)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt encapsulatedVideoVerification:@\"USER_ID_HERE\" contentLanguage:@\"CONTENT_LANGUAGE_HERE\" voicePrintPhrase:@\"my face and voice identify me\" doAudioPrompts:YES userVerificationCancelled:^{\n    NSLog(@\"User Cancelled Verification\");\n} userVerificationSuccessful:^(float faceConfidence, float voiceConfidence, NSString * jsonResponse){\n    NSLog(@\"User Verification Successful, voiceConfidence : %g , faceConfidence : %g\",voiceConfidence, faceConfidence);\n} userVerificationFailed:^(float faceConfidence, float voiceConfidence, NSString * jsonResponse){\n    NSLog(@\"User Verification Failed, voiceConfidence : %g , faceConfidence : %g\",voiceConfidence, faceConfidence);\n}];\n```\n\n#### Encapsulated Voice Identification\n\nIdentify user in group with given groupId(begins with 'grp_'). Note: Immediately upon calling this method it displays a view controller that records and identifies the user's voice and provides relevant callbacks for whether the identification was successful or not, and the associated voice confidence.\n\n##### *Swift*\n```swift\nmyVoiceIt?.encapsulatedVoiceIdentification(\"GROUP_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", voicePrintPhrase: \"my face and voice identify me\", userIdentificationCancelled: {\n    print(\"User Cancelled Identification\");\n}, userIdentificationSuccessful: {(voiceConfidence, foundUserId, jsonResponse) in\n    print(\"User Identification Successful, userId : \\(foundUserId) voiceConfidence : \\(voiceConfidence)\")\n}, userIdentificationFailed: { (voiceConfidence, jsonResponse) in\n    print(\"User Identification Failed, voiceConfidence is \\(voiceConfidence)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt encapsulatedVoiceIdentification:@\"GROUP_ID_HERE\" contentLanguage:@\"CONTENT_LANGUAGE_HERE\" voicePrintPhrase:@\"my face and voice identify me\" userIdentificationCancelled:^{\n    NSLog(@\"User Cancelled Identification\");\n} userIdentificationSuccessful:^(float voiceConfidence, NSString * foundUserId, NSString * jsonResponse){\n    NSLog(@\"User Identification Successful, userId: %@ voiceConfidence : %g\",foundUserId, voiceConfidence);\n} userIdentificationFailed:^(float faceConfidence, float voiceConfidence, NSString * jsonResponse){\n    NSLog(@\"User Identification Failed, voiceConfidence : %g\",voiceConfidence);\n}];\n```\n\n### User API Calls\n\n#### Get All Users\n\nGet all users associated with the apiKey\n\n##### *Swift*\n```swift\nmyVoiceIt?.getAllUsers({\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n##### *Objective-C*\n```objc\n[self.myVoiceIt getAllUsers:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Create User\n\nCreate a new user\n\n##### *Swift*\n```swift\nmyVoiceIt?.createUser({\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n##### *Objective-C*\n```objc\n[self.myVoiceIt createUser:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Check if Specific User Exists\n\nCheck whether a user exists for given userId(begins with 'usr_')\n\n##### *Swift*\n```swift\nmyVoiceIt?.checkUserExists(\"USER_ID_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n##### *Objective-C*\n```objc\n[self.myVoiceIt checkUserExists:@\"USER_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Get Groups for User\n\nGet a list of groups that the user with the given userId(begins with 'usr_') is a part of\n\n##### *Swift*\n```swift\nmyVoiceIt?.getGroupsForUser(\"USER_ID_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n##### *Objective-C*\n```objc\n[self.myVoiceIt getGroupsForUser:@\"USER_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Delete a Specific User\n\nDelete user with given userId(begins with 'usr_')\n\n##### *Swift*\n```swift\nmyVoiceIt?.deleteUser(\"USER_ID_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n##### *Objective-C*\n```objc\n[self.myVoiceIt deleteUser:@\"USER_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n### Group API Calls\n\n#### Get All Groups\n\nGet all groups associated with apiKey\n\n##### *Swift*\n```swift\nmyVoiceIt?.getAllGroups({\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n##### *Objective-C*\n```objc\n[self.myVoiceIt getAllGroups:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Get a Specific Group\n\nReturns a group for the given groupId(begins with 'grp_')\n\n##### *Swift*\n```swift\nmyVoiceIt?.getGroup(\"GROUP_ID_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n##### *Objective-C*\n```objc\n[self.myVoiceIt getGroup:@\"GROUP_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Check if Group Exists\n\nChecks if group with given groupId(begins with 'grp_') exists\n\n##### *Swift*\n```swift\nmyVoiceIt?.groupExists(\"GROUP_ID_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt groupExists:@\"GROUP_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Create Group\n\nCreate a new group with the given description\n\n##### *Swift*\n```swift\nmyVoiceIt?.createGroup(\"A Sample Group Description\", callback: {\n    jsonResponse in\n})\n```\n##### *Objective-C*\n```objc\n[self.myVoiceIt createGroup:@\"A Sample Group Description\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Add User to Group\n\nAdds user with given userId(begins with 'usr_') to group with given groupId(begins with 'grp_')\n\n##### *Swift*\n```swift\nmyVoiceIt?.addUser(toGroup: \"GROUP_ID_HERE\", userId: \"USER_ID_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt addUserToGroup:@\"GROUP_ID_HERE\" userId:@\"USER_ID_HERE\" callback:^(NSString * jsonResponse){\n            NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Remove User from Group\n\nRemoves user with given userId(begins with 'usr_') from group with given groupId(begins with 'grp_')\n\n##### *Swift*\n```swift\nmyVoiceIt?.removeUser(fromGroup: \"GROUP_ID_HERE\", userId: \"USER_ID_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt removeUserFromGroup:@\"GROUP_ID_HERE\" userId:@\"USER_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Delete Group\n\nDelete group with given groupId(begins with 'grp_'), note: This call does not delete any users, but simply deletes the group and disassociates the users from the group.\n\n##### *Swift*\n```swift\nmyVoiceIt?.deleteGroup(\"GROUP_ID_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt deleteGroup:@\"GROUP_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n### Enrollment API Calls\n\n#### Get All Voice Enrollments\n\nGets all voice enrollments for user with given userId(begins with 'usr_')\n\n##### *Swift*\n```swift\nmyVoiceIt?.getAllVoiceEnrollments(\"USER_ID_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt getAllVoiceEnrollments:@\"USER_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Get All Face Enrollments\n\nGets all face enrollments for user with given userId(begins with 'usr_')\n\n##### *Swift*\n```swift\nmyVoiceIt?.getAllFaceEnrollments(\"USER_ID_HERE\", callback: {\njsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt getAllFaceEnrollments:@\"USER_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Get All Video Enrollments\n\nGets all video enrollments for user with given userId(begins with 'usr_')\n\n##### *Swift*\n```swift\nmyVoiceIt?.getAllVideoEnrollments(\"USER_ID_HERE\", callback: {\njsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt getAllVideoEnrollments:@\"USER_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n#### Create Voice Enrollment\n\nCreates voice enrollment for user with given userId(begins with 'usr_') , contentLanguage('en-US','es-ES' etc.), approved phrase from the developer account, and audio file.\n\n##### *Swift*\n```swift\nmyVoiceIt?.createVoiceEnrollment(\"USER_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", audioPath: \"FILE_PATH_TO_VOICE_ENROLLMENT_HERE\", phrase: \"VOICEPRINT_PHRASE_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt createVoiceEnrollment:@\"USER_ID_HERE\" contentLanguage: @\"CONTENT_LANGUAGE_HERE\" audioPath: @\"FILE_PATH_TO_VOICE_ENROLLMENT_HERE\" phrase: @\"VOICEPRINT_PHRASE_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n} ];\n```\n\n#### Create Face Enrollment\n\nCreate face enrollment for user with given userId(begins with 'usr_') and video file.\n##### *Swift*\n```swift\nmyVoiceIt?.createFaceEnrollment(\"USER_ID_HERE\", videoPath: \"FILE_PATH_TO_FACE_ENROLLMENT_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt createFaceEnrollment:@\"USER_ID_HERE\" videoPath: @\"FILE_PATH_TO_FACE_ENROLLMENT_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n} ];\n```\n\n#### Create Video Enrollment\n\nCreates video enrollment for user with given userId(begins with 'usr_') , contentLanguage('en-US','es-ES' etc.), approved phrase from the developer account, and video file.\n\n##### *Swift*\n```swift\nmyVoiceIt?.createVideoEnrollment(\"USER_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", videoPath: \"FILE_PATH_TO_VIDEO_ENROLLMENT_HERE\", phrase: \"VOICEPRINT_PHRASE_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt createVideoEnrollment:@\"USER_ID_HERE\" contentLanguage: @\"CONTENT_LANGUAGE_HERE\" videoPath: @\"FILE_PATH_TO_VIDEO_ENROLLMENT_HERE\" phrase: @\"VOICEPRINT_PHRASE_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n} ];\n```\n#### Delete All Enrollments\n\nDelete all enrollments for user with given userId(begins with 'usr_')\n\n##### *Swift*\n```swift\nmyVoiceIt?.deleteAllEnrollments(\"USER_ID_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt deleteAllEnrollments:@\"USER_ID_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n}];\n```\n\n### Verification API Calls\n\n#### Voice Verification\n\nVerify user's voice with given userId(begins with 'usr_') , contentLanguage('en-US','es-ES' etc.), approved phrase from  developer account, and audio file.\n\n##### *Swift*\n```swift\nmyVoiceIt?.voiceVerification(\"USER_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", audioPath: \"FILE_PATH_TO_VOICE_FOR_VERIFICATION_HERE\", phrase: \"VOICEPRINT_PHRASE_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt voiceVerification:@\"USER_ID_HERE\" contentLanguage:@\"CONTENT_LANGUAGE_HERE\" audioPath: @\"FILE_PATH_TO_VOICE_FOR_VERIFICATION_HERE\" phrase: @\"VOICEPRINT_PHRASE_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n} ];\n```\n\n#### Face Verification\n\nVerify user's face with given userId(begins with 'usr_') and video file.\n\n##### *Swift*\n```swift\nmyVoiceIt?.faceVerification(\"USER_ID_HERE\", videoPath: \"FILE_PATH_TO_VIDEO_FOR_FACE_VERIFICATION_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt faceVerification:@\"USER_ID_HERE\" videoPath: @\"FILE_PATH_TO_VIDEO_FOR_FACE_VERIFICATION_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n} ];\n```\n\n#### Video Verification\n\nVerify user's face and voice with given userId(begins with 'usr_') , contentLanguage('en-US','es-ES' etc.), approved phrase from  developer account, and video file.\n\n##### *Swift*\n```swift\nmyVoiceIt?.videoVerification(\"USER_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", videoPath: \"FILE_PATH_TO_VIDEO_FOR_VERIFICATION_HERE\", phrase: \"VOICEPRINT_PHRASE_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt videoVerification:@\"USER_ID_HERE\" contentLanguage:@\"CONTENT_LANGUAGE_HERE\" videoPath: @\"FILE_PATH_TO_VIDEO_FOR_VERIFICATION_HERE\" phrase: @\"VOICEPRINT_PHRASE_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n} ];\n```\n\n### Identification API Calls\n\n#### Voice Identification\n\nIdentify user's voice  inside group with the given groupId(begins with 'grp_') and contentLanguage('en-US','es-ES' etc.), and approved phrase from developer account, and audioFile.\n\n##### *Swift*\n```swift\nmyVoiceIt?.voiceIdentification(\"GROUP_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", audioPath: \"FILE_PATH_TO_VOICE_FOR_IDENTIFICATION_HERE\", phrase: \"VOICEPRINT_PHRASE_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt voiceIdentification:@\"GROUP_ID_HERE\" contentLanguage:@\"CONTENT_LANGUAGE_HERE\" audioPath: @\"FILE_PATH_TO_VOICE_FOR_IDENTIFICATION_HERE\"\nphrase: @\"VOICEPRINT_PHRASE_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n} ];\n```\n\n#### Face Identification\n\nIdentify user's face inside group with the given groupId(begins with 'grp_') and videoFile.\n\n##### *Swift*\n```swift\nmyVoiceIt?.faceIdentification(\"GROUP_ID_HERE\", videoPath: \"FILE_PATH_TO_VIDEO_FOR_IDENTIFICATION_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt faceIdentification:@\"GROUP_ID_HERE\" videoPath: @\"FILE_PATH_TO_VIDEO_FOR_IDENTIFICATION_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n} ];\n```\n\n#### Video Identification\n\nIdentify user's voice  and face inside group with the given groupId(begins with 'grp_') and contentLanguage('en-US','es-ES' etc.), and approved phrase from developer account, and videoFile.\n\n##### *Swift*\n```swift\nmyVoiceIt?.videoIdentification(\"GROUP_ID_HERE\", contentLanguage: \"CONTENT_LANGUAGE_HERE\", videoPath: \"FILE_PATH_TO_VIDEO_FOR_IDENTIFICATION_HERE\", phrase: \"VOICEPRINT_PHRASE_HERE\", callback: {\n    jsonResponse in\n    print(\"JSON RESPONSE: \\(jsonResponse!)\")\n})\n```\n\n##### *Objective-C*\n```objc\n[self.myVoiceIt videoIdentification:@\"GROUP_ID_HERE\" contentLanguage:@\"CONTENT_LANGUAGE_HERE\" videoPath: @\"FILE_PATH_TO_VIDEO_FOR_IDENTIFICATION_HERE\" phrase: @\"VOICEPRINT_PHRASE_HERE\" callback:^(NSString * jsonResponse){\n    NSLog(@\"JSONResponse: %@\", jsonResponse);\n} ];\n```\n\n\n\n## Documentation\n\nFor detailed API documentation, visit [voiceit.io/documentation](https://voiceit.io/documentation).\n\n## Support\n\nIf you find this SDK useful, please consider giving it a star on GitHub — it helps others discover the project!\n\n[![GitHub stars](https://img.shields.io/github/stars/voiceittech/voiceit3-ios-sdk?style=social)](https://github.com/voiceittech/voiceit3-ios-sdk/stargazers)\n\n## License\n\nvoiceit3-ios-sdk is available under the MIT license. See the LICENSE file for more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvoiceittech%2Fvoiceit3-ios-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvoiceittech%2Fvoiceit3-ios-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvoiceittech%2Fvoiceit3-ios-sdk/lists"}