youtrack_openapi_client.exceptions.ApiValueError: Cannot deserialize input data due to invalid discriminator value.

День добрый.

Пытаюсь научиться работать с YouTrack через OpenAPI.

 За инструмент генерации взят openapi-generator.

Все хорошо, получается подключиться, найти задачу, комменты и т.д....за исключением одного типа абстракции - User.
Как только добавляю в запрос, допустим reporter - получаю ошибку.

Пример:

            query="State:installation"
            fields = "id,reporter(id),summary"
            try:
                api_response = api_instance.issues_get(fields=fields, query=query)
                for x in api_response:
                    pprint(x)
                   
            except youtrack_openapi_client.ApiException as e:
                print("Exception when calling DefaultApi->activities_get: %s\n" % e)

stackTrace:

(.venv) PS D:\project\python\yt> & d:/project/python/yt/.venv/Scripts/python.exe d:/project/python/yt/test_1.py
Traceback (most recent call last):
  File "d:\project\python\yt\test_1.py", line 8, in <module>
    yt.check()
  File "d:\project\python\yt\src\yt.py", line 42, in check
    api_response = api_instance.issues_get(fields=fields, query=query)
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\api\default_api.py", line 28324, in issues_get  
    return self.issues_get_endpoint.call_with_http_info(**kwargs)
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\api_client.py", line 879, in call_with_http_info
    return self.api_client.call_api(
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\api_client.py", line 421, in call_api
    return self.__call_api(resource_path, method,
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\api_client.py", line 226, in __call_api
    return_data = self.deserialize(
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\api_client.py", line 332, in deserialize
    deserialized_data = validate_and_convert_types(
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 1632, in validate_and_convert_types
    input_value[index] = validate_and_convert_types(
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 1582, in validate_and_convert_types
    converted_instance = attempt_convert_item(
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 1471, in attempt_convert_item
    raise conversion_exc
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 1462, in attempt_convert_item
    return deserialize_model(input_value, valid_class,
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 1376, in deserialize_model
    return model_class._new_from_openapi_data(**kw_args)
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 48, in wrapped_init
    return fn(_self, *args, **kwargs)
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 371, in _new_from_openapi_data
    return cls._from_openapi_data(*args, **kwargs)
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 48, in wrapped_init
    return fn(_self, *args, **kwargs)
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model\issue.py", line 302, in _from_openapi_data
    setattr(self, var_name, var_value)
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 189, in __setattr__
    self[attr] = value
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 510, in __setitem__
    self.set_attribute(name, value)
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 161, in set_attribute
    value = validate_and_convert_types(
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 1582, in validate_and_convert_types
    converted_instance = attempt_convert_item(
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 1471, in attempt_convert_item
    raise conversion_exc
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 1462, in attempt_convert_item
    return deserialize_model(input_value, valid_class,
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 1376, in deserialize_model
    return model_class._new_from_openapi_data(**kw_args)
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 48, in wrapped_init
    return fn(_self, *args, **kwargs)
  File "D:\project\python\yt\.venv\lib\site-packages\youtrack_openapi_client\model_utils.py", line 401, in _new_from_openapi_data
    raise ApiValueError(
youtrack_openapi_client.exceptions.ApiValueError: Cannot deserialize input data due to invalid discriminator value. The OpenAPI document has no mapping for discriminator property '$type'='User' at path: ['received_data', 0, 'reporter']
(.venv) PS D:\project\python\yt>

Подскажите, что я делаю не так. Или может такой функционал вообще не доступен? Заранее спасибо.

 

 

 

0
5 comments

Здравствуйте.

Спасибо за обращение.

Боюсь, вы столкнулись с известной проблемой, которую мы будем изучать в рамках https://youtrack.jetbrains.com/issue/JT-70266/OpenAPI-specification-invalid-definition-of-User-entity. Пожалуйста, проголосуйте за задачу, чтобы подписаться на обновления. 

0

Здравствуйте.
Есть какое то понимание по срокам? Обычно такие задачи как скоро решаются?

 

0

Спасибо за ответ.

По срокам понимания нет. Как только будут какие-то изменения, они будут отражены в упомянутой задаче. 

0

День добрый.
подскажите а может существует какое то решение(костыль) данной проблемы?  

0

Здравствуйте.

Решений, к сожалению нет. Если они появятся, они будут отражены в задаче. 

0

Please sign in to leave a comment.