code: def test_update_tag_props_api(self):
      tag = next(iter(self.repo.structured_db.tags()))
      self.assertEqual(None, tag.color)
      client = self.client
      response = client.put(
          f"/api/tags/{tag.uuid}/",
          json={
              "name": "my awesome tag",
              "color": "#FFFFFF",
              "description": "new description",
          },
      )
      self.assertEqual(200, response.status_code)
  
      response = client.get(f"/api/tags/{tag.uuid}/").json()
      self.assertEqual("my awesome tag", response["name"])
      self.assertEqual("#FFFFFF", response["color"])
      self.assertEqual("new description", response["description"])
  
imports: import uuid
  from tests.base import PrefilledDataApiTestBase
label_desc: Use image node_id 9 for calling the TestStructuredRunApi obj's underlying member method code with example usage: obj.test_update_tag_props_api() without return types