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

Creating a Destination

Function

Creating a Destination

URI

POST /v2/{project_id}/link/instances/{instance_id}/rules/{rule_id}/destinations

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.

Minimum: 0

Maximum: 32

instance_id

Yes

String

Instance ID.

Minimum: 0

Maximum: 36

rule_id

Yes

String

Rule ID.

Minimum: 0

Maximum: 20

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).

Minimum: 1

Maximum: 100000

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

destination_type

Yes

Integer

Notification destination. Options: 0-ROMA instance MQS; 1-FI Kafka data source in the current ROMA instance; 2-MRS Kafka data source in the current ROMA instance; 3-Kafka data source in the current ROMA instance; 6-DIS data source; 7-Device.

Minimum: 0

Maximum: 7

app_id

No

String

Application ID. If destination_type is 0, the value is the integrated application ID to which the MQS topic belongs. If destination_type is 1, 2, or 3, the value is the integrated application ID to which the KAFKA data source belongs. If destination_type is 7, the value is the integrated application ID to which the device belongs.

Minimum: 0

Maximum: 64

destination_name

No

String

Data source name at the destination. If destination_type is 1, 2, or 3, the value is the name of the KAFKA data source.

Minimum: 0

Maximum: 64

topic

Yes

String

Topic of the data source at the destination. If destination_type is 0, obtain the existing topic from the MQS service. If destination_type is 1, 2, or 3, obtain the existing topic from the KAFKA data source.

Minimum: 0

Maximum: 64

server

No

String

Destination data source. The server field is mandatory when destination_type is set to: 0 (MQS); 1/2/3 (Kafka data sources); 7 (product name of the device)

Minimum: 0

Maximum: 64

token

No

String

Token of the data source at the destination. If destination_type is 7, the value is the client ID of the device.

Minimum: 0

Maximum: 1000

tag

No

String

Tag of the data source at the destination. If destination_type is 7, the value is the device name.

Minimum: 0

Maximum: 64

mqs_sasl_ssl

No

Boolean

Whether the SASL field in the MQS data source at the destination needs to support SSL encryption.

user_name

No

String

Username for accessing the data source at the destination.

Minimum: 0

Maximum: 64

password

No

String

Password for accessing the data source at the destination.

Minimum: 0

Maximum: 64

Response Parameters

Status code: 201

Table 4 Response body parameters

Parameter

Type

Description

destination_id

Integer

Data source ID at the destination.

Minimum: 1

Maximum: 99999999999999999

destination_type

Integer

Destination type. The options are as follows: 0: The destination is MQS in the ROMA instance. 7: The destination is a device.

Minimum: 0

Maximum: 10

app_id

String

Application ID. If destination_type is 0, the application ID of the peer end must be specified.

Minimum: 0

Maximum: 64

destination_name

String

Data source name at the destination.

Minimum: 0

Maximum: 64

topic

String

Topic of the data source at the destination.

Minimum: 0

Maximum: 64

server

String

Data source at the destination.

Minimum: 0

Maximum: 200

token

String

Token of the data source at the destination.

Minimum: 0

Maximum: 1000

tag

String

Tag of the data source at the destination.

Minimum: 0

Maximum: 200

mqs_sasl_ssl

Boolean

Whether the SASL field in the MQS data source at the destination needs to support SSL encryption.

user_name

String

Username for accessing the data source at the destination.

Minimum: 0

Maximum: 80

password

String

Password for accessing the data source at the destination.

Minimum: 0

Maximum: 500

Status code: 400

Table 5 Response body parameters

Parameter

Type

Description

error_code

String

System error code, which is the detailed error code of HTTP error codes 4xx and 5xx.

Minimum: 0

Maximum: 64

error_msg

String

Error description.

Minimum: 0

Maximum: 200

request_id

String

Message ID.

Minimum: 0

Maximum: 64

Status code: 404

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

System error code, which is the detailed error code of HTTP error codes 4xx and 5xx.

Minimum: 0

Maximum: 64

error_msg

String

Error description.

Minimum: 0

Maximum: 200

request_id

String

Message ID.

Minimum: 0

Maximum: 64

Status code: 500

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

System error code, which is the detailed error code of HTTP error codes 4xx and 5xx.

Minimum: 0

Maximum: 64

error_msg

String

Error description.

Minimum: 0

Maximum: 200

request_id

String

Message ID.

Minimum: 0

Maximum: 64

Example Requests

{
  "destination_type" : 0,
  "app_id" : "ef3845be-091a-4ab5-869a-9de0025e2165",
  "destination_name" : "destination",
  "topic" : "/target_topic1",
  "server" : "xx.xx.xx.xx",
  "token" : "sd123r12312w12wdrfvgrt4t34t",
  "tag" : "tag1",
  "mqs_sasl_ssl" : false,
  "user_name" : "user1",
  "password" : "AS223ds4320d"
}

Example Responses

Status code: 201

Created

{
  "destination_id" : 27678,
  "destination_type" : 7,
  "app_id" : null,
  "destination_name" : null,
  "topic" : "8si8ST122893/in/214",
  "server" : "server",
  "token" : "token",
  "tag" : "device",
  "mqs_sasl_ssl" : "false",
  "user_name" : null,
  "password" : null
}

Status code: 400

Bad Request

{
  "error_code" : "SCB.00000000",
  "error_msg" : "Parameter is not valid for operation [romalink.link-ruledest.save]. Parameter is [rule_oid]. Processor is [path].",
  "request_id" : "cb39e78a-afd3-4e04-901d-70468b1c23dc-1619602712496-cnnorth7a-P-romalink-service01"
}

Status code: 404

Not Found

{
  "error_code" : "ROMA.00110006",
  "error_msg" : "The resource does not exist. Check whether the resource ID ff38023c-0854-4779-847d-72528e1f5da5 is correct.",
  "request_id" : "72b07918-f6a2-4721-81bf-f3fd5486025e-1619663576836-cnnorth7a-P-romalink-service01"
}

Status code: 500

Internal Server Error

{
  "error_code" : "ROMA.00110002",
  "error_msg" : "The instance does not exist. project_id: 397cd10b30544c588b2f4a56d83856c4, instance_id: f3bb386a-23ec-47aa-9943-4c60ac658611",
  "request_id" : "c8c06d0a-be92-4fdf-9d10-bc20131ab158-1619593104919-cnnorth7a-P-romalink-service01"
}

Status Codes

Status Code

Description

201

Created

400

Bad Request

404

Not Found

500

Internal Server Error

Error Codes

See Error Codes.