Creating a Database
Function
This API is used to create a database.
URI
POST /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. For how to obtain the project ID, see Obtaining a Project ID (lakeformation_04_0026.xml). |
instance_id |
Yes |
String |
LakeFormation instance ID. The value is automatically generated when the instance is created, for example, 2180518f-42b8-4947-b20b-adfc53981a25. |
catalog_name |
Yes |
String |
Catalog name. The value should contain 1 to 256 characters. Only letters, numbers, and underscores (_) are allowed. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
Array of strings |
Tenant token. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
database_name |
Yes |
String |
Database name. The value should contain 1 to 128 characters. Only letters, numbers, hyphens (-), and underscores (_) are allowed. |
external_database_id |
No |
String |
User database ID, which is specified during creation and cannot be changed. |
owner |
No |
String |
Database owner. The value contains 0 to 128 characters. |
owner_type |
No |
String |
Owner type. The options are USER (user), GROUP (group), and ROLE (role). The LakeFormation service is divided into phase 1 and phase 2. The response body of phase 1 does not contain this parameter. Enumeration values:
|
owner_auth_source_type |
No |
String |
Owner source. The options are IAM (cloud user), SAML (SAML-based federation), LDAP (lD user), LOCAL (local user), AGENTTENANT (agency), and OTHER (others). The LakeFormation service is divided into phase 1 and phase 2. The response body of phase 1 does not contain this parameter. Enumeration values:
|
description |
No |
String |
Database description. Enter a maximum of 4,000 characters when you create the database. |
location |
No |
String |
Database directory, for example, obs://location/uri/. |
parameters |
No |
Map<String,String> |
Tags. |
table_location_list |
No |
Array of strings |
List of table paths. |
function_location_list |
No |
Array of strings |
Function path list. |
Response Parameters
Status code: 201
Parameter |
Type |
Description |
---|---|---|
catalog_name |
String |
Catalog name. |
catalog_id |
String |
catalogID. |
database_name |
String |
Database name. |
database_id |
String |
Database ID. |
database_status |
Integer |
Database status. The options are 0 (normal), 1 (deleting), 2 (deleted), or 3 (restoring). |
external_database_id |
String |
User database ID, which is specified during creation and cannot be changed. |
owner |
String |
Database owner. |
owner_type |
String |
Owner type. The options are USER (user), GROUP (group), and ROLE (role). Enumeration values:
|
owner_auth_source_type |
String |
Owner authorization source type. The options are IAM (cloud user), SAML (SAML-based federation), LDAP (lD user), LOCAL (local user), AGENTTENANT (agency), and OTHER (others). The LakeFormation service is divided into phase 1 and phase 2. The response body of phase 1 does not contain this parameter. Enumeration values:
|
description |
String |
Database description. |
location |
String |
Database directory, for example, obs://location/uri/. |
parameters |
Map<String,String> |
Parameters. |
table_location_list |
Array of strings |
List of table paths. The LakeFormation service is divided into phase 1 and phase 2. The response body of phase 1 does not contain this parameter. In phase 2, the default value is null. Value null indicates that the response body does not contain this parameter. |
function_location_list |
Array of strings |
Function path list. Value null (the default value) indicates that the response body does not contain this parameter. |
update_time |
String |
Database metadata last modification time. |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
solution_msg |
String |
Solution. |
Status code: 404
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
solution_msg |
String |
Solution. |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
solution_msg |
String |
Solution. |
Example Requests
POST https://{endpoint} /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases { "database_name" : "db8a9ea595e6a14db1bdb3c3a90bf2554c", "owner" : "owner", "owner_type" : "USER", "description" : "description", "location" : "obs://location/test/db8a9ea595e6a14db1bdb3c3a90bf2554c.db", "parameters" : { "transient_lastDdlTime" : "120", "comment" : "comment message", "classification" : "other" } }
Example Responses
Status code: 201
Created
{ "catalog_name" : "catalog0b5633ba2b904511ad514346f4d23d4b", "database_name" : "db8a9ea595e6a14db1bdb3c3a90bf2554c", "owner" : "owner", "owner_type" : "USER", "description" : "description", "location" : "obs://location/test/db8a9ea595e6a14db1bdb3c3a90bf2554c.db", "parameters" : { "transient_lastDdlTime" : "120", "comment" : "comment message", "classification" : "other" }, "table_location_list" : [ ], "function_location_list" : [ ] }
Status code: 400
Bad Request
{ "error_code" : "common.01000001", "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException" }
Status code: 401
Unauthorized
{ "error_code": 'APIG.1002', "error_msg": 'Incorrect token or token resolution failed' }
Status code: 403
Forbidden
{ "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "error_code" : null, "error_msg" : null, "title" : "Forbidden" }, "error_code" : "403", "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" }
Status code: 404
Not Found
{ "error_code" : "common.01000001", "error_msg" : "response status exception, code: 404" }
Status code: 408
Request Timeout
{ "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" }
Status code: 500
Internal Server Error
{ "error_code" : "common.00000500", "error_msg" : "internal error" }
Status Codes
Status Code |
Description |
---|---|
201 |
Created |
400 |
Bad Request |
401 |
Unauthorized |
403 |
Forbidden |
404 |
Not Found |
408 |
Request Timeout |
500 |
Internal Server Error |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot