Updated on 2024-02-21 GMT+08:00

Registering a Tenant Agreement

Function

User authorization and delegation.

URI

POST /v1/{project_id}/agreement

Table 1 Path Parameters

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

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

Tenant token.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

agreements

No

Array of TenantAgreement objects

Tenant agreement list.

Table 4 TenantAgreement

Parameter

Mandatory

Type

Description

agreement_name

No

String

Agreement name. The value should contain 1 to 64 characters. Only letters, numbers, hyphens (-), and underscores (_) are allowed.

agreement_version

No

String

Agreement version. The value should contain 1 to 32 characters. Only letters and numbers are allowed.

Response Parameters

Status code: 200

Table 5 Response header parameters

Parameter

Type

Description

X-request-id

String

Request ID, which is used to locate auxiliary information.

Status code: 400

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

common_error_code

String

CBC common error code.

solution_msg

String

Solution.

Status code: 404

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

common_error_code

String

CBC common error code.

solution_msg

String

Solution.

Status code: 500

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

common_error_code

String

CBC common error code.

solution_msg

String

Solution.

Example Requests

POST https://{endpoint}/v1/{project_id}/agreement

{
  "agreements" : [ {
    "agreement_name" : "agreement AAA",
    "agreement_version" : "v1"
  }, {
    "agreement_name" : "agreement BBB",
    "agreement_version" : "v1"
  } ]
}

Example Responses

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

200

Successful tenant agreement registration.

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

408

Request Timeout

500

Internal Server Error

Error Codes

See Error Codes.