- tocdepth
2
Как передается значение value при запросе ключа через API?
Через API-запрос можно передавать запрос тегов в формате «key» = «value». Подробнее о параметрах передачи API-запроса.
В общем виде такой запрос будет выглядеть:
POST https://TMS endpoint/v1.0/tags/action
{
"action": "create",
"tags": [
{
"key": "ENV1",
"value": "DEV1"
}
]
}
Параметры:
action
— обязательный параметр string, отвечающий за операцию по созданию или удалению тегов. Может бытьcreate
илиdelete
.tags
— обязательный параметр array, который задает список тегов. В тег включены значенияkey
иvalue
:key
— обязательный string параметр, задающий ключ тега. Он должен содержать до 36 символов, где могут быть только буквы, цифры, дефисы (-) и подчеркивания (_).value
— обязательный string параметр, задающий значение тега. Оно должно содержать до 43 символов, где могут быть только буквы, цифры, точки (.), дефисы (-) и подчеркивания (_).
Ниже приведен один из примеров реализации кода на Python.
Запрос токена:
def getToken( username, password, domain, project ): url = iam + "/v3/auth/tokens" headers = { "Content-Type": "application/json;charset=utf8" } data = { "auth": { "identity": { "methods": ["password"], "password": { "user": { "name": username, "password": password, "domain": { "name": domain } } } }, "scope": { "project": { "id": project } } } } request = requests.post( url, headers = headers, json = data, verify = False ).headers['X-Subject-Token'] return request
Назначение тега с ключом и значением:
def tagEcs( token, projectId, ecsId ): url = ecs + "/v1/" + projectId + "/cloudservers/" + ecsId + "/tags/action" headers = { "Content-Type": "application/json;charset=utf8", "X-Auth-Token": token } data = { "action": "create", "tags": [ { "key": "test", "value": "test" }, { "key": "test2", "value": "test2" } ] } request = requests.post( url, headers = headers, json = data, verify = False ) return request
для Dev & Test