CI Status Version License Platform
To run the example project, clone the repo, and run pod install from the Example directory first.
- Alamofire
ApproveAPI is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'ApproveAPI'
let approveClient = ApproveAPI(apiKey: "your-api-key", isTestKey: true, delegate: nil)
// Create metadata let metadata = AnswerMetadataPost(location: "New York, NY", timestamp: "9:41 AM") metadata.browser = UIDevice.current.model // Create Prompt request object var request = PromptRequest(userType: .email("someone@email.com"), body: "Demo body message.") request.title = "Optional prompt title" request.metadata = metadata // Send prompt to provided user address approveClient.sendPrompt(withRequest: request) { (prompt, error) in guard let promptId = prompt?.id, error == nil else { debugPrint("Error:", error ?? "N/A") return } debugPrint("Prompt Send:", prompt ?? "None") }
approveClient.retreivePrompt(withId: "prompt_id") { (prompt, error) in guard let promptId = prompt?.id, error == nil else { debugPrint("Error:", error ?? "N/A") return } debugPrint("Prompt Retrieval:", prompt ?? "None") }
approveClient.checkPromptStatus(withId: "prompt_id") { (status, error) in guard let status = status, error == nil else { debugPrint("Error:", error ?? "N/A") return } debugPrint("Prompt Status:", status) }
// Create Prompt request object var request = PromptRequest(userType: .email("someone@email.com"), body: "Demo body message.") request.longPoll = true // Wait for user response // Will notify via delegate approveClient.delegate = self // Can also set on init() approveClient.sendPrompt(withRequest: request, completion: nil)
extension ViewController: ApproveAPIProtocol { func approveClient(_ client: ApproveAPI, promptChanged prompt: Prompt) { debugPrint("Prompt changed:", prompt) } func approveClient(_ client: ApproveAPI, promptStatusChanged status: PromptStatus) { debugPrint("Status changed:", status) } }
Ryan Cohen, notryancohen@gmail.com
ApproveAPI is available under the MIT license. See the LICENSE file for more info.