ListDocumentClassifiers Go Example
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
rest := chilkat.NewRest()
var success bool
authAws := chilkat.NewAuthAws()
authAws.SetAccessKey("AWS_ACCESS_KEY")
authAws.SetSecretKey("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.SetRegion("us-west-2")
authAws.SetServiceName("comprehend")
// SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
rest.SetAuthAws(authAws)
// URL: https://comprehend.us-west-2.amazonaws.com/
// Use the same region as specified above.
success = rest.Connect("comprehend.us-west-2.amazonaws.com",443,true,true)
if success != true {
fmt.Println("ConnectFailReason: ", rest.ConnectFailReason())
fmt.Println(rest.LastErrorText())
rest.DisposeRest()
authAws.DisposeAuthAws()
return
}
// The following code creates the JSON request body.
// The JSON created by this code is shown below.
// Use this online tool to generate code from sample JSON:
// Generate Code to Create JSON
json := chilkat.NewJsonObject()
json.UpdateString("Filter.DocumentClassifierName","string")
json.UpdateString("Filter.Status","string")
json.UpdateInt("Filter.SubmitTimeAfter",123)
json.UpdateInt("Filter.SubmitTimeBefore",123)
json.UpdateInt("MaxResults",123)
json.UpdateString("NextToken","string")
// The JSON request body created by the above code:
// {
// "Filter": {
// "DocumentClassifierName": "string",
// "Status": "string",
// "SubmitTimeAfter": number,
// "SubmitTimeBefore": number
// },
// "MaxResults": number,
// "NextToken": "string"
// }
rest.AddHeader("Content-Type","application/x-amz-json-1.1")
rest.AddHeader("X-Amz-Target","Comprehend_20171127.ListDocumentClassifiers")
sbRequestBody := chilkat.NewStringBuilder()
json.EmitSb(sbRequestBody)
sbResponseBody := chilkat.NewStringBuilder()
success = rest.FullRequestSb("POST","/",sbRequestBody,sbResponseBody)
if success != true {
fmt.Println(rest.LastErrorText())
rest.DisposeRest()
authAws.DisposeAuthAws()
json.DisposeJsonObject()
sbRequestBody.DisposeStringBuilder()
sbResponseBody.DisposeStringBuilder()
return
}
respStatusCode := rest.ResponseStatusCode()
fmt.Println("response status code = ", respStatusCode)
if respStatusCode != 200 {
fmt.Println("Response Header:")
fmt.Println(rest.ResponseHeader())
fmt.Println("Response Body:")
fmt.Println(*sbResponseBody.GetAsString())
rest.DisposeRest()
authAws.DisposeAuthAws()
json.DisposeJsonObject()
sbRequestBody.DisposeStringBuilder()
sbResponseBody.DisposeStringBuilder()
return
}
jResp := chilkat.NewJsonObject()
jResp.LoadSb(sbResponseBody)
// The following code parses the JSON response.
// A sample JSON response is shown below the sample code.
// Use this online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
var Accuracy int
var F1Score int
var HammingLoss int
var MicroF1Score int
var MicroPrecision int
var MicroRecall int
var Precision int
var Recall int
var NumberOfLabels int
var NumberOfTestDocuments int
var NumberOfTrainedDocuments int
DataAccessRoleArn_DECLARATION
DocumentClassifierArn_DECLARATION
var EndTime int
DataFormat_DECLARATION
LabelDelimiter_DECLARATION
S3Uri_DECLARATION
TestS3Uri_DECLARATION
LanguageCode_DECLARATION
Message_DECLARATION
Mode_DECLARATION
ModelKmsKeyId_DECLARATION
KmsKeyId_DECLARATION
OutputDataConfigS3Uri_DECLARATION
SourceModelArn_DECLARATION
Status_DECLARATION
var SubmitTime int
var TrainingEndTime int
var TrainingStartTime int
VersionName_DECLARATION
VolumeKmsKeyId_DECLARATION
var j int
var count_j int
AnnotationDataS3Uri_DECLARATION
DocumentType_DECLARATION
SourceDocumentsS3Uri_DECLARATION
Split_DECLARATION
var k int
var count_k int
strVal_DECLARATION
NextToken := jResp.StringOf("NextToken")
i := 0
count_i := jResp.SizeOfArray("DocumentClassifierPropertiesList")
for i < count_i {
jResp.SetI(i)
Accuracy = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.EvaluationMetrics.Accuracy")
F1Score = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.EvaluationMetrics.F1Score")
HammingLoss = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.EvaluationMetrics.HammingLoss")
MicroF1Score = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.EvaluationMetrics.MicroF1Score")
MicroPrecision = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.EvaluationMetrics.MicroPrecision")
MicroRecall = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.EvaluationMetrics.MicroRecall")
Precision = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.EvaluationMetrics.Precision")
Recall = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.EvaluationMetrics.Recall")
NumberOfLabels = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.NumberOfLabels")
NumberOfTestDocuments = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.NumberOfTestDocuments")
NumberOfTrainedDocuments = jResp.IntOf("DocumentClassifierPropertiesList[i].ClassifierMetadata.NumberOfTrainedDocuments")
DataAccessRoleArn = *jResp.StringOf("DocumentClassifierPropertiesList[i].DataAccessRoleArn")
DocumentClassifierArn = *jResp.StringOf("DocumentClassifierPropertiesList[i].DocumentClassifierArn")
EndTime = jResp.IntOf("DocumentClassifierPropertiesList[i].EndTime")
DataFormat = *jResp.StringOf("DocumentClassifierPropertiesList[i].InputDataConfig.DataFormat")
LabelDelimiter = *jResp.StringOf("DocumentClassifierPropertiesList[i].InputDataConfig.LabelDelimiter")
S3Uri = *jResp.StringOf("DocumentClassifierPropertiesList[i].InputDataConfig.S3Uri")
TestS3Uri = *jResp.StringOf("DocumentClassifierPropertiesList[i].InputDataConfig.TestS3Uri")
LanguageCode = *jResp.StringOf("DocumentClassifierPropertiesList[i].LanguageCode")
Message = *jResp.StringOf("DocumentClassifierPropertiesList[i].Message")
Mode = *jResp.StringOf("DocumentClassifierPropertiesList[i].Mode")
ModelKmsKeyId = *jResp.StringOf("DocumentClassifierPropertiesList[i].ModelKmsKeyId")
KmsKeyId = *jResp.StringOf("DocumentClassifierPropertiesList[i].OutputDataConfig.KmsKeyId")
OutputDataConfigS3Uri = *jResp.StringOf("DocumentClassifierPropertiesList[i].OutputDataConfig.S3Uri")
SourceModelArn = *jResp.StringOf("DocumentClassifierPropertiesList[i].SourceModelArn")
Status = *jResp.StringOf("DocumentClassifierPropertiesList[i].Status")
SubmitTime = jResp.IntOf("DocumentClassifierPropertiesList[i].SubmitTime")
TrainingEndTime = jResp.IntOf("DocumentClassifierPropertiesList[i].TrainingEndTime")
TrainingStartTime = jResp.IntOf("DocumentClassifierPropertiesList[i].TrainingStartTime")
VersionName = *jResp.StringOf("DocumentClassifierPropertiesList[i].VersionName")
VolumeKmsKeyId = *jResp.StringOf("DocumentClassifierPropertiesList[i].VolumeKmsKeyId")
j = 0
count_j = jResp.SizeOfArray("DocumentClassifierPropertiesList[i].InputDataConfig.AugmentedManifests")
for j < count_j {
jResp.SetJ(j)
AnnotationDataS3Uri = *jResp.StringOf("DocumentClassifierPropertiesList[i].InputDataConfig.AugmentedManifests[j].AnnotationDataS3Uri")
DocumentType = *jResp.StringOf("DocumentClassifierPropertiesList[i].InputDataConfig.AugmentedManifests[j].DocumentType")
S3Uri = *jResp.StringOf("DocumentClassifierPropertiesList[i].InputDataConfig.AugmentedManifests[j].S3Uri")
SourceDocumentsS3Uri = *jResp.StringOf("DocumentClassifierPropertiesList[i].InputDataConfig.AugmentedManifests[j].SourceDocumentsS3Uri")
Split = *jResp.StringOf("DocumentClassifierPropertiesList[i].InputDataConfig.AugmentedManifests[j].Split")
k = 0
count_k = jResp.SizeOfArray("DocumentClassifierPropertiesList[i].InputDataConfig.AugmentedManifests[j].AttributeNames")
for k < count_k {
jResp.SetK(k)
strVal = *jResp.StringOf("DocumentClassifierPropertiesList[i].InputDataConfig.AugmentedManifests[j].AttributeNames[k]")
k = k + 1
}
j = j + 1
}
j = 0
count_j = jResp.SizeOfArray("DocumentClassifierPropertiesList[i].VpcConfig.SecurityGroupIds")
for j < count_j {
jResp.SetJ(j)
strVal = *jResp.StringOf("DocumentClassifierPropertiesList[i].VpcConfig.SecurityGroupIds[j]")
j = j + 1
}
j = 0
count_j = jResp.SizeOfArray("DocumentClassifierPropertiesList[i].VpcConfig.Subnets")
for j < count_j {
jResp.SetJ(j)
strVal = *jResp.StringOf("DocumentClassifierPropertiesList[i].VpcConfig.Subnets[j]")
j = j + 1
}
i = i + 1
}
// A sample JSON response body parsed by the above code:
// {
// "DocumentClassifierPropertiesList": [
// {
// "ClassifierMetadata": {
// "EvaluationMetrics": {
// "Accuracy": number,
// "F1Score": number,
// "HammingLoss": number,
// "MicroF1Score": number,
// "MicroPrecision": number,
// "MicroRecall": number,
// "Precision": number,
// "Recall": number
// },
// "NumberOfLabels": number,
// "NumberOfTestDocuments": number,
// "NumberOfTrainedDocuments": number
// },
// "DataAccessRoleArn": "string",
// "DocumentClassifierArn": "string",
// "EndTime": number,
// "InputDataConfig": {
// "AugmentedManifests": [
// {
// "AnnotationDataS3Uri": "string",
// "AttributeNames": [
// "string"
// ],
// "DocumentType": "string",
// "S3Uri": "string",
// "SourceDocumentsS3Uri": "string",
// "Split": "string"
// }
// ],
// "DataFormat": "string",
// "LabelDelimiter": "string",
// "S3Uri": "string",
// "TestS3Uri": "string"
// },
// "LanguageCode": "string",
// "Message": "string",
// "Mode": "string",
// "ModelKmsKeyId": "string",
// "OutputDataConfig": {
// "KmsKeyId": "string",
// "S3Uri": "string"
// },
// "SourceModelArn": "string",
// "Status": "string",
// "SubmitTime": number,
// "TrainingEndTime": number,
// "TrainingStartTime": number,
// "VersionName": "string",
// "VolumeKmsKeyId": "string",
// "VpcConfig": {
// "SecurityGroupIds": [
// "string"
// ],
// "Subnets": [
// "string"
// ]
// }
// }
// ],
// "NextToken": "string"
// }
rest.DisposeRest()
authAws.DisposeAuthAws()
json.DisposeJsonObject()
sbRequestBody.DisposeStringBuilder()
sbResponseBody.DisposeStringBuilder()
jResp.DisposeJsonObject()