minikai 0.1.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of minikai might be problematic. Click here for more details.

Files changed (100) hide show
  1. minikai/__init__.py +8 -0
  2. minikai/api/__init__.py +1 -0
  3. minikai/api/groups/__init__.py +1 -0
  4. minikai/api/groups/add_minis_to_group.py +196 -0
  5. minikai/api/groups/add_users_to_group.py +196 -0
  6. minikai/api/groups/create_group.py +178 -0
  7. minikai/api/groups/delete_group.py +115 -0
  8. minikai/api/groups/get_group.py +170 -0
  9. minikai/api/groups/get_group_minis.py +175 -0
  10. minikai/api/groups/get_group_users.py +175 -0
  11. minikai/api/groups/get_groups.py +150 -0
  12. minikai/api/groups/remove_minis_from_group.py +196 -0
  13. minikai/api/groups/remove_users_from_group.py +196 -0
  14. minikai/api/groups/update_group.py +195 -0
  15. minikai/api/minis/__init__.py +1 -0
  16. minikai/api/minis/create_mini.py +178 -0
  17. minikai/api/minis/delete_mini.py +115 -0
  18. minikai/api/minis/get_external_mini.py +183 -0
  19. minikai/api/minis/get_minis.py +150 -0
  20. minikai/api/minis/patch_mini.py +195 -0
  21. minikai/api/minis/update_mini.py +195 -0
  22. minikai/api/records/__init__.py +1 -0
  23. minikai/api/records/add_attachments.py +203 -0
  24. minikai/api/records/add_relations.py +209 -0
  25. minikai/api/records/create_record.py +182 -0
  26. minikai/api/records/delete_record.py +115 -0
  27. minikai/api/records/download_attachment.py +119 -0
  28. minikai/api/records/get_created_by.py +202 -0
  29. minikai/api/records/get_labels.py +194 -0
  30. minikai/api/records/get_records_by_external.py +248 -0
  31. minikai/api/records/get_states.py +194 -0
  32. minikai/api/records/get_updated_by.py +202 -0
  33. minikai/api/records/remove_attachments.py +132 -0
  34. minikai/api/records/remove_relations.py +132 -0
  35. minikai/api/records/update_attachments.py +203 -0
  36. minikai/api/records/update_record.py +199 -0
  37. minikai/api/records/update_relations.py +209 -0
  38. minikai/api/records/upsert_records_by_external_uri.py +182 -0
  39. minikai/api/users/__init__.py +1 -0
  40. minikai/api/users/delete_api_users_minis.py +122 -0
  41. minikai/api/users/get_api_users_minis.py +175 -0
  42. minikai/api/users/get_users.py +150 -0
  43. minikai/api/users/post_api_users_minis.py +187 -0
  44. minikai/client.py +271 -0
  45. minikai/errors.py +14 -0
  46. minikai/models/__init__.py +103 -0
  47. minikai/models/add_attachments_body.py +140 -0
  48. minikai/models/batch_upsert_result.py +124 -0
  49. minikai/models/create_group_command.py +127 -0
  50. minikai/models/create_mini_command.py +144 -0
  51. minikai/models/create_record_command.py +263 -0
  52. minikai/models/create_record_command_tags.py +63 -0
  53. minikai/models/cursor_paginated_list_of_record_dto.py +122 -0
  54. minikai/models/document_file_dto.py +171 -0
  55. minikai/models/document_file_metadata_dto.py +72 -0
  56. minikai/models/failed_upsert_item.py +83 -0
  57. minikai/models/form_field.py +138 -0
  58. minikai/models/form_field_dto.py +181 -0
  59. minikai/models/form_field_type.py +10 -0
  60. minikai/models/group_dto.py +155 -0
  61. minikai/models/http_validation_problem_details.py +198 -0
  62. minikai/models/http_validation_problem_details_errors.py +74 -0
  63. minikai/models/mini_dto.py +224 -0
  64. minikai/models/mini_template_dto.py +167 -0
  65. minikai/models/paginated_list_of_record_dto.py +124 -0
  66. minikai/models/patch_mini_command.py +102 -0
  67. minikai/models/problem_details.py +174 -0
  68. minikai/models/record.py +441 -0
  69. minikai/models/record_attachment.py +265 -0
  70. minikai/models/record_attachment_dto.py +265 -0
  71. minikai/models/record_attachment_dto_metadata_type_0.py +63 -0
  72. minikai/models/record_attachment_metadata_type_0.py +63 -0
  73. minikai/models/record_authorization.py +107 -0
  74. minikai/models/record_authorization_dto.py +107 -0
  75. minikai/models/record_dto.py +385 -0
  76. minikai/models/record_dto_tags.py +63 -0
  77. minikai/models/record_relation.py +105 -0
  78. minikai/models/record_relation_dto.py +105 -0
  79. minikai/models/record_state.py +10 -0
  80. minikai/models/record_tag.py +159 -0
  81. minikai/models/record_tag_dto.py +68 -0
  82. minikai/models/slim_mini_dto.py +197 -0
  83. minikai/models/tool_dto.py +95 -0
  84. minikai/models/update_attachments_body.py +140 -0
  85. minikai/models/update_group_command.py +148 -0
  86. minikai/models/update_mini_command.py +153 -0
  87. minikai/models/update_mini_template_workspaces_command.py +74 -0
  88. minikai/models/update_record_command.py +274 -0
  89. minikai/models/update_record_command_tags.py +63 -0
  90. minikai/models/upsert_record_dto.py +275 -0
  91. minikai/models/upsert_record_dto_tags.py +63 -0
  92. minikai/models/upsert_records_by_external_uri_command.py +79 -0
  93. minikai/models/user_dto.py +215 -0
  94. minikai/models/user_to_mini_dto.py +99 -0
  95. minikai/models/workspace_dto.py +99 -0
  96. minikai/py.typed +1 -0
  97. minikai/types.py +53 -0
  98. minikai-0.1.7.dist-info/METADATA +133 -0
  99. minikai-0.1.7.dist-info/RECORD +100 -0
  100. minikai-0.1.7.dist-info/WHEEL +4 -0
