Updated on 2023-06-29 GMT+08:00

Testing a Backend API

Function

This API is used to test whether a backend API is available.

URI

POST /v1/{project_id}/apic/instances/{instance_id}/livedata-apis/test

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID. For details about how to obtain the project ID, see Appendix > Obtaining a Project ID in the ROMA Connect API Reference.

instance_id

Yes

String

Instance ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

User token, which can be obtained by calling the IAM API (value of X-Subject-Token in the response header).

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

id

Yes

String

Backend API ID.

parameters

No

LdApiParameter object

Backend API request parameters.

Table 4 LdApiParameter

Parameter

Mandatory

Type

Description

name

Yes

String

Parameter name.

  • If the parameter is located in Headers or Parameters, the value can contain letters, digits, periods (.), hyphens (-), and underscores (_), and must start with a letter. The value is case-insensitive.

  • If the parameter is located in Body, it is named application/json, application/xml, or application/text. However, the key-value pair in Body is used as the parameter name and parameter value. For example, if the parameter name is application/json and the parameter value is {"table":"apic01","id":"1"}, the backend uses table:apic01 and id:1 as input parameters.

  • Note: The parameter name must be unique. Otherwise, the parameters will be overwritten. When the parameters in Headers and Parameters are duplicate, the parameters will be overwritten. When the key-value pairs in Parameters and Body are duplicate, the parameters will be overwritten.

Minimum: 1

Maximum: 32

in

Yes

String

Position of the parameter during API calling:

  • Headers

  • Parameters

  • Body

default

No

String

Default value.

Maximum: 4000

description

No

String

Parameter description, which cannot contain < and >.

Minimum: 0

Maximum: 255

required

No

Boolean

Whether the parameter is mandatory. true: The parameter is mandatory. false: The parameter is optional.

Default: false

Response Parameters

Status code: 200

Table 5 Response body parameters

Parameter

Type

Description

testStatusCode

String

Returned status code.

testRequest

String

Request method.

testUsedtime

Integer

Test duration.

testOperator

String

Project ID of the tester.

testResponse

String

Test response content.

testMethod

String

Request method.

testID

Integer

Test ID.

testDate

String

Test time.

apiUUID

String

Backend API ID.

Status code: 400

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 401

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 403

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 404

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 500

Table 10 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Example Requests

{
  "id" : "bd42841c20184da6bbf457c6d8a06e37",
  "parameter" : [ {
    "name" : "header",
    "in" : "Headers",
    "required" : false,
    "default" : "test"
  } ]
}

Example Responses

Status code: 200

OK

{
  "apiUUID" : "bd42841c20184da6bbf457c6d8a06e37",
  "testDate" : "2020-09-19T06:40:52Z",
  "testID" : 2524356,
  "testMethod" : "GET",
  "testOperator" : "73d69ae0cfcf460190522d06b60f05ad",
  "testRequest" : "{\"apiUUID\":\"bd42841c20184da6bbf457c6d8a06e37\",\"method\":\"GET\",\"params\":[{\"paramDesc\":\"\",\"paramName\":\"header\",\"paramRequired\":\"0\",\"paramType\":\"Headers\",\"paramValue\":\"test\"}],\"testUrl\":\"/test/function\"}",
  "testResponse" : "Hello world!",
  "testStatusCode" : "200",
  "testUsedtime" : 29
}

Status code: 400

Bad Request

{
  "error_code" : "APIG.2011",
  "error_msg" : "Invalid parameter value,parameterName:instance_id. Please refer to the support documentation"
}

Status code: 401

Unauthorized

{
  "error_code" : "APIG.1002",
  "error_msg" : "Incorrect token or token resolution failed"
}

Status code: 403

Forbidden

{
  "error_code" : "APIG.1005",
  "error_msg" : "No permissions to request this method"
}

Status code: 404

Not Found

{
  "error_code" : "APIG.3084",
  "error_msg" : "The livedata API does not exist, id: bd42841c20184da6bbf457c6d8a06e37"
}

Status code: 500

Internal Server Error

{
  "error_code" : "APIG.9999",
  "error_msg" : "System error"
}

Status Codes

Status Code

Description

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Internal Server Error

Error Codes

See Error Codes.