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
    
Запустили Evolution free tier
для Dev & Test
Получить