Obtaining Template Version Content
Function
ShowTemplateVersionContent
This API obtains the template version content.
-
template_id is the unique ID of the template. It is a UUID generated by RFS when a template is created. Template names are unique at one specific time, so you can create a template named HelloWorld and another template with the same name after deleting the first one. For parallel development, team members may want to ensure that they are operating the template they created, not one with the same name created by other members after deleting the previous one. To avoid this mismatch, check the ID, since RFS ensures each template has a unique ID that does not change with updates. If the template_id value differs from the current template ID, 400 is returned.
-
This API returns the download link (a pre-signed URL of OBS, valid for 5 minutes) of the template content through temporary redirection. You can download the template version content from the link.
-
If you manually access the redirected OBS download link, do not include any request headers in the request, or the signature will fail.
ShowTemplateVersionContent returns only the template version content. To obtain the metadata of a template version, call ShowTemplateVersionMetadata.
URI
GET /v1/{project_id}/templates/{template_name}/versions/{version_id}
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. It can be obtained by calling an API or from the console. |
template_name |
Yes |
String |
Name of the template to be created. |
version_id |
Yes |
String |
Template version ID. It starts with V (uppercase). The number of the ID is incremented by 1 each time a version is created. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
template_id |
No |
String |
ID of a template. If template_id exists, the template service checks whether template_id matches template_name. If not, 400 is returned. |
access_control_source_ips |
No |
Array of strings |
The array of source ips that are allowed to access the stack template, the source ip must be an IPv4 address with a subnet mask in CIDR notation. |
access_control_source_vpc_ids |
No |
Array of strings |
The array of source vpc ids that are allowed to access the stack template, the source vpc id should only contain lowercase letters, digits, and hyphens (-). |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
Client-Request-Id |
Yes |
String |
Unique request ID. It is specified by a user and is used to locate a request. UUID is recommended. |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
- |
String |
Empty response body |
Status code: 307
Parameter |
Type |
Description |
---|---|---|
Location |
String |
HTTP redirection header. The client can use this header to redirect to a new address. The content is a template download link, which is a pre-signed OBS URL valid for 10 minutes. |
Parameter |
Type |
Description |
---|---|---|
- |
String |
Empty response body |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
encoded_authorization_message |
String |
The message contains information about unauthorized requests. |
details |
Array of Detail objects |
Detailed error messages returned by service when permission is denied. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Response code. |
error_msg |
String |
Response message. |
Status code: 401
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
encoded_authorization_message |
String |
The message contains information about unauthorized requests. |
details |
Array of Detail objects |
Detailed error messages returned by service when permission is denied. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Response code. |
error_msg |
String |
Response message. |
Status code: 403
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
encoded_authorization_message |
String |
The message contains information about unauthorized requests. |
details |
Array of Detail objects |
Detailed error messages returned by service when permission is denied. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Response code. |
error_msg |
String |
Response message. |
Status code: 404
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
encoded_authorization_message |
String |
The message contains information about unauthorized requests. |
details |
Array of Detail objects |
Detailed error messages returned by service when permission is denied. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Response code. |
error_msg |
String |
Response message. |
Status code: 429
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
encoded_authorization_message |
String |
The message contains information about unauthorized requests. |
details |
Array of Detail objects |
Detailed error messages returned by service when permission is denied. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Response code. |
error_msg |
String |
Response message. |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
encoded_authorization_message |
String |
The message contains information about unauthorized requests. |
details |
Array of Detail objects |
Detailed error messages returned by service when permission is denied. |
Example Requests
-
Obtain a specified version of a specified template.
GET https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/versions/V1
-
Obtain a specified version of a specified template and check whether the template ID matches the current template.
GET https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/versions/V1?template_id=1b15e005-bdbb-4bd7-8f9a-a09b6774b4b3
-
Obtain a specified version of a specified template and provide access_control_source_ips to control the source ips that are allowed to access the current template.
GET https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/versions/V1?access_control_source_ips=100.11.5.100/24&access_control_source_ips=100.22.5.100/24
-
Obtain a specified version of a specified template and provide access_control_source_vpc_ids to control the source vpc ids that are allowed to access the current template.
GET https://{endpoint}/v1/c364070ab35041ddae68cf8b4839b60f/templates/my_template/versions/V1?access_control_source_vpc_ids=d42a8768-ad3c-4bca-91t8-53870f3402a9&access_control_source_vpc_ids=d42a8768-ad3c-4bca-91t8-53870f3402a8
Example Responses
None
Status Codes
Status Code |
Description |
---|---|
200 |
Empty response body. |
307 |
Template version content requested. The request is redirected to the download link. |
400 |
Invalid request. |
401 |
Authentication failed. |
403 |
The user does not have the permission to call this API. |
404 |
The template or template version does not exist. |
429 |
Too frequent requests. |
500 |
Internal server error. |
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