Updated on 2024-10-25 GMT+08:00

Querying Information about Available Links

Function

This API is used to query information about available links.

Constraints

  • This API is available only for synchronization from MySQL to MySQL, migration from Redis to GeminiDB Redis, migration from Redis Cluster to GeminiDB Redis, and synchronization from Oracle to GaussDB Distributed.
  • This API can be used only in certain regions. For details, see Endpoints.

URI

GET /v5/{project_id}/links

Table 1 Path parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID of a tenant in a region.

For details about how to obtain the project ID, see Obtaining a Project ID.

Table 2 Query parameters

Parameter

Mandatory

Type

Description

job_type

Yes

String

Task scenario. Values:

  • migration: real-time migration.
  • sync: real-time synchronization.
  • cloudDataGuard: real-time disaster recovery.

Enumerated values:

  • migration
  • sync
  • cloudDataGuard

offset

No

Integer

Offset. The records after this offset will be queried.

limit

No

Integer

Maximum number of records that can be returned.

Request Parameters

Table 3 Request header parameters

Parameter

Mandatory

Type

Description

Content-Type

Yes

String

MIME type of the request body. Use the default value application/json. For APIs used to upload objects or images, the value varies depending on the flow type.

The default value is application/json.

X-Auth-Token

Yes

String

User token obtained from IAM.

It is a response to the API for obtaining a user token. This API is the only one that does not require authentication.

After a request is processed, the value of X-Subject-Token in the header is the token value.

X-Language

No

String

Request language type.

Default value: en-us

Enumerated values:

  • en-us
  • zh-cn

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

job_links

Array of objects

Information about available links.

For details, see Table 5.

total_count

Integer

Total number of available links.

Table 5 Data structure description of field job_links

Parameter

Type

Description

job_type

String

Task scenario. Values:

  • migration: real-time migration.
  • sync: real-time synchronization.
  • cloudDataGuard: real-time disaster recovery.

Enumerated values:

  • migration
  • sync
  • cloudDataGuard

engine_type

String

Engine type. Values:

  • oracle-to-gaussdbv5: Synchronization from Oracle to GaussDB distributed.
  • redis-to-gaussredis: Migration from Redis to GeminiDB Redis.
  • rediscluster-to-gaussredis: Migration from Redis Cluster to GeminiDB Redis.

Enumerated values:

  • oracle-to-gaussdbv5
  • redis-to-gaussredis
  • rediscluster-to-gaussredis

source_endpoint_type

String

Source DB instance type. Values:

  • offline: indicates an on-premises database.
  • ecs: indicates a database built on Huawei Cloud ECSs.
  • cloud: indicates a Huawei cloud database.

Enumerated values:

  • offline
  • ecs
  • cloud

target_endpoint_type

String

Destination DB instance type. Values:

  • offline: indicates an on-premises database.
  • ecs: indicates a database built on Huawei Cloud ECSs.
  • cloud: indicates a Huawei cloud database.

Enumerated values:

  • offline
  • ecs
  • cloud

job_direction

String

Migration direction. Values:

  • up: to-the-cloud scenarios and DR scenarios where the current cloud is the standby.
  • down: out-of-cloud scenarios and DR scenarios where the current cloud is the active.
  • non-dbs: self-built databases.

Enumerated values:

  • up
  • down
  • non-dbs

net_type

String

Network type. Values:

  • eip: public network.
  • vpc: VPC network. The VPC network cannot be selected in DR scenarios.
  • vpn: VPN or Direct Connect.

Enumerated values:

  • eip
  • vpc
  • vpn

task_types

Array of strings

Migration type. Values:

  • FULL_TRANS: full migration.
  • FULL_INCR_TRANS: full+incremental migration.
  • INCR_TRANS: incremental migration.

Enumerated values:

  • FULL_TRANS
  • FULL_INCR_TRANS
  • INCR_TRANS

cluster_modes

Array of strings

Engine instance mode. Values:

  • Single: single node.
  • Ha: primary/standby.
  • Cluster: cluster.
  • Sharding: sharding.
  • Independent: independent GaussDB deployment.

Enumerated values:

  • Single
  • Ha
  • Cluster
  • Sharding
  • Independent

description

String

Description.

Status code: 400

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

Minimum length: 12

Maximum length: 12

error_msg

String

Error message.

Minimum length: 1

Maximum length: 512

Example Request

  • Querying information about available links for real-time migration
    https://{endpoint}/v5/054ba152d480d55b2f5dc0069e7ddef0/links?job_type=migration
  • Querying information about available links for real-time synchronization
    https://{endpoint}/v5/054ba152d480d55b2f5dc0069e7ddef0/links?job_type=sync
  • Querying information about available links for real-time disaster recovery
    https://{endpoint}/v5/054ba152d480d55b2f5dc0069e7ddef0/links?job_type=cloudDataGuard

Example Response

Status code: 200

OK

{
  "job_links" : [ {
    "job_type" : "sync",
    "engine_type" : "oracle-to-gaussdbv5",
    "net_type" : "eip",
    "task_types" : [ "FULL_INCR_TRANS", "FULL_TRANS", "INCR_TRANS" ],
    "job_direction" : "up",
    "cluster_modes" : [ "Independent", "Combined" ],
    "source_endpoint_type" : "offline",
    "target_endpoint_type" : "cloud"
  }, {
    "job_type" : "sync",
    "engine_type" : "oracle-to-gaussdbv5",
    "net_type" : "vpn",
    "task_types" : [ "FULL_INCR_TRANS", "FULL_TRANS", "INCR_TRANS" ],
    "job_direction" : "up",
    "cluster_modes" : [ "Independent", "Combined" ],
    "source_endpoint_type" : "offline",
    "target_endpoint_type" : "cloud"
  } ],
  "total_count" : 2
}

Status code: 400

Bad Request

{
  "error_code" : "DRS.10000009",
  "error_msg" : "Parameter error."
}

Status Code

Status Code

Description

200

OK

400

Bad Request

Error Code

For details, see Error Code.