@@ -0,0 +1,209 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Optional, Union, cast
3
+
4
+ import httpx
5
+
6
+ from ...client import AuthenticatedClient, Client
7
+ from ...types import Response, UNSET
8
+ from ... import errors
9
+
10
+ from ...models.http_validation_problem_details import HttpValidationProblemDetails
11
+ from ...models.record_relation import RecordRelation
12
+ from ...models.record_relation_dto import RecordRelationDto
13
+ from typing import cast
14
+
15
+
16
+
17
+ def _get_kwargs(
18
+ record_id: str,
19
+ *,
20
+ body: list['RecordRelationDto'],
21
+
22
+ ) -> dict[str, Any]:
23
+ headers: dict[str, Any] = {}
24
+
25
+
26
+
27
+
28
+
29
+
30
+ _kwargs: dict[str, Any] = {
31
+ "method": "post",
32
+ "url": "/api/Records/{record_id}/relations".format(record_id=record_id,),
33
+ }
34
+
35
+ _kwargs["json"] = []
36
+ for body_item_data in body:
37
+ body_item = body_item_data.to_dict()
38
+ _kwargs["json"].append(body_item)
39
+
40
+
41
+
42
+
43
+ headers["Content-Type"] = "application/json"
44
+
45
+ _kwargs["headers"] = headers
46
+ return _kwargs
47
+
48
+
49
+
50
+ def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Optional[Union[Any, HttpValidationProblemDetails, list['RecordRelation']]]:
51
+ if response.status_code == 201:
52
+ response_201 = []
53
+ _response_201 = response.json()
54
+ for response_201_item_data in (_response_201):
55
+ response_201_item = RecordRelation.from_dict(response_201_item_data)
56
+
57
+
58
+
59
+ response_201.append(response_201_item)
60
+
61
+ return response_201
62
+
63
+ if response.status_code == 400:
64
+ response_400 = HttpValidationProblemDetails.from_dict(response.json())
65
+
66
+
67
+
68
+ return response_400
69
+
70
+ if response.status_code == 404:
71
+ response_404 = cast(Any, None)
72
+ return response_404
73
+
74
+ if client.raise_on_unexpected_status:
75
+ raise errors.UnexpectedStatus(response.status_code, response.content)
76
+ else:
77
+ return None
78
+
79
+
80
+ def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Union[Any, HttpValidationProblemDetails, list['RecordRelation']]]:
81
+ return Response(
82
+ status_code=HTTPStatus(response.status_code),
83
+ content=response.content,
84
+ headers=response.headers,
85
+ parsed=_parse_response(client=client, response=response),
86
+ )
87
+
88
+
89
+ def sync_detailed(
90
+ record_id: str,
91
+ *,
92
+ client: Union[AuthenticatedClient, Client],
93
+ body: list['RecordRelationDto'],
94
+
95
+ ) -> Response[Union[Any, HttpValidationProblemDetails, list['RecordRelation']]]:
96
+ """
97
+ Args:
98
+ record_id (str):
99
+ body (list['RecordRelationDto']):
100
+
101
+ Raises:
102
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
103
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
104
+
105
+ Returns:
106
+ Response[Union[Any, HttpValidationProblemDetails, list['RecordRelation']]]
107
+ """
108
+
109
+
110
+ kwargs = _get_kwargs(
111
+ record_id=record_id,
112
+ body=body,
113
+
114
+ )
115
+
116
+ response = client.get_httpx_client().request(
117
+ **kwargs,
118
+ )
119
+
120
+ return _build_response(client=client, response=response)
121
+
122
+ def sync(
123
+ record_id: str,
124
+ *,
125
+ client: Union[AuthenticatedClient, Client],
126
+ body: list['RecordRelationDto'],
127
+
128
+ ) -> Optional[Union[Any, HttpValidationProblemDetails, list['RecordRelation']]]:
129
+ """
130
+ Args:
131
+ record_id (str):
132
+ body (list['RecordRelationDto']):
133
+
134
+ Raises:
135
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
136
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
137
+
138
+ Returns:
139
+ Union[Any, HttpValidationProblemDetails, list['RecordRelation']]
140
+ """
141
+
142
+
143
+ return sync_detailed(
144
+ record_id=record_id,
145
+ client=client,
146
+ body=body,
147
+
148
+ ).parsed
149
+
150
+ async def asyncio_detailed(
151
+ record_id: str,
152
+ *,
153
+ client: Union[AuthenticatedClient, Client],
154
+ body: list['RecordRelationDto'],
155
+
156
+ ) -> Response[Union[Any, HttpValidationProblemDetails, list['RecordRelation']]]:
157
+ """
158
+ Args:
159
+ record_id (str):
160
+ body (list['RecordRelationDto']):
161
+
162
+ Raises:
163
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
164
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
165
+
166
+ Returns:
167
+ Response[Union[Any, HttpValidationProblemDetails, list['RecordRelation']]]
168
+ """
169
+
170
+
171
+ kwargs = _get_kwargs(
172
+ record_id=record_id,
173
+ body=body,
174
+
175
+ )
176
+
177
+ response = await client.get_async_httpx_client().request(
178
+ **kwargs
179
+ )
180
+
181
+ return _build_response(client=client, response=response)
182
+
183
+ async def asyncio(
184
+ record_id: str,
185
+ *,
186
+ client: Union[AuthenticatedClient, Client],
187
+ body: list['RecordRelationDto'],
188
+
189
+ ) -> Optional[Union[Any, HttpValidationProblemDetails, list['RecordRelation']]]:
190
+ """
191
+ Args:
192
+ record_id (str):
193
+ body (list['RecordRelationDto']):
194
+
195
+ Raises:
196
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
197
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
198
+
199
+ Returns:
200
+ Union[Any, HttpValidationProblemDetails, list['RecordRelation']]
201
+ """
202
+
203
+
204
+ return (await asyncio_detailed(
205
+ record_id=record_id,
206
+ client=client,
207
+ body=body,
208
+
209
+ )).parsed
@@ -0,0 +1,182 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Optional, Union, cast
3
+
4
+ import httpx
5
+
6
+ from ...client import AuthenticatedClient, Client
7
+ from ...types import Response, UNSET
8
+ from ... import errors
9
+
10
+ from ...models.create_record_command import CreateRecordCommand
11
+ from ...models.http_validation_problem_details import HttpValidationProblemDetails
12
+ from ...models.record import Record
13
+ from typing import cast
14
+
15
+
16
+
17
+ def _get_kwargs(
18
+ *,
19
+ body: CreateRecordCommand,
20
+
21
+ ) -> dict[str, Any]:
22
+ headers: dict[str, Any] = {}
23
+
24
+
25
+
26
+
27
+
28
+
29
+ _kwargs: dict[str, Any] = {
30
+ "method": "post",
31
+ "url": "/api/Records",
32
+ }
33
+
34
+ _kwargs["json"] = body.to_dict()
35
+
36
+
37
+ headers["Content-Type"] = "application/json"
38
+
39
+ _kwargs["headers"] = headers
40
+ return _kwargs
41
+
42
+
43
+
44
+ def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Optional[Union[HttpValidationProblemDetails, Record]]:
45
+ if response.status_code == 201:
46
+ response_201 = Record.from_dict(response.json())
47
+
48
+
49
+
50
+ return response_201
51
+
52
+ if response.status_code == 400:
53
+ response_400 = HttpValidationProblemDetails.from_dict(response.json())
54
+
55
+
56
+
57
+ return response_400
58
+
59
+ if client.raise_on_unexpected_status:
60
+ raise errors.UnexpectedStatus(response.status_code, response.content)
61
+ else:
62
+ return None
63
+
64
+
65
+ def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Union[HttpValidationProblemDetails, Record]]:
66
+ return Response(
67
+ status_code=HTTPStatus(response.status_code),
68
+ content=response.content,
69
+ headers=response.headers,
70
+ parsed=_parse_response(client=client, response=response),
71
+ )
72
+
73
+
74
+ def sync_detailed(
75
+ *,
76
+ client: Union[AuthenticatedClient, Client],
77
+ body: CreateRecordCommand,
78
+
79
+ ) -> Response[Union[HttpValidationProblemDetails, Record]]:
80
+ """
81
+ Args:
82
+ body (CreateRecordCommand):
83
+
84
+ Raises:
85
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
86
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
87
+
88
+ Returns:
89
+ Response[Union[HttpValidationProblemDetails, Record]]
90
+ """
91
+
92
+
93
+ kwargs = _get_kwargs(
94
+ body=body,
95
+
96
+ )
97
+
98
+ response = client.get_httpx_client().request(
99
+ **kwargs,
100
+ )
101
+
102
+ return _build_response(client=client, response=response)
103
+
104
+ def sync(
105
+ *,
106
+ client: Union[AuthenticatedClient, Client],
107
+ body: CreateRecordCommand,
108
+
109
+ ) -> Optional[Union[HttpValidationProblemDetails, Record]]:
110
+ """
111
+ Args:
112
+ body (CreateRecordCommand):
113
+
114
+ Raises:
115
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
116
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
117
+
118
+ Returns:
119
+ Union[HttpValidationProblemDetails, Record]
120
+ """
121
+
122
+
123
+ return sync_detailed(
124
+ client=client,
125
+ body=body,
126
+
127
+ ).parsed
128
+
129
+ async def asyncio_detailed(
130
+ *,
131
+ client: Union[AuthenticatedClient, Client],
132
+ body: CreateRecordCommand,
133
+
134
+ ) -> Response[Union[HttpValidationProblemDetails, Record]]:
135
+ """
136
+ Args:
137
+ body (CreateRecordCommand):
138
+
139
+ Raises:
140
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
141
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
142
+
143
+ Returns:
144
+ Response[Union[HttpValidationProblemDetails, Record]]
145
+ """
146
+
147
+
148
+ kwargs = _get_kwargs(
149
+ body=body,
150
+
151
+ )
152
+
153
+ response = await client.get_async_httpx_client().request(
154
+ **kwargs
155
+ )
156
+
157
+ return _build_response(client=client, response=response)
158
+
159
+ async def asyncio(
160
+ *,
161
+ client: Union[AuthenticatedClient, Client],
162
+ body: CreateRecordCommand,
163
+
164
+ ) -> Optional[Union[HttpValidationProblemDetails, Record]]:
165
+ """
166
+ Args:
167
+ body (CreateRecordCommand):
168
+
169
+ Raises:
170
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
171
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
172
+
173
+ Returns:
174
+ Union[HttpValidationProblemDetails, Record]
175
+ """
176
+
177
+
178
+ return (await asyncio_detailed(
179
+ client=client,
180
+ body=body,
181
+
182
+ )).parsed
@@ -0,0 +1,115 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Optional, Union, cast
3
+
4
+ import httpx
5
+
6
+ from ...client import AuthenticatedClient, Client
7
+ from ...types import Response, UNSET
8
+ from ... import errors
9
+
10
+
11
+
12
+
13
+ def _get_kwargs(
14
+ record_id: str,
15
+
16
+ ) -> dict[str, Any]:
17
+
18
+
19
+
20
+
21
+
22
+
23
+ _kwargs: dict[str, Any] = {
24
+ "method": "delete",
25
+ "url": "/api/Records/{record_id}".format(record_id=record_id,),
26
+ }
27
+
28
+
29
+ return _kwargs
30
+
31
+
32
+
33
+ def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Optional[Any]:
34
+ if response.status_code == 204:
35
+ return None
36
+
37
+ if response.status_code == 404:
38
+ return None
39
+
40
+ if client.raise_on_unexpected_status:
41
+ raise errors.UnexpectedStatus(response.status_code, response.content)
42
+ else:
43
+ return None
44
+
45
+
46
+ def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Any]:
47
+ return Response(
48
+ status_code=HTTPStatus(response.status_code),
49
+ content=response.content,
50
+ headers=response.headers,
51
+ parsed=_parse_response(client=client, response=response),
52
+ )
53
+
54
+
55
+ def sync_detailed(
56
+ record_id: str,
57
+ *,
58
+ client: Union[AuthenticatedClient, Client],
59
+
60
+ ) -> Response[Any]:
61
+ """
62
+ Args:
63
+ record_id (str):
64
+
65
+ Raises:
66
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
67
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
68
+
69
+ Returns:
70
+ Response[Any]
71
+ """
72
+
73
+
74
+ kwargs = _get_kwargs(
75
+ record_id=record_id,
76
+
77
+ )
78
+
79
+ response = client.get_httpx_client().request(
80
+ **kwargs,
81
+ )
82
+
83
+ return _build_response(client=client, response=response)
84
+
85
+
86
+ async def asyncio_detailed(
87
+ record_id: str,
88
+ *,
89
+ client: Union[AuthenticatedClient, Client],
90
+
91
+ ) -> Response[Any]:
92
+ """
93
+ Args:
94
+ record_id (str):
95
+
96
+ Raises:
97
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
98
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
99
+
100
+ Returns:
101
+ Response[Any]
102
+ """
103
+
104
+
105
+ kwargs = _get_kwargs(
106
+ record_id=record_id,
107
+
108
+ )
109
+
110
+ response = await client.get_async_httpx_client().request(
111
+ **kwargs
112
+ )
113
+
114
+ return _build_response(client=client, response=response)
115
+
@@ -0,0 +1,119 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Optional, Union, cast
3
+
4
+ import httpx
5
+
6
+ from ...client import AuthenticatedClient, Client
7
+ from ...types import Response, UNSET
8
+ from ... import errors
9
+
10
+
11
+
12
+
13
+ def _get_kwargs(
14
+ record_id: str,
15
+ attachment_id: str,
16
+
17
+ ) -> dict[str, Any]:
18
+
19
+
20
+
21
+
22
+
23
+
24
+ _kwargs: dict[str, Any] = {
25
+ "method": "get",
26
+ "url": "/api/Records/{record_id}/attachments/{attachment_id}".format(record_id=record_id,attachment_id=attachment_id,),
27
+ }
28
+
29
+
30
+ return _kwargs
31
+
32
+
33
+
34
+ def _parse_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Optional[Any]:
35
+ if response.status_code == 404:
36
+ return None
37
+
38
+ if client.raise_on_unexpected_status:
39
+ raise errors.UnexpectedStatus(response.status_code, response.content)
40
+ else:
41
+ return None
42
+
43
+
44
+ def _build_response(*, client: Union[AuthenticatedClient, Client], response: httpx.Response) -> Response[Any]:
45
+ return Response(
46
+ status_code=HTTPStatus(response.status_code),
47
+ content=response.content,
48
+ headers=response.headers,
49
+ parsed=_parse_response(client=client, response=response),
50
+ )
51
+
52
+
53
+ def sync_detailed(
54
+ record_id: str,
55
+ attachment_id: str,
56
+ *,
57
+ client: Union[AuthenticatedClient, Client],
58
+
59
+ ) -> Response[Any]:
60
+ """
61
+ Args:
62
+ record_id (str):
63
+ attachment_id (str):
64
+
65
+ Raises:
66
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
67
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
68
+
69
+ Returns:
70
+ Response[Any]
71
+ """
72
+
73
+
74
+ kwargs = _get_kwargs(
75
+ record_id=record_id,
76
+ attachment_id=attachment_id,
77
+
78
+ )
79
+
80
+ response = client.get_httpx_client().request(
81
+ **kwargs,
82
+ )
83
+
84
+ return _build_response(client=client, response=response)
85
+
86
+
87
+ async def asyncio_detailed(
88
+ record_id: str,
89
+ attachment_id: str,
90
+ *,
91
+ client: Union[AuthenticatedClient, Client],
92
+
93
+ ) -> Response[Any]:
94
+ """
95
+ Args:
96
+ record_id (str):
97
+ attachment_id (str):
98
+
99
+ Raises:
100
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
101
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
102
+
103
+ Returns:
104
+ Response[Any]
105
+ """
106
+
107
+
108
+ kwargs = _get_kwargs(
109
+ record_id=record_id,
110
+ attachment_id=attachment_id,
111
+
112
+ )
113
+
114
+ response = await client.get_async_httpx_client().request(
115
+ **kwargs
116
+ )
117
+
118
+ return _build_response(client=client, response=response)
119
+