Swift
Swift
Amazon Voice ID - Describe Domain
See more Amazon Voice ID Examples
Describes the specified domain.Chilkat Swift Downloads
func chilkatTest() {
var success: Bool = false
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
let rest = CkoRest()!
let authAws = CkoAuthAws()!
authAws.accessKey = "AWS_ACCESS_KEY"
authAws.secretKey = "AWS_SECRET_KEY"
// Don't forget to change the region to your particular region. (Also make the same change in the call to Connect below.)
authAws.region = "us-west-2"
authAws.serviceName = "voiceid"
// SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
rest.setAuthAws(authProvider: authAws)
// URL: https://voiceid.us-west-2.amazonaws.com/
var bTls: Bool = true
var port: Int = 443
var bAutoReconnect: Bool = true
// Use the same region as specified above.
success = rest.connect(hostname: "voiceid.us-west-2.amazonaws.com", port: port, tls: bTls, autoReconnect: bAutoReconnect)
if success != true {
print("ConnectFailReason: \(rest.connectFailReason.intValue)")
print("\(rest.lastErrorText!)")
return
}
// Use this online tool to generate code from sample JSON:
// Generate Code to Create JSON
// The following JSON is sent in the request body.
// {
// "DomainId": "<domainId>"
// }
//
let json = CkoJsonObject()!
json.updateString(jsonPath: "DomainId", value: "<domainId>")
rest.addHeader(name: "Content-Type", value: "application/x-amz-json-1.0")
rest.addHeader(name: "X-Amz-Target", value: "VoiceID.DescribeDomain")
rest.addHeader(name: "Accept-Encoding", value: "identity")
let sbRequestBody = CkoStringBuilder()!
json.emitSb(sb: sbRequestBody)
let sbResponseBody = CkoStringBuilder()!
success = rest.fullRequestSb(httpVerb: "POST", uriPath: "/", requestBody: sbRequestBody, responseBody: sbResponseBody)
if success != true {
print("\(rest.lastErrorText!)")
return
}
var respStatusCode: Int = rest.responseStatusCode.intValue
print("response status code = \(respStatusCode)")
if respStatusCode != 200 {
print("Response Status Code = \(respStatusCode)")
print("Response Header:")
print("\(rest.responseHeader!)")
print("Response Body:")
print("\(sbResponseBody.getAsString()!)")
return
}
let jsonResponse = CkoJsonObject()!
jsonResponse.loadSb(sb: sbResponseBody)
jsonResponse.emitCompact = false
print("\(jsonResponse.emit()!)")
// If successful, the response status code is 200, and the response syntax:
// {
// "Domain": {
// "Arn": "string",
// "CreatedAt": number,
// "Description": "string",
// "DomainId": "string",
// "DomainStatus": "string",
// "Name": "string",
// "ServerSideEncryptionConfiguration": {
// "KmsKeyId": "string"
// },
// "UpdatedAt": number
// }
// }
var DomainArn: String? = jsonResponse.string(of: "Domain.Arn")
var DomainCreatedAt: Int = jsonResponse.int(of: "Domain.CreatedAt").intValue
var DomainDescription: String? = jsonResponse.string(of: "Domain.Description")
var DomainDomainId: String? = jsonResponse.string(of: "Domain.DomainId")
var DomainDomainStatus: String? = jsonResponse.string(of: "Domain.DomainStatus")
var DomainName: String? = jsonResponse.string(of: "Domain.Name")
var DomainServerSideEncryptionConfigurationKmsKeyId: String? = jsonResponse.string(of: "Domain.ServerSideEncryptionConfiguration.KmsKeyId")
var DomainUpdatedAt: Int = jsonResponse.int(of: "Domain.UpdatedAt").intValue
}