Back to Collection Items
IncludeFile "CkJsonObject.pb"
IncludeFile "CkStringBuilder.pb"
IncludeFile "CkHttp.pb"
Procedure ChilkatExample()
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
http.i = CkHttp::ckCreate()
If http.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success.i
CkHttp::ckSetRequestHeader(http,"Authorization","{{signature}}")
CkHttp::ckSetRequestHeader(http,"Date","{{date}}")
sbResponseBody.i = CkStringBuilder::ckCreate()
If sbResponseBody.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkHttp::ckQuickGetSb(http,"https://iaas.{{region}}.oraclecloud.com/20160918/virtualCircuits/:virtualCircuitId",sbResponseBody)
If success = 0
Debug CkHttp::ckLastErrorText(http)
CkHttp::ckDispose(http)
CkStringBuilder::ckDispose(sbResponseBody)
ProcedureReturn
EndIf
jResp.i = CkJsonObject::ckCreate()
If jResp.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckLoadSb(jResp,sbResponseBody)
CkJsonObject::setCkEmitCompact(jResp, 0)
Debug "Response Body:"
Debug CkJsonObject::ckEmit(jResp)
respStatusCode.i = CkHttp::ckLastStatus(http)
Debug "Response Status Code = " + Str(respStatusCode)
If respStatusCode >= 400
Debug "Response Header:"
Debug CkHttp::ckLastHeader(http)
Debug "Failed."
CkHttp::ckDispose(http)
CkStringBuilder::ckDispose(sbResponseBody)
CkJsonObject::ckDispose(jResp)
ProcedureReturn
EndIf
; Sample JSON response:
; (Sample code for parsing the JSON response is shown below)
; {
; "bandwidthShapeName": "aliquip quis",
; "bgpManagement": "PROVIDER_MANAGED",
; "bgpSessionState": "UP",
; "compartmentId": "ex voluptate ea eiusmod",
; "crossConnectMappings": [
; {
; "value": "<Error: Too many levels of nesting to fake this schema>"
; },
; {
; "value": "<Error: Too many levels of nesting to fake this schema>"
; }
; ],
; "customerBgpAsn": 32592947,
; "definedTags": {},
; "displayName": "sunt exercitation",
; "freeformTags": {},
; "gatewayId": "sed deserunt magna",
; "id": "ex Duis amet culpa",
; "lifecycleState": "PROVISIONING",
; "oracleBgpAsn": 34318225,
; "providerName": "ullamco occaecat culpa cillum",
; "providerServiceId": "nisi ex culpa dolor",
; "providerServiceKeyName": "nostru",
; "providerServiceName": "laboris labore",
; "providerState": "ACTIVE",
; "publicPrefixes": [
; "proident et amet qui dolor",
; "tempor nostrud"
; ],
; "referenceComment": "laboris fugiat do",
; "region": "dolore sint ut non",
; "routingPolicy": [
; "MARKET_LEVEL",
; "GLOBAL"
; ],
; "serviceType": "LAYER2",
; "timeCreated": "2021-02-05T13:31:56.554Z",
; "type": "PUBLIC"
; }
; Sample code for parsing the JSON response...
; Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
value.s
strVal.s
bandwidthShapeName.s = CkJsonObject::ckStringOf(jResp,"bandwidthShapeName")
bgpManagement.s = CkJsonObject::ckStringOf(jResp,"bgpManagement")
bgpSessionState.s = CkJsonObject::ckStringOf(jResp,"bgpSessionState")
compartmentId.s = CkJsonObject::ckStringOf(jResp,"compartmentId")
customerBgpAsn.i = CkJsonObject::ckIntOf(jResp,"customerBgpAsn")
displayName.s = CkJsonObject::ckStringOf(jResp,"displayName")
gatewayId.s = CkJsonObject::ckStringOf(jResp,"gatewayId")
id.s = CkJsonObject::ckStringOf(jResp,"id")
lifecycleState.s = CkJsonObject::ckStringOf(jResp,"lifecycleState")
oracleBgpAsn.i = CkJsonObject::ckIntOf(jResp,"oracleBgpAsn")
providerName.s = CkJsonObject::ckStringOf(jResp,"providerName")
providerServiceId.s = CkJsonObject::ckStringOf(jResp,"providerServiceId")
providerServiceKeyName.s = CkJsonObject::ckStringOf(jResp,"providerServiceKeyName")
providerServiceName.s = CkJsonObject::ckStringOf(jResp,"providerServiceName")
providerState.s = CkJsonObject::ckStringOf(jResp,"providerState")
referenceComment.s = CkJsonObject::ckStringOf(jResp,"referenceComment")
region.s = CkJsonObject::ckStringOf(jResp,"region")
serviceType.s = CkJsonObject::ckStringOf(jResp,"serviceType")
timeCreated.s = CkJsonObject::ckStringOf(jResp,"timeCreated")
v_type.s = CkJsonObject::ckStringOf(jResp,"type")
i.i = 0
count_i.i = CkJsonObject::ckSizeOfArray(jResp,"crossConnectMappings")
While i < count_i
CkJsonObject::setCkI(jResp, i)
value = CkJsonObject::ckStringOf(jResp,"crossConnectMappings[i].value")
i = i + 1
Wend
i = 0
count_i = CkJsonObject::ckSizeOfArray(jResp,"publicPrefixes")
While i < count_i
CkJsonObject::setCkI(jResp, i)
strVal = CkJsonObject::ckStringOf(jResp,"publicPrefixes[i]")
i = i + 1
Wend
i = 0
count_i = CkJsonObject::ckSizeOfArray(jResp,"routingPolicy")
While i < count_i
CkJsonObject::setCkI(jResp, i)
strVal = CkJsonObject::ckStringOf(jResp,"routingPolicy[i]")
i = i + 1
Wend
CkHttp::ckDispose(http)
CkStringBuilder::ckDispose(sbResponseBody)
CkJsonObject::ckDispose(jResp)
ProcedureReturn
EndProcedure
Curl Command
curl -X GET
-H "Date: {{date}}"
-H "Authorization: {{signature}}"
https://iaas.{{region}}.oraclecloud.com/20160918/virtualCircuits/:virtualCircuitId
Postman Collection Item JSON
{
"name": "GetVirtualCircuit",
"request": {
"method": "GET",
"header": [
{
"key": "Date",
"value": "{{date}}",
"description": "(Required) Current Date",
"type": "text"
},
{
"key": "Authorization",
"value": "{{signature}}",
"description": "(Required) Signature Authentication on Authorization header",
"type": "text"
}
],
"url": {
"raw": "{{baseUrl}}/virtualCircuits/:virtualCircuitId",
"host": [
"{{baseUrl}}"
],
"path": [
"virtualCircuits",
":virtualCircuitId"
],
"variable": [
{
"key": "virtualCircuitId",
"value": "amet ut",
"description": "(Required) The [OCID](/Content/General/Concepts/identifiers.htm) of the virtual circuit."
}
]
},
"description": "Gets the specified virtual circuit's information."
},
"response": [
{
"name": "The virtual circuit was retrieved.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/virtualCircuits/:virtualCircuitId",
"host": [
"{{baseUrl}}"
],
"path": [
"virtualCircuits",
":virtualCircuitId"
],
"variable": [
{
"key": "virtualCircuitId"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "etag",
"value": "officia sed",
"description": "For optimistic concurrency control. See `if-match`.\n"
},
{
"key": "opc-request-id",
"value": "officia sed",
"description": "Unique Oracle-assigned identifier for the request. If you need to contact\nOracle about a particular request, please provide the request ID.\n"
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"bandwidthShapeName\": \"aliquip quis\",\n \"bgpManagement\": \"PROVIDER_MANAGED\",\n \"bgpSessionState\": \"UP\",\n \"compartmentId\": \"ex voluptate ea eiusmod\",\n \"crossConnectMappings\": [\n {\n \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n },\n {\n \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n }\n ],\n \"customerBgpAsn\": 32592947,\n \"definedTags\": {},\n \"displayName\": \"sunt exercitation\",\n \"freeformTags\": {},\n \"gatewayId\": \"sed deserunt magna\",\n \"id\": \"ex Duis amet culpa\",\n \"lifecycleState\": \"PROVISIONING\",\n \"oracleBgpAsn\": 34318225,\n \"providerName\": \"ullamco occaecat culpa cillum\",\n \"providerServiceId\": \"nisi ex culpa dolor\",\n \"providerServiceKeyName\": \"nostru\",\n \"providerServiceName\": \"laboris labore\",\n \"providerState\": \"ACTIVE\",\n \"publicPrefixes\": [\n \"proident et amet qui dolor\",\n \"tempor nostrud\"\n ],\n \"referenceComment\": \"laboris fugiat do\",\n \"region\": \"dolore sint ut non\",\n \"routingPolicy\": [\n \"MARKET_LEVEL\",\n \"GLOBAL\"\n ],\n \"serviceType\": \"LAYER2\",\n \"timeCreated\": \"2021-02-05T13:31:56.554Z\",\n \"type\": \"PUBLIC\"\n}"
},
{
"name": "Unauthorized",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/virtualCircuits/:virtualCircuitId",
"host": [
"{{baseUrl}}"
],
"path": [
"virtualCircuits",
":virtualCircuitId"
],
"variable": [
{
"key": "virtualCircuitId"
}
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "json",
"header": [
{
"key": "opc-request-id",
"value": "officia sed",
"description": "Unique Oracle-assigned identifier for the request. If you need to contact\nOracle about a particular request, please provide the request ID.\n"
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"code\": \"et exercitation Excepteur\",\n \"message\": \"irure sit\"\n}"
},
{
"name": "Not Found",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/virtualCircuits/:virtualCircuitId",
"host": [
"{{baseUrl}}"
],
"path": [
"virtualCircuits",
":virtualCircuitId"
],
"variable": [
{
"key": "virtualCircuitId"
}
]
}
},
"status": "Not Found",
"code": 404,
"_postman_previewlanguage": "json",
"header": [
{
"key": "opc-request-id",
"value": "officia sed",
"description": "Unique Oracle-assigned identifier for the request. If you need to contact\nOracle about a particular request, please provide the request ID.\n"
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"code\": \"et exercitation Excepteur\",\n \"message\": \"irure sit\"\n}"
},
{
"name": "Internal Server Error",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/virtualCircuits/:virtualCircuitId",
"host": [
"{{baseUrl}}"
],
"path": [
"virtualCircuits",
":virtualCircuitId"
],
"variable": [
{
"key": "virtualCircuitId"
}
]
}
},
"status": "Internal Server Error",
"code": 500,
"_postman_previewlanguage": "json",
"header": [
{
"key": "opc-request-id",
"value": "officia sed",
"description": "Unique Oracle-assigned identifier for the request. If you need to contact\nOracle about a particular request, please provide the request ID.\n"
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"code\": \"et exercitation Excepteur\",\n \"message\": \"irure sit\"\n}"
},
{
"name": "An error has occurred.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/virtualCircuits/:virtualCircuitId",
"host": [
"{{baseUrl}}"
],
"path": [
"virtualCircuits",
":virtualCircuitId"
],
"variable": [
{
"key": "virtualCircuitId"
}
]
}
},
"status": "Internal Server Error",
"code": 500,
"_postman_previewlanguage": "json",
"header": [
{
"key": "opc-request-id",
"value": "officia sed",
"description": "Unique Oracle-assigned identifier for the request. If you need to contact\nOracle about a particular request, please provide the request ID.\n"
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"code\": \"et exercitation Excepteur\",\n \"message\": \"irure sit\"\n}"
}
]
}