機能説明
このAPIはデータソースのリストを取得するために使用され、クラウドプロバイダー、リージョン、データベースタイプ、接続状態などの条件でフィルタリングできます。
呼び出し説明
インターフェース制約
呼び出し元はマルチクラウドAPIにアクセスするためのキーを保有している必要があります。AccessKey IDとAccessKey Secretの取得方法については、アクセスキーの管理を参照してください。
リクエストパス
GET /api/v2/datasource/datasources
リクエストパラメータ
Header
名前 |
型 |
必須 |
説明 |
サンプル値 |
|---|---|---|---|---|
| X-Ob-Project-Id | String | はい | プロジェクトID | proj-xxxxxxxx |
| X-Ob-Org-Id | String | はい | 組織ID | org-xxxxxxxx |
Query
名前 |
型 |
必須 |
説明 |
サンプル値 |
|---|---|---|---|---|
| page | Integer | いいえ | ページ番号、0から始まる | 0 |
| size | Integer | いいえ | 1ページあたりの件数、デフォルトはInteger.MAX_VALUE |
20 |
| sort | String | いいえ | ソートフィールド、例:sort=id,desc |
id,desc |
| fullFuzzySearchKeyword | String | いいえ | 全フィールドのあいまい検索キーワード | env |
| cloudProvider | Array<String> | いいえ | クラウドプロバイダー、選択可能な値:ALIYUN、HUAWEI、AWS、GCP、AZURE | ALIYUN |
| regionName | Array<String> | いいえ | リージョン名 | zone-xxxx |
| databaseType | Array<String> | いいえ | データベースタイプのリスト、選択可能な値:OB_MYSQL、OB_ORACLE、MYSQL、ORACLE、TIDB、POSTGRESQL、KAFKA | MYSQL |
| status | Array<String> | いいえ | 接続状態、選択可能な値:NOT_TESTED、ACTIVE、INACTIVE、TESTING、UNAVAILABLE | ACTIVE |
データソースがサポートするクラウドプロバイダーの範囲は以下のとおりです:
データベースタイプ |
サポートするクラウドプロバイダー |
説明 |
|---|---|---|
OB_MYSQL、OB_ORACLE |
ALIYUN、AWS、AZURE、GCP、HUAWEI |
HUAWEIは自社構築データベースをサポートしていません |
MYSQL、ORACLE、TIDB |
ALIYUN、AWS、AZURE、GCP |
— |
POSTGRESQL、KAFKA |
ALIYUN、AWS、GCP |
— |
戻り値
名称 |
型 |
説明 |
|---|---|---|
| success | Boolean | 成功かどうか |
| httpStatus | String | HTTPステータスコード |
| data | PaginatedData | ページネーションデータ |
PaginatedDataデータ構造
名称 |
型 |
説明 |
|---|---|---|
| page | Page | ページネーション情報 |
| contents | Array<DataSource> | データソースリスト |
Pageデータ構造
名称 |
型 |
説明 |
サンプル値 |
|---|---|---|---|
| totalElements | Integer | 総件数 | 100 |
| totalPages | Integer | 総ページ数 | 10 |
| number | Integer | 現在のページ番号(1から始まる) | 1 |
| size | Integer | 1ページあたりの件数 | 20 |
DataSourceデータ構造
名称 |
型 |
説明 |
サンプル値 |
|---|---|---|---|
| id | Integer | 主キーID | 1001 |
| uuid | String | 一意の識別子 | ds-uuid-xxx |
| name | String | データソース名 | my-mysql |
| projectId | String | プロジェクトID | proj-xxx |
| creatorUid | String | 作成者UID | 123456 |
| cloudProvider | String | クラウドプロバイダー | ALIYUN |
| region | String | リージョン | zone-xxxx |
| databaseType | String | データベースタイプ | MYSQL |
| instanceType | String | インスタンスタイプ | ALIYUN_RDS |
| networkAccessType | String | ネットワークアクセス方式 | PUBLIC_NETWORK |
| username | String | データベースユーザー名 | root |
| host | String | ホスト | rm-xxx.mysql.rds.aliyuncs.com |
| port | Integer | ポート | 3306 |
| visible | Boolean | ユーザーに表示されるかどうか | true |
| testConnectivityResult | Object | 接続テスト結果 | |
| testConnectivityResult.status | String | 接続状態。選択可能な値:NOT_TESTED、ACTIVE、INACTIVE、TESTING、UNAVAILABLE | ACTIVE |
| createTime | String | 作成日時 | 2026-06-30T10:00:00+08:00 |
| updateTime | String | 更新日時 | 2026-06-30T10:00:00+08:00 |
例
リクエスト例
curl --digest -u '<あなたのak:sk>' \
--request GET \
--url 'https://api-cloud.oceanbase.com/api/v2/datasource/datasources?page=0&size=20&cloudProvider=ALIYUN&status=ACTIVE' \
-H 'X-Ob-Project-Id: <プロジェクトID>' \
-H 'X-Ob-Org-Id: <組織ID>'
レスポンス例
{
"success": true,
"httpStatus": "OK",
"data": {
"page": {
"totalElements": 1,
"totalPages": 1,
"number": 1,
"size": 20
},
"contents": [
{
"id": 1001,
"uuid": "ds-uuid-xxx",
"name": "my-mysql",
"projectId": "proj-xxx",
"creatorUid": "123456",
"cloudProvider": "ALIYUN",
"region": "zone-xxxx",
"databaseType": "MYSQL",
"instanceType": "ALIYUN_RDS",
"networkAccessType": "PUBLIC_NETWORK",
"username": "root",
"host": "rm-xxx.mysql.rds.aliyuncs.com",
"port": 3306,
"testConnectivityResult": {
"status": "ACTIVE"
},
"createTime": "2026-06-30T10:00:00+08:00",
"updateTime": "2026-06-30T10:00:00+08:00"
}
]
}
}