Chilkat Online Tools

BatchRead PureBasic Example

Amazon Cloud Directory

IncludeFile "CkJsonObject.pb"
IncludeFile "CkStringBuilder.pb"
IncludeFile "CkRest.pb"
IncludeFile "CkAuthAws.pb"

Procedure ChilkatExample()

    ; This example requires the Chilkat API to have been previously unlocked.
    ; See Global Unlock Sample for sample code.

    rest.i = CkRest::ckCreate()
    If rest.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success.i

    authAws.i = CkAuthAws::ckCreate()
    If authAws.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkAuthAws::setCkAccessKey(authAws, "AWS_ACCESS_KEY")
    CkAuthAws::setCkSecretKey(authAws, "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.)
    CkAuthAws::setCkRegion(authAws, "us-west-2")
    CkAuthAws::setCkServiceName(authAws, "clouddirectory")
    ; SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
    CkRest::ckSetAuthAws(rest,authAws)

    ; URL: https://clouddirectory.us-west-2.amazonaws.com/
    ; Use the same region as specified above.
    success = CkRest::ckConnect(rest,"clouddirectory.us-west-2.amazonaws.com",443,1,1)
    If success <> 1
        Debug "ConnectFailReason: " + Str(CkRest::ckConnectFailReason(rest))
        Debug CkRest::ckLastErrorText(rest)
        CkRest::ckDispose(rest)
        CkAuthAws::ckDispose(authAws)
        ProcedureReturn
    EndIf

    ; 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.i = CkJsonObject::ckCreate()
    If json.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkJsonObject::ckUpdateString(json,"Operations[0].GetLinkAttributes.AttributeNames[0]","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetLinkAttributes.TypedLinkSpecifier.IdentityAttributeValues[0].AttributeName","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].GetLinkAttributes.TypedLinkSpecifier.IdentityAttributeValues[0].Value.BinaryValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].GetLinkAttributes.TypedLinkSpecifier.IdentityAttributeValues[0].Value.BooleanValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].GetLinkAttributes.TypedLinkSpecifier.IdentityAttributeValues[0].Value.DatetimeValue",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].GetLinkAttributes.TypedLinkSpecifier.IdentityAttributeValues[0].Value.NumberValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetLinkAttributes.TypedLinkSpecifier.IdentityAttributeValues[0].Value.StringValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetLinkAttributes.TypedLinkSpecifier.SourceObjectReference.Selector","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetLinkAttributes.TypedLinkSpecifier.TargetObjectReference.Selector","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetLinkAttributes.TypedLinkSpecifier.TypedLinkFacet.SchemaArn","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetLinkAttributes.TypedLinkSpecifier.TypedLinkFacet.TypedLinkName","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetObjectAttributes.AttributeNames[0]","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetObjectAttributes.ObjectReference.Selector","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetObjectAttributes.SchemaFacet.FacetName","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetObjectAttributes.SchemaFacet.SchemaArn","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].GetObjectInformation.ObjectReference.Selector","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListAttachedIndices.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListAttachedIndices.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListAttachedIndices.TargetReference.Selector","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].AttributeName","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.EndMode","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.EndValue.BinaryValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.EndValue.BooleanValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.EndValue.DatetimeValue",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.EndValue.NumberValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.EndValue.StringValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.StartMode","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.StartValue.BinaryValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.StartValue.BooleanValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.StartValue.DatetimeValue",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.StartValue.NumberValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.FilterAttributeRanges[0].Range.StartValue.StringValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.FilterTypedLink.SchemaArn","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.FilterTypedLink.TypedLinkName","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIncomingTypedLinks.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIncomingTypedLinks.ObjectReference.Selector","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.IndexReference.Selector","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIndex.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].AttributeKey.FacetName","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].AttributeKey.Name","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].AttributeKey.SchemaArn","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.EndMode","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.EndValue.BinaryValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.EndValue.BooleanValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.EndValue.DatetimeValue",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.EndValue.NumberValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.EndValue.StringValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.StartMode","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.StartValue.BinaryValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.StartValue.BooleanValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.StartValue.DatetimeValue",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.StartValue.NumberValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListIndex.RangesOnIndexedValues[0].Range.StartValue.StringValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectAttributes.FacetFilter.FacetName","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectAttributes.FacetFilter.SchemaArn","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListObjectAttributes.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectAttributes.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectAttributes.ObjectReference.Selector","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListObjectChildren.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectChildren.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectChildren.ObjectReference.Selector","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListObjectParentPaths.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectParentPaths.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectParentPaths.ObjectReference.Selector","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListObjectParents.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectParents.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectParents.ObjectReference.Selector","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListObjectPolicies.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectPolicies.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListObjectPolicies.ObjectReference.Selector","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].AttributeName","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.EndMode","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.EndValue.BinaryValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.EndValue.BooleanValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.EndValue.DatetimeValue",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.EndValue.NumberValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.EndValue.StringValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.StartMode","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.StartValue.BinaryValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.StartValue.BooleanValue",123)
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.StartValue.DatetimeValue",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.StartValue.NumberValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.FilterAttributeRanges[0].Range.StartValue.StringValue","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.FilterTypedLink.SchemaArn","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.FilterTypedLink.TypedLinkName","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListOutgoingTypedLinks.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListOutgoingTypedLinks.ObjectReference.Selector","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].ListPolicyAttachments.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].ListPolicyAttachments.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].ListPolicyAttachments.PolicyReference.Selector","string")
    CkJsonObject::ckUpdateInt(json,"Operations[0].LookupPolicy.MaxResults",123)
    CkJsonObject::ckUpdateString(json,"Operations[0].LookupPolicy.NextToken","string")
    CkJsonObject::ckUpdateString(json,"Operations[0].LookupPolicy.ObjectReference.Selector","string")

    ; The JSON request body created by the above code:

    ; {
    ;   "Operations": [
    ;     {
    ;       "GetLinkAttributes": {
    ;         "AttributeNames": [
    ;           "string"
    ;         ],
    ;         "TypedLinkSpecifier": {
    ;           "IdentityAttributeValues": [
    ;             {
    ;               "AttributeName": "string",
    ;               "Value": {
    ;                 "BinaryValue": blob,
    ;                 "BooleanValue": boolean,
    ;                 "DatetimeValue": number,
    ;                 "NumberValue": "string",
    ;                 "StringValue": "string"
    ;               }
    ;             }
    ;           ],
    ;           "SourceObjectReference": {
    ;             "Selector": "string"
    ;           },
    ;           "TargetObjectReference": {
    ;             "Selector": "string"
    ;           },
    ;           "TypedLinkFacet": {
    ;             "SchemaArn": "string",
    ;             "TypedLinkName": "string"
    ;           }
    ;         }
    ;       },
    ;       "GetObjectAttributes": {
    ;         "AttributeNames": [
    ;           "string"
    ;         ],
    ;         "ObjectReference": {
    ;           "Selector": "string"
    ;         },
    ;         "SchemaFacet": {
    ;           "FacetName": "string",
    ;           "SchemaArn": "string"
    ;         }
    ;       },
    ;       "GetObjectInformation": {
    ;         "ObjectReference": {
    ;           "Selector": "string"
    ;         }
    ;       },
    ;       "ListAttachedIndices": {
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "TargetReference": {
    ;           "Selector": "string"
    ;         }
    ;       },
    ;       "ListIncomingTypedLinks": {
    ;         "FilterAttributeRanges": [
    ;           {
    ;             "AttributeName": "string",
    ;             "Range": {
    ;               "EndMode": "string",
    ;               "EndValue": {
    ;                 "BinaryValue": blob,
    ;                 "BooleanValue": boolean,
    ;                 "DatetimeValue": number,
    ;                 "NumberValue": "string",
    ;                 "StringValue": "string"
    ;               },
    ;               "StartMode": "string",
    ;               "StartValue": {
    ;                 "BinaryValue": blob,
    ;                 "BooleanValue": boolean,
    ;                 "DatetimeValue": number,
    ;                 "NumberValue": "string",
    ;                 "StringValue": "string"
    ;               }
    ;             }
    ;           }
    ;         ],
    ;         "FilterTypedLink": {
    ;           "SchemaArn": "string",
    ;           "TypedLinkName": "string"
    ;         },
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "ObjectReference": {
    ;           "Selector": "string"
    ;         }
    ;       },
    ;       "ListIndex": {
    ;         "IndexReference": {
    ;           "Selector": "string"
    ;         },
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "RangesOnIndexedValues": [
    ;           {
    ;             "AttributeKey": {
    ;               "FacetName": "string",
    ;               "Name": "string",
    ;               "SchemaArn": "string"
    ;             },
    ;             "Range": {
    ;               "EndMode": "string",
    ;               "EndValue": {
    ;                 "BinaryValue": blob,
    ;                 "BooleanValue": boolean,
    ;                 "DatetimeValue": number,
    ;                 "NumberValue": "string",
    ;                 "StringValue": "string"
    ;               },
    ;               "StartMode": "string",
    ;               "StartValue": {
    ;                 "BinaryValue": blob,
    ;                 "BooleanValue": boolean,
    ;                 "DatetimeValue": number,
    ;                 "NumberValue": "string",
    ;                 "StringValue": "string"
    ;               }
    ;             }
    ;           }
    ;         ]
    ;       },
    ;       "ListObjectAttributes": {
    ;         "FacetFilter": {
    ;           "FacetName": "string",
    ;           "SchemaArn": "string"
    ;         },
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "ObjectReference": {
    ;           "Selector": "string"
    ;         }
    ;       },
    ;       "ListObjectChildren": {
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "ObjectReference": {
    ;           "Selector": "string"
    ;         }
    ;       },
    ;       "ListObjectParentPaths": {
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "ObjectReference": {
    ;           "Selector": "string"
    ;         }
    ;       },
    ;       "ListObjectParents": {
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "ObjectReference": {
    ;           "Selector": "string"
    ;         }
    ;       },
    ;       "ListObjectPolicies": {
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "ObjectReference": {
    ;           "Selector": "string"
    ;         }
    ;       },
    ;       "ListOutgoingTypedLinks": {
    ;         "FilterAttributeRanges": [
    ;           {
    ;             "AttributeName": "string",
    ;             "Range": {
    ;               "EndMode": "string",
    ;               "EndValue": {
    ;                 "BinaryValue": blob,
    ;                 "BooleanValue": boolean,
    ;                 "DatetimeValue": number,
    ;                 "NumberValue": "string",
    ;                 "StringValue": "string"
    ;               },
    ;               "StartMode": "string",
    ;               "StartValue": {
    ;                 "BinaryValue": blob,
    ;                 "BooleanValue": boolean,
    ;                 "DatetimeValue": number,
    ;                 "NumberValue": "string",
    ;                 "StringValue": "string"
    ;               }
    ;             }
    ;           }
    ;         ],
    ;         "FilterTypedLink": {
    ;           "SchemaArn": "string",
    ;           "TypedLinkName": "string"
    ;         },
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "ObjectReference": {
    ;           "Selector": "string"
    ;         }
    ;       },
    ;       "ListPolicyAttachments": {
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "PolicyReference": {
    ;           "Selector": "string"
    ;         }
    ;       },
    ;       "LookupPolicy": {
    ;         "MaxResults": number,
    ;         "NextToken": "string",
    ;         "ObjectReference": {
    ;           "Selector": "string"
    ;         }
    ;       }
    ;     }
    ;   ]
    ; }

    CkRest::ckAddHeader(rest,"Content-Type","application/x-amz-json-1.1")
    CkRest::ckAddHeader(rest,"X-Amz-Target","BatchRead")

    sbRequestBody.i = CkStringBuilder::ckCreate()
    If sbRequestBody.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkJsonObject::ckEmitSb(json,sbRequestBody)
    sbResponseBody.i = CkStringBuilder::ckCreate()
    If sbResponseBody.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success = CkRest::ckFullRequestSb(rest,"POST","/amazonclouddirectory/2017-01-11/batchread",sbRequestBody,sbResponseBody)
    If success <> 1
        Debug CkRest::ckLastErrorText(rest)
        CkRest::ckDispose(rest)
        CkAuthAws::ckDispose(authAws)
        CkJsonObject::ckDispose(json)
        CkStringBuilder::ckDispose(sbRequestBody)
        CkStringBuilder::ckDispose(sbResponseBody)
        ProcedureReturn
    EndIf

    respStatusCode.i = CkRest::ckResponseStatusCode(rest)
    Debug "response status code = " + Str(respStatusCode)
    If respStatusCode <> 200
        Debug "Response Header:"
        Debug CkRest::ckResponseHeader(rest)
        Debug "Response Body:"
        Debug CkStringBuilder::ckGetAsString(sbResponseBody)
        CkRest::ckDispose(rest)
        CkAuthAws::ckDispose(authAws)
        CkJsonObject::ckDispose(json)
        CkStringBuilder::ckDispose(sbRequestBody)
        CkStringBuilder::ckDispose(sbResponseBody)
        ProcedureReturn
    EndIf

    jResp.i = CkJsonObject::ckCreate()
    If jResp.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkJsonObject::ckLoadSb(jResp,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

    Message.s
    v_Type.s
    ObjectIdentifier.s
    NextToken.s
    ListIncomingTypedLinksNextToken.s
    ListIndexNextToken.s
    ListObjectAttributesNextToken.s
    v_String.s
    ListObjectChildrenNextToken.s
    ListObjectParentPathsNextToken.s
    ListObjectParentsNextToken.s
    ListObjectPoliciesNextToken.s
    ListOutgoingTypedLinksNextToken.s
    ListPolicyAttachmentsNextToken.s
    LookupPolicyNextToken.s
    j.i
    count_j.i
    FacetName.s
    Name.s
    SchemaArn.s
    BinaryValue.i
    BooleanValue.i
    DatetimeValue.i
    NumberValue.s
    StringValue.s
    KeyFacetName.s
    KeyName.s
    KeySchemaArn.s
    ValueBinaryValue.i
    ValueBooleanValue.i
    ValueDatetimeValue.i
    ValueNumberValue.s
    ValueStringValue.s
    k.i
    count_k.i
    Selector.s
    TargetObjectReferenceSelector.s
    TypedLinkFacetSchemaArn.s
    TypedLinkName.s
    AttributeName.s
    Path.s
    strVal.s
    LinkName.s
    SourceObjectReferenceSelector.s
    TypedLinkFacetTypedLinkName.s
    PolicyId.s
    PolicyType.s

    i.i = 0
    count_i.i = CkJsonObject::ckSizeOfArray(jResp,"Responses")
    While i < count_i
        CkJsonObject::setCkI(jResp, i)
        Message = CkJsonObject::ckStringOf(jResp,"Responses[i].ExceptionResponse.Message")
        v_Type = CkJsonObject::ckStringOf(jResp,"Responses[i].ExceptionResponse.Type")
        ObjectIdentifier = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetObjectInformation.ObjectIdentifier")
        NextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.NextToken")
        ListIncomingTypedLinksNextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.NextToken")
        ListIndexNextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIndex.NextToken")
        ListObjectAttributesNextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectAttributes.NextToken")
        v_String = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectChildren.Children.string")
        ListObjectChildrenNextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectChildren.NextToken")
        ListObjectParentPathsNextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectParentPaths.NextToken")
        ListObjectParentsNextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectParents.NextToken")
        ListObjectPoliciesNextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectPolicies.NextToken")
        ListOutgoingTypedLinksNextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.NextToken")
        ListPolicyAttachmentsNextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListPolicyAttachments.NextToken")
        LookupPolicyNextToken = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.LookupPolicy.NextToken")
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.GetLinkAttributes.Attributes")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            FacetName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetLinkAttributes.Attributes[j].Key.FacetName")
            Name = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetLinkAttributes.Attributes[j].Key.Name")
            SchemaArn = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetLinkAttributes.Attributes[j].Key.SchemaArn")
            BinaryValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.GetLinkAttributes.Attributes[j].Value.BinaryValue")
            BooleanValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.GetLinkAttributes.Attributes[j].Value.BooleanValue")
            DatetimeValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.GetLinkAttributes.Attributes[j].Value.DatetimeValue")
            NumberValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetLinkAttributes.Attributes[j].Value.NumberValue")
            StringValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetLinkAttributes.Attributes[j].Value.StringValue")
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.GetObjectAttributes.Attributes")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            KeyFacetName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetObjectAttributes.Attributes[j].Key.FacetName")
            KeyName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetObjectAttributes.Attributes[j].Key.Name")
            KeySchemaArn = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetObjectAttributes.Attributes[j].Key.SchemaArn")
            ValueBinaryValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.GetObjectAttributes.Attributes[j].Value.BinaryValue")
            ValueBooleanValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.GetObjectAttributes.Attributes[j].Value.BooleanValue")
            ValueDatetimeValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.GetObjectAttributes.Attributes[j].Value.DatetimeValue")
            ValueNumberValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetObjectAttributes.Attributes[j].Value.NumberValue")
            ValueStringValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetObjectAttributes.Attributes[j].Value.StringValue")
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.GetObjectInformation.SchemaFacets")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            FacetName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetObjectInformation.SchemaFacets[j].FacetName")
            SchemaArn = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.GetObjectInformation.SchemaFacets[j].SchemaArn")
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            ObjectIdentifier = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments[j].ObjectIdentifier")
            k = 0
            count_k = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments[j].IndexedAttributes")
            While k < count_k
                CkJsonObject::setCkK(jResp, k)
                KeyFacetName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments[j].IndexedAttributes[k].Key.FacetName")
                KeyName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments[j].IndexedAttributes[k].Key.Name")
                KeySchemaArn = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments[j].IndexedAttributes[k].Key.SchemaArn")
                ValueBinaryValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments[j].IndexedAttributes[k].Value.BinaryValue")
                ValueBooleanValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments[j].IndexedAttributes[k].Value.BooleanValue")
                ValueDatetimeValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments[j].IndexedAttributes[k].Value.DatetimeValue")
                ValueNumberValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments[j].IndexedAttributes[k].Value.NumberValue")
                ValueStringValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListAttachedIndices.IndexAttachments[j].IndexedAttributes[k].Value.StringValue")
                k = k + 1
            Wend
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            Selector = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].SourceObjectReference.Selector")
            TargetObjectReferenceSelector = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].TargetObjectReference.Selector")
            TypedLinkFacetSchemaArn = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].TypedLinkFacet.SchemaArn")
            TypedLinkName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].TypedLinkFacet.TypedLinkName")
            k = 0
            count_k = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].IdentityAttributeValues")
            While k < count_k
                CkJsonObject::setCkK(jResp, k)
                AttributeName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].IdentityAttributeValues[k].AttributeName")
                ValueBinaryValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].IdentityAttributeValues[k].Value.BinaryValue")
                ValueBooleanValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].IdentityAttributeValues[k].Value.BooleanValue")
                ValueDatetimeValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].IdentityAttributeValues[k].Value.DatetimeValue")
                ValueNumberValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].IdentityAttributeValues[k].Value.NumberValue")
                ValueStringValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIncomingTypedLinks.LinkSpecifiers[j].IdentityAttributeValues[k].Value.StringValue")
                k = k + 1
            Wend
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            ObjectIdentifier = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments[j].ObjectIdentifier")
            k = 0
            count_k = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments[j].IndexedAttributes")
            While k < count_k
                CkJsonObject::setCkK(jResp, k)
                KeyFacetName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments[j].IndexedAttributes[k].Key.FacetName")
                KeyName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments[j].IndexedAttributes[k].Key.Name")
                KeySchemaArn = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments[j].IndexedAttributes[k].Key.SchemaArn")
                ValueBinaryValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments[j].IndexedAttributes[k].Value.BinaryValue")
                ValueBooleanValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments[j].IndexedAttributes[k].Value.BooleanValue")
                ValueDatetimeValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments[j].IndexedAttributes[k].Value.DatetimeValue")
                ValueNumberValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments[j].IndexedAttributes[k].Value.NumberValue")
                ValueStringValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListIndex.IndexAttachments[j].IndexedAttributes[k].Value.StringValue")
                k = k + 1
            Wend
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListObjectAttributes.Attributes")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            KeyFacetName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectAttributes.Attributes[j].Key.FacetName")
            KeyName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectAttributes.Attributes[j].Key.Name")
            KeySchemaArn = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectAttributes.Attributes[j].Key.SchemaArn")
            ValueBinaryValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListObjectAttributes.Attributes[j].Value.BinaryValue")
            ValueBooleanValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListObjectAttributes.Attributes[j].Value.BooleanValue")
            ValueDatetimeValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListObjectAttributes.Attributes[j].Value.DatetimeValue")
            ValueNumberValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectAttributes.Attributes[j].Value.NumberValue")
            ValueStringValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectAttributes.Attributes[j].Value.StringValue")
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListObjectParentPaths.PathToObjectIdentifiersList")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            Path = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectParentPaths.PathToObjectIdentifiersList[j].Path")
            k = 0
            count_k = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListObjectParentPaths.PathToObjectIdentifiersList[j].ObjectIdentifiers")
            While k < count_k
                CkJsonObject::setCkK(jResp, k)
                strVal = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectParentPaths.PathToObjectIdentifiersList[j].ObjectIdentifiers[k]")
                k = k + 1
            Wend
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListObjectParents.ParentLinks")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            LinkName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectParents.ParentLinks[j].LinkName")
            ObjectIdentifier = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectParents.ParentLinks[j].ObjectIdentifier")
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListObjectPolicies.AttachedPolicyIds")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            strVal = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListObjectPolicies.AttachedPolicyIds[j]")
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            SourceObjectReferenceSelector = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].SourceObjectReference.Selector")
            TargetObjectReferenceSelector = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].TargetObjectReference.Selector")
            TypedLinkFacetSchemaArn = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].TypedLinkFacet.SchemaArn")
            TypedLinkFacetTypedLinkName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].TypedLinkFacet.TypedLinkName")
            k = 0
            count_k = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].IdentityAttributeValues")
            While k < count_k
                CkJsonObject::setCkK(jResp, k)
                AttributeName = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].IdentityAttributeValues[k].AttributeName")
                ValueBinaryValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].IdentityAttributeValues[k].Value.BinaryValue")
                ValueBooleanValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].IdentityAttributeValues[k].Value.BooleanValue")
                ValueDatetimeValue = CkJsonObject::ckIntOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].IdentityAttributeValues[k].Value.DatetimeValue")
                ValueNumberValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].IdentityAttributeValues[k].Value.NumberValue")
                ValueStringValue = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListOutgoingTypedLinks.TypedLinkSpecifiers[j].IdentityAttributeValues[k].Value.StringValue")
                k = k + 1
            Wend
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.ListPolicyAttachments.ObjectIdentifiers")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            strVal = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.ListPolicyAttachments.ObjectIdentifiers[j]")
            j = j + 1
        Wend
        j = 0
        count_j = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.LookupPolicy.PolicyToPathList")
        While j < count_j
            CkJsonObject::setCkJ(jResp, j)
            Path = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.LookupPolicy.PolicyToPathList[j].Path")
            k = 0
            count_k = CkJsonObject::ckSizeOfArray(jResp,"Responses[i].SuccessfulResponse.LookupPolicy.PolicyToPathList[j].Policies")
            While k < count_k
                CkJsonObject::setCkK(jResp, k)
                ObjectIdentifier = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.LookupPolicy.PolicyToPathList[j].Policies[k].ObjectIdentifier")
                PolicyId = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.LookupPolicy.PolicyToPathList[j].Policies[k].PolicyId")
                PolicyType = CkJsonObject::ckStringOf(jResp,"Responses[i].SuccessfulResponse.LookupPolicy.PolicyToPathList[j].Policies[k].PolicyType")
                k = k + 1
            Wend
            j = j + 1
        Wend
        i = i + 1
    Wend

    ; A sample JSON response body parsed by the above code:

    ; {
    ;   "Responses": [
    ;     {
    ;       "ExceptionResponse": {
    ;         "Message": "string",
    ;         "Type": "string"
    ;       },
    ;       "SuccessfulResponse": {
    ;         "GetLinkAttributes": {
    ;           "Attributes": [
    ;             {
    ;               "Key": {
    ;                 "FacetName": "string",
    ;                 "Name": "string",
    ;                 "SchemaArn": "string"
    ;               },
    ;               "Value": {
    ;                 "BinaryValue": blob,
    ;                 "BooleanValue": boolean,
    ;                 "DatetimeValue": number,
    ;                 "NumberValue": "string",
    ;                 "StringValue": "string"
    ;               }
    ;             }
    ;           ]
    ;         },
    ;         "GetObjectAttributes": {
    ;           "Attributes": [
    ;             {
    ;               "Key": {
    ;                 "FacetName": "string",
    ;                 "Name": "string",
    ;                 "SchemaArn": "string"
    ;               },
    ;               "Value": {
    ;                 "BinaryValue": blob,
    ;                 "BooleanValue": boolean,
    ;                 "DatetimeValue": number,
    ;                 "NumberValue": "string",
    ;                 "StringValue": "string"
    ;               }
    ;             }
    ;           ]
    ;         },
    ;         "GetObjectInformation": {
    ;           "ObjectIdentifier": "string",
    ;           "SchemaFacets": [
    ;             {
    ;               "FacetName": "string",
    ;               "SchemaArn": "string"
    ;             }
    ;           ]
    ;         },
    ;         "ListAttachedIndices": {
    ;           "IndexAttachments": [
    ;             {
    ;               "IndexedAttributes": [
    ;                 {
    ;                   "Key": {
    ;                     "FacetName": "string",
    ;                     "Name": "string",
    ;                     "SchemaArn": "string"
    ;                   },
    ;                   "Value": {
    ;                     "BinaryValue": blob,
    ;                     "BooleanValue": boolean,
    ;                     "DatetimeValue": number,
    ;                     "NumberValue": "string",
    ;                     "StringValue": "string"
    ;                   }
    ;                 }
    ;               ],
    ;               "ObjectIdentifier": "string"
    ;             }
    ;           ],
    ;           "NextToken": "string"
    ;         },
    ;         "ListIncomingTypedLinks": {
    ;           "LinkSpecifiers": [
    ;             {
    ;               "IdentityAttributeValues": [
    ;                 {
    ;                   "AttributeName": "string",
    ;                   "Value": {
    ;                     "BinaryValue": blob,
    ;                     "BooleanValue": boolean,
    ;                     "DatetimeValue": number,
    ;                     "NumberValue": "string",
    ;                     "StringValue": "string"
    ;                   }
    ;                 }
    ;               ],
    ;               "SourceObjectReference": {
    ;                 "Selector": "string"
    ;               },
    ;               "TargetObjectReference": {
    ;                 "Selector": "string"
    ;               },
    ;               "TypedLinkFacet": {
    ;                 "SchemaArn": "string",
    ;                 "TypedLinkName": "string"
    ;               }
    ;             }
    ;           ],
    ;           "NextToken": "string"
    ;         },
    ;         "ListIndex": {
    ;           "IndexAttachments": [
    ;             {
    ;               "IndexedAttributes": [
    ;                 {
    ;                   "Key": {
    ;                     "FacetName": "string",
    ;                     "Name": "string",
    ;                     "SchemaArn": "string"
    ;                   },
    ;                   "Value": {
    ;                     "BinaryValue": blob,
    ;                     "BooleanValue": boolean,
    ;                     "DatetimeValue": number,
    ;                     "NumberValue": "string",
    ;                     "StringValue": "string"
    ;                   }
    ;                 }
    ;               ],
    ;               "ObjectIdentifier": "string"
    ;             }
    ;           ],
    ;           "NextToken": "string"
    ;         },
    ;         "ListObjectAttributes": {
    ;           "Attributes": [
    ;             {
    ;               "Key": {
    ;                 "FacetName": "string",
    ;                 "Name": "string",
    ;                 "SchemaArn": "string"
    ;               },
    ;               "Value": {
    ;                 "BinaryValue": blob,
    ;                 "BooleanValue": boolean,
    ;                 "DatetimeValue": number,
    ;                 "NumberValue": "string",
    ;                 "StringValue": "string"
    ;               }
    ;             }
    ;           ],
    ;           "NextToken": "string"
    ;         },
    ;         "ListObjectChildren": {
    ;           "Children": {
    ;             "string": "string"
    ;           },
    ;           "NextToken": "string"
    ;         },
    ;         "ListObjectParentPaths": {
    ;           "NextToken": "string",
    ;           "PathToObjectIdentifiersList": [
    ;             {
    ;               "ObjectIdentifiers": [
    ;                 "string"
    ;               ],
    ;               "Path": "string"
    ;             }
    ;           ]
    ;         },
    ;         "ListObjectParents": {
    ;           "NextToken": "string",
    ;           "ParentLinks": [
    ;             {
    ;               "LinkName": "string",
    ;               "ObjectIdentifier": "string"
    ;             }
    ;           ]
    ;         },
    ;         "ListObjectPolicies": {
    ;           "AttachedPolicyIds": [
    ;             "string"
    ;           ],
    ;           "NextToken": "string"
    ;         },
    ;         "ListOutgoingTypedLinks": {
    ;           "NextToken": "string",
    ;           "TypedLinkSpecifiers": [
    ;             {
    ;               "IdentityAttributeValues": [
    ;                 {
    ;                   "AttributeName": "string",
    ;                   "Value": {
    ;                     "BinaryValue": blob,
    ;                     "BooleanValue": boolean,
    ;                     "DatetimeValue": number,
    ;                     "NumberValue": "string",
    ;                     "StringValue": "string"
    ;                   }
    ;                 }
    ;               ],
    ;               "SourceObjectReference": {
    ;                 "Selector": "string"
    ;               },
    ;               "TargetObjectReference": {
    ;                 "Selector": "string"
    ;               },
    ;               "TypedLinkFacet": {
    ;                 "SchemaArn": "string",
    ;                 "TypedLinkName": "string"
    ;               }
    ;             }
    ;           ]
    ;         },
    ;         "ListPolicyAttachments": {
    ;           "NextToken": "string",
    ;           "ObjectIdentifiers": [
    ;             "string"
    ;           ]
    ;         },
    ;         "LookupPolicy": {
    ;           "NextToken": "string",
    ;           "PolicyToPathList": [
    ;             {
    ;               "Path": "string",
    ;               "Policies": [
    ;                 {
    ;                   "ObjectIdentifier": "string",
    ;                   "PolicyId": "string",
    ;                   "PolicyType": "string"
    ;                 }
    ;               ]
    ;             }
    ;           ]
    ;         }
    ;       }
    ;     }
    ;   ]
    ; }


    CkRest::ckDispose(rest)
    CkAuthAws::ckDispose(authAws)
    CkJsonObject::ckDispose(json)
    CkStringBuilder::ckDispose(sbRequestBody)
    CkStringBuilder::ckDispose(sbResponseBody)
    CkJsonObject::ckDispose(jResp)


    ProcedureReturn
EndProcedure