Creating an Alias for a Function Version¶
Function¶
This API is used to create an alias for a function version.
URI¶
POST /v2/{project_id}/fgs/functions/{function_urn}/aliases
Parameter | Mandatory | Type | Description |
---|---|---|---|
project_id | Yes | String | Project ID. For details, see Obtaining a Project ID. |
function_urn | Yes | String | Function URN. For details, see the function model description. |
Request Parameters¶
Parameter | Mandatory | Type | Description |
---|---|---|---|
X-Auth-Token | Yes | String | User token. It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is the user token. |
Content-Type | Yes | String | Message body type (format). |
Parameter | Mandatory | Type | Description |
---|---|---|---|
name | Yes | String | Alias.Max. 64 of letters, digits, hyphens (-), and underscores (_). Start with a letter, and end with a letter or digit. Minimum length: 1 character. Maximum length: 64 characters. |
version | Yes | String | Version corresponding to the alias. |
description | No | String | Description of the alias. |
additional_version_weights | No | Map<String,Integer> | Traffic shifting by percentage. |
additional_version_strategy | No | Map<String,VersionStrategy> | Traffic shifting by rule. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
rules | No | Array of VersionStrategyRules objects | Rules. |
combine_type | No | String | Rule aggregation mode. and: All rules are met. or: Any rule is met. Enumeration values:
|
Parameter | Mandatory | Type | Description |
---|---|---|---|
rule_type | No | String | Parameter type. Enumeration values:
|
param | No | String | Rule parameter name, which can contain only letters, digits, underscores (_), and hyphens (-). |
op | No | String | Rule matching operator. Currently, only = and in are supported. Enumeration values:
|
value | No | String | Rule value. If op is set to in, the value is a multi-value character string separated by commas (,). |
Response Parameters¶
Status code: 200
Parameter | Type | Description |
---|---|---|
name | String | Alias to be queried. |
version | String | Version corresponding to the alias. |
description | String | Description of the alias. |
last_modified | String | Time when the alias was last modified. |
alias_urn | String | URN of the alias. |
additional_version_weights | Map<String,Integer> | Traffic shifting by percentage. |
additional_version_strategy | Map<String,VersionStrategy> | Traffic shifting by rule. |
Parameter | Type | Description |
---|---|---|
rules | Array of VersionStrategyRules objects | Rules. |
combine_type | String | Rule aggregation mode. and: All rules are met. or: Any rule is met. Enumeration values:
|
Parameter | Type | Description |
---|---|---|
rule_type | String | Parameter type. Enumeration values:
|
param | String | Rule parameter name, which can contain only letters, digits, underscores (_), and hyphens (-). |
op | String | Rule matching operator. Currently, only = and in are supported. Enumeration values:
|
value | String | Rule value. If op is set to in, the value is a multi-value character string separated by commas (,). |
Status code: 400
Parameter | Type | Description |
---|---|---|
error_code | String | Error code. |
error_msg | String | Error message. |
Status code: 401
Parameter | Type | Description |
---|---|---|
error_code | String | Error code. |
error_msg | String | Error message. |
Status code: 403
Parameter | Type | Description |
---|---|---|
error_code | String | Error code. |
error_msg | String | Error message. |
Status code: 404
Parameter | Type | Description |
---|---|---|
error_code | String | Error code. |
error_msg | String | Error message. |
Status code: 500
Parameter | Type | Description |
---|---|---|
error_code | String | Error code. |
error_msg | String | Error message. |
Example Requests¶
Create an alias named a1 for version v1 of a function.
POST https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/aliases { "name" : "a1", "version" : "v1" }
Create an alias named a1 for version v1 of a function, enable Traffic Shifting, and set Weight of version v2 to 50%.
POST https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/aliases { "name" : "a1", "version" : "v1", "additional_version_weights" : { "v2" : 50 } }
Create an alias named a1 for version v1 of a function, enable Traffic Shifting, and set version v2 to shift traffic by Rule.
POST https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/aliases { "name" : "a1", "version" : "v1", "additional_version_strategy" : { "v2" : { "combine_type" : "and", "rules" : [ { "rule_type" : "Header", "param" : "version", "op" : "=", "value" : "v1" } ] } } }
Example Responses¶
Status code: 200
ok
{
"name" : "a1",
"version" : "latest",
"description" : "",
"last_modified" : "2019-10-31 11:37:58",
"alias_urn" : "urn:fss:{region}:46b6f338fc3445b8846c71dfb1fbxxxx:function:default:xxxxx:!a1"
}
Status code: 404
Not found.
{
"error_code" : "FSS.1051",
"error_msg" : "Not found the function"
}
Status Codes¶
Status Code | Description |
---|---|
200 | ok |
400 | Bad request. |
401 | Unauthorized. |
403 | Forbidden. |
404 | Not found. |
500 | Internal server error. |
Error Codes¶
See Error Codes.