@planqk/planqk-api-sdk 1.2.0 → 1.3.1

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.
Files changed (246) hide show
  1. package/.env.template +2 -1
  2. package/.gitlab-ci.yml +1 -0
  3. package/README-node.md +13 -0
  4. package/README-python.md +13 -0
  5. package/README.md +6 -49
  6. package/apps/README.md +24 -0
  7. package/apps/python-test-app/main.py +159 -0
  8. package/apps/test-file.txt +1 -0
  9. package/apps/ts-test-app/index.ts +140 -0
  10. package/apps/ts-test-app/package-lock.json +695 -0
  11. package/apps/ts-test-app/package.json +15 -0
  12. package/apps/ts-test-app/tsconfig.json +11 -0
  13. package/dist/index.d.ts +1 -4
  14. package/dist/index.js +4 -31
  15. package/dist/{Client.d.ts → sdk/Client.d.ts} +2 -5
  16. package/dist/{Client.js → sdk/Client.js} +1 -6
  17. package/dist/{api → sdk/api}/resources/dataPools/client/Client.d.ts +3 -3
  18. package/dist/{api → sdk/api}/resources/dataPools/client/Client.js +1 -1
  19. package/dist/sdk/api/resources/index.d.ts +2 -0
  20. package/dist/{api → sdk/api}/resources/index.js +1 -3
  21. package/dist/sdk/api/types/index.d.ts +3 -0
  22. package/dist/{api/resources/authentication → sdk/api}/types/index.js +3 -1
  23. package/dist/sdk/index.d.ts +4 -0
  24. package/dist/sdk/index.js +44 -0
  25. package/fern/fern.config.json +1 -1
  26. package/fern/openapi/openapi.json +2 -202
  27. package/notebooks/python-sdk.ipynb +2 -1
  28. package/package.json +3 -4
  29. package/planqk/api/_version.py +1 -1
  30. package/planqk/api/client.py +5 -2
  31. package/planqk/api/sdk/__init__.py +2 -34
  32. package/planqk/api/sdk/client.py +0 -3
  33. package/planqk/api/sdk/types/__init__.py +1 -30
  34. package/pyproject.toml +3 -6
  35. package/src/index.test.ts +6 -5
  36. package/src/index.ts +1 -4
  37. package/src/{Client.ts → sdk/Client.ts} +2 -8
  38. package/src/{api → sdk/api}/resources/dataPools/client/Client.ts +2 -2
  39. package/src/sdk/api/resources/index.ts +2 -0
  40. package/src/sdk/api/types/index.ts +3 -0
  41. package/src/sdk/index.ts +4 -0
  42. package/uv.lock +658 -324
  43. package/dist/api/resources/authentication/client/Client.d.ts +0 -55
  44. package/dist/api/resources/authentication/client/Client.js +0 -126
  45. package/dist/api/resources/authentication/client/index.d.ts +0 -1
  46. package/dist/api/resources/authentication/index.d.ts +0 -2
  47. package/dist/api/resources/authentication/index.js +0 -18
  48. package/dist/api/resources/authentication/types/AuthorizeResponse.d.ts +0 -5
  49. package/dist/api/resources/authentication/types/AuthorizeResponse.js +0 -5
  50. package/dist/api/resources/authentication/types/index.d.ts +0 -1
  51. package/dist/api/resources/dataPools/client/requests/index.js +0 -2
  52. package/dist/api/resources/index.d.ts +0 -4
  53. package/dist/api/types/AccessToken.d.ts +0 -10
  54. package/dist/api/types/AccessToken.js +0 -5
  55. package/dist/api/types/OrganizationMembership.d.ts +0 -22
  56. package/dist/api/types/OrganizationMembership.js +0 -19
  57. package/dist/api/types/PersonalAccessTokenPrincipal.d.ts +0 -18
  58. package/dist/api/types/PersonalAccessTokenPrincipal.js +0 -14
  59. package/dist/api/types/ServiceExecution.d.ts +0 -20
  60. package/dist/api/types/ServiceExecution.js +0 -16
  61. package/dist/api/types/ServiceExecutionTokenPrincipal.d.ts +0 -8
  62. package/dist/api/types/ServiceExecutionTokenPrincipal.js +0 -5
  63. package/dist/api/types/UserContext.d.ts +0 -24
  64. package/dist/api/types/UserContext.js +0 -19
  65. package/dist/api/types/index.d.ts +0 -9
  66. package/dist/api/types/index.js +0 -25
  67. package/planqk/api/sdk/authentication/__init__.py +0 -7
  68. package/planqk/api/sdk/authentication/client.py +0 -102
  69. package/planqk/api/sdk/authentication/raw_client.py +0 -183
  70. package/planqk/api/sdk/authentication/types/__init__.py +0 -7
  71. package/planqk/api/sdk/authentication/types/authorize_response.py +0 -8
  72. package/planqk/api/sdk/types/access_token.py +0 -26
  73. package/planqk/api/sdk/types/organization_membership.py +0 -27
  74. package/planqk/api/sdk/types/organization_membership_account_type.py +0 -5
  75. package/planqk/api/sdk/types/organization_membership_role.py +0 -5
  76. package/planqk/api/sdk/types/personal_access_token_principal.py +0 -31
  77. package/planqk/api/sdk/types/personal_access_token_principal_account_type.py +0 -5
  78. package/planqk/api/sdk/types/service_execution.py +0 -27
  79. package/planqk/api/sdk/types/service_execution_status.py +0 -7
  80. package/planqk/api/sdk/types/service_execution_token_principal.py +0 -34
  81. package/planqk/api/sdk/types/user_context.py +0 -35
  82. package/planqk/api/sdk/types/user_context_account_type.py +0 -5
  83. package/planqk/api/sdk/types/user_context_context_type.py +0 -5
  84. package/src/api/resources/authentication/client/Client.ts +0 -134
  85. package/src/api/resources/authentication/client/index.ts +0 -1
  86. package/src/api/resources/authentication/index.ts +0 -2
  87. package/src/api/resources/authentication/types/AuthorizeResponse.ts +0 -7
  88. package/src/api/resources/authentication/types/index.ts +0 -1
  89. package/src/api/resources/index.ts +0 -4
  90. package/src/api/types/AccessToken.ts +0 -11
  91. package/src/api/types/OrganizationMembership.ts +0 -24
  92. package/src/api/types/PersonalAccessTokenPrincipal.ts +0 -21
  93. package/src/api/types/ServiceExecution.ts +0 -22
  94. package/src/api/types/ServiceExecutionTokenPrincipal.ts +0 -10
  95. package/src/api/types/UserContext.ts +0 -27
  96. package/src/api/types/index.ts +0 -9
  97. package/dist/{api → sdk/api}/errors/BadRequestError.d.ts +0 -0
  98. package/dist/{api → sdk/api}/errors/BadRequestError.js +0 -0
  99. package/dist/{api → sdk/api}/errors/ForbiddenError.d.ts +0 -0
  100. package/dist/{api → sdk/api}/errors/ForbiddenError.js +0 -0
  101. package/dist/{api → sdk/api}/errors/InternalServerError.d.ts +0 -0
  102. package/dist/{api → sdk/api}/errors/InternalServerError.js +0 -0
  103. package/dist/{api → sdk/api}/errors/NotFoundError.d.ts +0 -0
  104. package/dist/{api → sdk/api}/errors/NotFoundError.js +0 -0
  105. package/dist/{api → sdk/api}/errors/UnauthorizedError.d.ts +0 -0
  106. package/dist/{api → sdk/api}/errors/UnauthorizedError.js +0 -0
  107. package/dist/{api → sdk/api}/errors/index.d.ts +0 -0
  108. package/dist/{api → sdk/api}/errors/index.js +0 -0
  109. package/dist/{api → sdk/api}/index.d.ts +1 -1
  110. package/dist/{api → sdk/api}/index.js +1 -1
  111. package/dist/{api → sdk/api}/resources/dataPools/client/index.d.ts +0 -0
  112. package/dist/{api → sdk/api}/resources/dataPools/client/index.js +0 -0
  113. package/dist/{api → sdk/api}/resources/dataPools/client/requests/AddDataPoolFileRequest.d.ts +0 -0
  114. package/dist/{api → sdk/api}/resources/dataPools/client/requests/AddDataPoolFileRequest.js +0 -0
  115. package/dist/{api → sdk/api}/resources/dataPools/client/requests/CreateDataPoolRequest.d.ts +0 -0
  116. package/dist/{api → sdk/api}/resources/dataPools/client/requests/CreateDataPoolRequest.js +0 -0
  117. package/dist/{api → sdk/api}/resources/dataPools/client/requests/UpdateDataPoolRequest.d.ts +0 -0
  118. package/dist/{api → sdk/api}/resources/dataPools/client/requests/UpdateDataPoolRequest.js +0 -0
  119. package/dist/{api → sdk/api}/resources/dataPools/client/requests/index.d.ts +0 -0
  120. package/dist/{api/resources/authentication/client → sdk/api/resources/dataPools/client/requests}/index.js +0 -0
  121. package/dist/{api → sdk/api}/resources/dataPools/index.d.ts +0 -0
  122. package/dist/{api → sdk/api}/resources/dataPools/index.js +0 -0
  123. package/dist/{api → sdk/api}/types/DataPoolDto.d.ts +0 -0
  124. package/dist/{api → sdk/api}/types/DataPoolDto.js +0 -0
  125. package/dist/{api → sdk/api}/types/DataPoolFileDto.d.ts +0 -0
  126. package/dist/{api → sdk/api}/types/DataPoolFileDto.js +0 -0
  127. package/dist/{api → sdk/api}/types/OauthScope.d.ts +0 -0
  128. package/dist/{api → sdk/api}/types/OauthScope.js +0 -0
  129. package/dist/{core → sdk/core}/fetcher/APIResponse.d.ts +0 -0
  130. package/dist/{core → sdk/core}/fetcher/APIResponse.js +0 -0
  131. package/dist/{core → sdk/core}/fetcher/BinaryResponse.d.ts +0 -0
  132. package/dist/{core → sdk/core}/fetcher/BinaryResponse.js +0 -0
  133. package/dist/{core → sdk/core}/fetcher/Fetcher.d.ts +0 -0
  134. package/dist/{core → sdk/core}/fetcher/Fetcher.js +0 -0
  135. package/dist/{core → sdk/core}/fetcher/Headers.d.ts +0 -0
  136. package/dist/{core → sdk/core}/fetcher/Headers.js +0 -0
  137. package/dist/{core → sdk/core}/fetcher/HttpResponsePromise.d.ts +0 -0
  138. package/dist/{core → sdk/core}/fetcher/HttpResponsePromise.js +0 -0
  139. package/dist/{core → sdk/core}/fetcher/RawResponse.d.ts +0 -0
  140. package/dist/{core → sdk/core}/fetcher/RawResponse.js +0 -0
  141. package/dist/{core → sdk/core}/fetcher/ResponseWithBody.d.ts +0 -0
  142. package/dist/{core → sdk/core}/fetcher/ResponseWithBody.js +0 -0
  143. package/dist/{core → sdk/core}/fetcher/Supplier.d.ts +0 -0
  144. package/dist/{core → sdk/core}/fetcher/Supplier.js +0 -0
  145. package/dist/{core → sdk/core}/fetcher/createRequestUrl.d.ts +0 -0
  146. package/dist/{core → sdk/core}/fetcher/createRequestUrl.js +0 -0
  147. package/dist/{core → sdk/core}/fetcher/getErrorResponseBody.d.ts +0 -0
  148. package/dist/{core → sdk/core}/fetcher/getErrorResponseBody.js +0 -0
  149. package/dist/{core → sdk/core}/fetcher/getFetchFn.d.ts +0 -0
  150. package/dist/{core → sdk/core}/fetcher/getFetchFn.js +0 -0
  151. package/dist/{core → sdk/core}/fetcher/getHeader.d.ts +0 -0
  152. package/dist/{core → sdk/core}/fetcher/getHeader.js +0 -0
  153. package/dist/{core → sdk/core}/fetcher/getRequestBody.d.ts +0 -0
  154. package/dist/{core → sdk/core}/fetcher/getRequestBody.js +0 -0
  155. package/dist/{core → sdk/core}/fetcher/getResponseBody.d.ts +0 -0
  156. package/dist/{core → sdk/core}/fetcher/getResponseBody.js +0 -0
  157. package/dist/{core → sdk/core}/fetcher/index.d.ts +0 -0
  158. package/dist/{core → sdk/core}/fetcher/index.js +0 -0
  159. package/dist/{core → sdk/core}/fetcher/makeRequest.d.ts +0 -0
  160. package/dist/{core → sdk/core}/fetcher/makeRequest.js +0 -0
  161. package/dist/{core → sdk/core}/fetcher/requestWithRetries.d.ts +0 -0
  162. package/dist/{core → sdk/core}/fetcher/requestWithRetries.js +0 -0
  163. package/dist/{core → sdk/core}/fetcher/signals.d.ts +0 -0
  164. package/dist/{core → sdk/core}/fetcher/signals.js +0 -0
  165. package/dist/{core → sdk/core}/file.d.ts +0 -0
  166. package/dist/{core → sdk/core}/file.js +0 -0
  167. package/dist/{core → sdk/core}/form-data-utils/FormDataWrapper.d.ts +0 -0
  168. package/dist/{core → sdk/core}/form-data-utils/FormDataWrapper.js +0 -0
  169. package/dist/{core → sdk/core}/form-data-utils/encodeAsFormParameter.d.ts +0 -0
  170. package/dist/{core → sdk/core}/form-data-utils/encodeAsFormParameter.js +0 -0
  171. package/dist/{core → sdk/core}/form-data-utils/index.d.ts +0 -0
  172. package/dist/{core → sdk/core}/form-data-utils/index.js +0 -0
  173. package/dist/{core → sdk/core}/headers.d.ts +0 -0
  174. package/dist/{core → sdk/core}/headers.js +0 -0
  175. package/dist/{core → sdk/core}/index.d.ts +0 -0
  176. package/dist/{core → sdk/core}/index.js +0 -0
  177. package/dist/{core → sdk/core}/json.d.ts +0 -0
  178. package/dist/{core → sdk/core}/json.js +0 -0
  179. package/dist/{core → sdk/core}/runtime/index.d.ts +0 -0
  180. package/dist/{core → sdk/core}/runtime/index.js +0 -0
  181. package/dist/{core → sdk/core}/runtime/runtime.d.ts +0 -0
  182. package/dist/{core → sdk/core}/runtime/runtime.js +0 -0
  183. package/dist/{core → sdk/core}/url/index.d.ts +0 -0
  184. package/dist/{core → sdk/core}/url/index.js +0 -0
  185. package/dist/{core → sdk/core}/url/join.d.ts +0 -0
  186. package/dist/{core → sdk/core}/url/join.js +0 -0
  187. package/dist/{core → sdk/core}/url/qs.d.ts +0 -0
  188. package/dist/{core → sdk/core}/url/qs.js +0 -0
  189. package/dist/{environments.d.ts → sdk/environments.d.ts} +0 -0
  190. package/dist/{environments.js → sdk/environments.js} +0 -0
  191. package/dist/{errors → sdk/errors}/PlanqkApiError.d.ts +0 -0
  192. package/dist/{errors → sdk/errors}/PlanqkApiError.js +0 -0
  193. package/dist/{errors → sdk/errors}/PlanqkApiTimeoutError.d.ts +0 -0
  194. package/dist/{errors → sdk/errors}/PlanqkApiTimeoutError.js +0 -0
  195. package/dist/{errors → sdk/errors}/index.d.ts +0 -0
  196. package/dist/{errors → sdk/errors}/index.js +0 -0
  197. package/src/{api → sdk/api}/errors/BadRequestError.ts +0 -0
  198. package/src/{api → sdk/api}/errors/ForbiddenError.ts +0 -0
  199. package/src/{api → sdk/api}/errors/InternalServerError.ts +0 -0
  200. package/src/{api → sdk/api}/errors/NotFoundError.ts +0 -0
  201. package/src/{api → sdk/api}/errors/UnauthorizedError.ts +0 -0
  202. package/src/{api → sdk/api}/errors/index.ts +0 -0
  203. package/src/{api → sdk/api}/index.ts +1 -1
  204. /package/src/{api → sdk/api}/resources/dataPools/client/index.ts +0 -0
  205. /package/src/{api → sdk/api}/resources/dataPools/client/requests/AddDataPoolFileRequest.ts +0 -0
  206. /package/src/{api → sdk/api}/resources/dataPools/client/requests/CreateDataPoolRequest.ts +0 -0
  207. /package/src/{api → sdk/api}/resources/dataPools/client/requests/UpdateDataPoolRequest.ts +0 -0
  208. /package/src/{api → sdk/api}/resources/dataPools/client/requests/index.ts +0 -0
  209. /package/src/{api → sdk/api}/resources/dataPools/index.ts +0 -0
  210. /package/src/{api → sdk/api}/types/DataPoolDto.ts +0 -0
  211. /package/src/{api → sdk/api}/types/DataPoolFileDto.ts +0 -0
  212. /package/src/{api → sdk/api}/types/OauthScope.ts +0 -0
  213. /package/src/{core → sdk/core}/fetcher/APIResponse.ts +0 -0
  214. /package/src/{core → sdk/core}/fetcher/BinaryResponse.ts +0 -0
  215. /package/src/{core → sdk/core}/fetcher/Fetcher.ts +0 -0
  216. /package/src/{core → sdk/core}/fetcher/Headers.ts +0 -0
  217. /package/src/{core → sdk/core}/fetcher/HttpResponsePromise.ts +0 -0
  218. /package/src/{core → sdk/core}/fetcher/RawResponse.ts +0 -0
  219. /package/src/{core → sdk/core}/fetcher/ResponseWithBody.ts +0 -0
  220. /package/src/{core → sdk/core}/fetcher/Supplier.ts +0 -0
  221. /package/src/{core → sdk/core}/fetcher/createRequestUrl.ts +0 -0
  222. /package/src/{core → sdk/core}/fetcher/getErrorResponseBody.ts +0 -0
  223. /package/src/{core → sdk/core}/fetcher/getFetchFn.ts +0 -0
  224. /package/src/{core → sdk/core}/fetcher/getHeader.ts +0 -0
  225. /package/src/{core → sdk/core}/fetcher/getRequestBody.ts +0 -0
  226. /package/src/{core → sdk/core}/fetcher/getResponseBody.ts +0 -0
  227. /package/src/{core → sdk/core}/fetcher/index.ts +0 -0
  228. /package/src/{core → sdk/core}/fetcher/makeRequest.ts +0 -0
  229. /package/src/{core → sdk/core}/fetcher/requestWithRetries.ts +0 -0
  230. /package/src/{core → sdk/core}/fetcher/signals.ts +0 -0
  231. /package/src/{core → sdk/core}/file.ts +0 -0
  232. /package/src/{core → sdk/core}/form-data-utils/FormDataWrapper.ts +0 -0
  233. /package/src/{core → sdk/core}/form-data-utils/encodeAsFormParameter.ts +0 -0
  234. /package/src/{core → sdk/core}/form-data-utils/index.ts +0 -0
  235. /package/src/{core → sdk/core}/headers.ts +0 -0
  236. /package/src/{core → sdk/core}/index.ts +0 -0
  237. /package/src/{core → sdk/core}/json.ts +0 -0
  238. /package/src/{core → sdk/core}/runtime/index.ts +0 -0
  239. /package/src/{core → sdk/core}/runtime/runtime.ts +0 -0
  240. /package/src/{core → sdk/core}/url/index.ts +0 -0
  241. /package/src/{core → sdk/core}/url/join.ts +0 -0
  242. /package/src/{core → sdk/core}/url/qs.ts +0 -0
  243. /package/src/{environments.ts → sdk/environments.ts} +0 -0
  244. /package/src/{errors → sdk/errors}/PlanqkApiError.ts +0 -0
  245. /package/src/{errors → sdk/errors}/PlanqkApiTimeoutError.ts +0 -0
  246. /package/src/{errors → sdk/errors}/index.ts +0 -0
@@ -1,183 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
- from json.decoder import JSONDecodeError
5
-
6
- from ..core.api_error import ApiError
7
- from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
8
- from ..core.http_response import AsyncHttpResponse, HttpResponse
9
- from ..core.pydantic_utilities import parse_obj_as
10
- from ..core.request_options import RequestOptions
11
- from ..errors.forbidden_error import ForbiddenError
12
- from ..errors.internal_server_error import InternalServerError
13
- from ..errors.not_found_error import NotFoundError
14
- from ..errors.unauthorized_error import UnauthorizedError
15
- from .types.authorize_response import AuthorizeResponse
16
-
17
-
18
- class RawAuthenticationClient:
19
- def __init__(self, *, client_wrapper: SyncClientWrapper):
20
- self._client_wrapper = client_wrapper
21
-
22
- def authorize(self, *, request_options: typing.Optional[RequestOptions] = None) -> HttpResponse[AuthorizeResponse]:
23
- """
24
- Get the authenticated principal based on the provided token.
25
-
26
- Parameters
27
- ----------
28
- request_options : typing.Optional[RequestOptions]
29
- Request-specific configuration.
30
-
31
- Returns
32
- -------
33
- HttpResponse[AuthorizeResponse]
34
- The scopes of the provided token.
35
- """
36
- _response = self._client_wrapper.httpx_client.request(
37
- "authorize",
38
- method="POST",
39
- request_options=request_options,
40
- )
41
- try:
42
- if 200 <= _response.status_code < 300:
43
- _data = typing.cast(
44
- AuthorizeResponse,
45
- parse_obj_as(
46
- type_=AuthorizeResponse, # type: ignore
47
- object_=_response.json(),
48
- ),
49
- )
50
- return HttpResponse(response=_response, data=_data)
51
- if _response.status_code == 401:
52
- raise UnauthorizedError(
53
- headers=dict(_response.headers),
54
- body=typing.cast(
55
- typing.Optional[typing.Any],
56
- parse_obj_as(
57
- type_=typing.Optional[typing.Any], # type: ignore
58
- object_=_response.json(),
59
- ),
60
- ),
61
- )
62
- if _response.status_code == 403:
63
- raise ForbiddenError(
64
- headers=dict(_response.headers),
65
- body=typing.cast(
66
- typing.Optional[typing.Any],
67
- parse_obj_as(
68
- type_=typing.Optional[typing.Any], # type: ignore
69
- object_=_response.json(),
70
- ),
71
- ),
72
- )
73
- if _response.status_code == 404:
74
- raise NotFoundError(
75
- headers=dict(_response.headers),
76
- body=typing.cast(
77
- typing.Optional[typing.Any],
78
- parse_obj_as(
79
- type_=typing.Optional[typing.Any], # type: ignore
80
- object_=_response.json(),
81
- ),
82
- ),
83
- )
84
- if _response.status_code == 500:
85
- raise InternalServerError(
86
- headers=dict(_response.headers),
87
- body=typing.cast(
88
- typing.Optional[typing.Any],
89
- parse_obj_as(
90
- type_=typing.Optional[typing.Any], # type: ignore
91
- object_=_response.json(),
92
- ),
93
- ),
94
- )
95
- _response_json = _response.json()
96
- except JSONDecodeError:
97
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
98
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
99
-
100
-
101
- class AsyncRawAuthenticationClient:
102
- def __init__(self, *, client_wrapper: AsyncClientWrapper):
103
- self._client_wrapper = client_wrapper
104
-
105
- async def authorize(
106
- self, *, request_options: typing.Optional[RequestOptions] = None
107
- ) -> AsyncHttpResponse[AuthorizeResponse]:
108
- """
109
- Get the authenticated principal based on the provided token.
110
-
111
- Parameters
112
- ----------
113
- request_options : typing.Optional[RequestOptions]
114
- Request-specific configuration.
115
-
116
- Returns
117
- -------
118
- AsyncHttpResponse[AuthorizeResponse]
119
- The scopes of the provided token.
120
- """
121
- _response = await self._client_wrapper.httpx_client.request(
122
- "authorize",
123
- method="POST",
124
- request_options=request_options,
125
- )
126
- try:
127
- if 200 <= _response.status_code < 300:
128
- _data = typing.cast(
129
- AuthorizeResponse,
130
- parse_obj_as(
131
- type_=AuthorizeResponse, # type: ignore
132
- object_=_response.json(),
133
- ),
134
- )
135
- return AsyncHttpResponse(response=_response, data=_data)
136
- if _response.status_code == 401:
137
- raise UnauthorizedError(
138
- headers=dict(_response.headers),
139
- body=typing.cast(
140
- typing.Optional[typing.Any],
141
- parse_obj_as(
142
- type_=typing.Optional[typing.Any], # type: ignore
143
- object_=_response.json(),
144
- ),
145
- ),
146
- )
147
- if _response.status_code == 403:
148
- raise ForbiddenError(
149
- headers=dict(_response.headers),
150
- body=typing.cast(
151
- typing.Optional[typing.Any],
152
- parse_obj_as(
153
- type_=typing.Optional[typing.Any], # type: ignore
154
- object_=_response.json(),
155
- ),
156
- ),
157
- )
158
- if _response.status_code == 404:
159
- raise NotFoundError(
160
- headers=dict(_response.headers),
161
- body=typing.cast(
162
- typing.Optional[typing.Any],
163
- parse_obj_as(
164
- type_=typing.Optional[typing.Any], # type: ignore
165
- object_=_response.json(),
166
- ),
167
- ),
168
- )
169
- if _response.status_code == 500:
170
- raise InternalServerError(
171
- headers=dict(_response.headers),
172
- body=typing.cast(
173
- typing.Optional[typing.Any],
174
- parse_obj_as(
175
- type_=typing.Optional[typing.Any], # type: ignore
176
- object_=_response.json(),
177
- ),
178
- ),
179
- )
180
- _response_json = _response.json()
181
- except JSONDecodeError:
182
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
183
- raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
@@ -1,7 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- # isort: skip_file
4
-
5
- from .authorize_response import AuthorizeResponse
6
-
7
- __all__ = ["AuthorizeResponse"]
@@ -1,8 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
-
5
- from ...types.personal_access_token_principal import PersonalAccessTokenPrincipal
6
- from ...types.service_execution_token_principal import ServiceExecutionTokenPrincipal
7
-
8
- AuthorizeResponse = typing.Union[PersonalAccessTokenPrincipal, ServiceExecutionTokenPrincipal]
@@ -1,26 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import datetime as dt
4
- import typing
5
-
6
- import pydantic
7
- import typing_extensions
8
- from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
9
- from ..core.serialization import FieldMetadata
10
-
11
-
12
- class AccessToken(UniversalBaseModel):
13
- id: typing.Optional[str] = None
14
- name: typing.Optional[str] = None
15
- created_at: typing_extensions.Annotated[typing.Optional[dt.datetime], FieldMetadata(alias="createdAt")] = None
16
- used_at: typing_extensions.Annotated[typing.Optional[dt.datetime], FieldMetadata(alias="usedAt")] = None
17
- expires_at: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="expiresAt")] = None
18
-
19
- if IS_PYDANTIC_V2:
20
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
21
- else:
22
-
23
- class Config:
24
- frozen = True
25
- smart_union = True
26
- extra = pydantic.Extra.allow
@@ -1,27 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
-
5
- import pydantic
6
- import typing_extensions
7
- from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
- from ..core.serialization import FieldMetadata
9
- from .organization_membership_account_type import OrganizationMembershipAccountType
10
- from .organization_membership_role import OrganizationMembershipRole
11
-
12
-
13
- class OrganizationMembership(UniversalBaseModel):
14
- id: typing.Optional[str] = None
15
- account_type: typing_extensions.Annotated[
16
- typing.Optional[OrganizationMembershipAccountType], FieldMetadata(alias="accountType")
17
- ] = None
18
- role: typing.Optional[OrganizationMembershipRole] = None
19
-
20
- if IS_PYDANTIC_V2:
21
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
22
- else:
23
-
24
- class Config:
25
- frozen = True
26
- smart_union = True
27
- extra = pydantic.Extra.allow
@@ -1,5 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
-
5
- OrganizationMembershipAccountType = typing.Union[typing.Literal["BASIC", "PRO", "BUSINESS"], typing.Any]
@@ -1,5 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
-
5
- OrganizationMembershipRole = typing.Union[typing.Literal["VIEWER", "MAINTAINER", "OWNER"], typing.Any]
@@ -1,31 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
-
5
- import pydantic
6
- import typing_extensions
7
- from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
- from ..core.serialization import FieldMetadata
9
- from .access_token import AccessToken
10
- from .organization_membership import OrganizationMembership
11
- from .personal_access_token_principal_account_type import PersonalAccessTokenPrincipalAccountType
12
-
13
-
14
- class PersonalAccessTokenPrincipal(UniversalBaseModel):
15
- id: typing.Optional[str] = None
16
- access_token: typing_extensions.Annotated[typing.Optional[AccessToken], FieldMetadata(alias="accessToken")] = None
17
- account_type: typing_extensions.Annotated[
18
- typing.Optional[PersonalAccessTokenPrincipalAccountType], FieldMetadata(alias="accountType")
19
- ] = None
20
- organization_memberships: typing_extensions.Annotated[
21
- typing.Optional[typing.List[OrganizationMembership]], FieldMetadata(alias="organizationMemberships")
22
- ] = None
23
-
24
- if IS_PYDANTIC_V2:
25
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
26
- else:
27
-
28
- class Config:
29
- frozen = True
30
- smart_union = True
31
- extra = pydantic.Extra.allow
@@ -1,5 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
-
5
- PersonalAccessTokenPrincipalAccountType = typing.Union[typing.Literal["BASIC", "PRO", "BUSINESS"], typing.Any]
@@ -1,27 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import datetime as dt
4
- import typing
5
-
6
- import pydantic
7
- import typing_extensions
8
- from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
9
- from ..core.serialization import FieldMetadata
10
- from .service_execution_status import ServiceExecutionStatus
11
-
12
-
13
- class ServiceExecution(UniversalBaseModel):
14
- id: typing.Optional[str] = None
15
- created_at: typing_extensions.Annotated[typing.Optional[dt.datetime], FieldMetadata(alias="createdAt")] = None
16
- started_at: typing_extensions.Annotated[typing.Optional[dt.datetime], FieldMetadata(alias="startedAt")] = None
17
- ended_at: typing_extensions.Annotated[typing.Optional[dt.datetime], FieldMetadata(alias="endedAt")] = None
18
- status: typing.Optional[ServiceExecutionStatus] = None
19
-
20
- if IS_PYDANTIC_V2:
21
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
22
- else:
23
-
24
- class Config:
25
- frozen = True
26
- smart_union = True
27
- extra = pydantic.Extra.allow
@@ -1,7 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
-
5
- ServiceExecutionStatus = typing.Union[
6
- typing.Literal["UNKNOWN", "PENDING", "RUNNING", "SUCCEEDED", "FAILED"], typing.Any
7
- ]
@@ -1,34 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- from __future__ import annotations
4
-
5
- import typing
6
-
7
- import pydantic
8
- import typing_extensions
9
- from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel, update_forward_refs
10
- from ..core.serialization import FieldMetadata
11
- from .service_execution import ServiceExecution
12
-
13
-
14
- class ServiceExecutionTokenPrincipal(UniversalBaseModel):
15
- service_execution: typing_extensions.Annotated[
16
- typing.Optional[ServiceExecution], FieldMetadata(alias="serviceExecution")
17
- ] = None
18
- service_provider: typing_extensions.Annotated[
19
- typing.Optional["UserContext"], FieldMetadata(alias="serviceProvider")
20
- ] = None
21
-
22
- if IS_PYDANTIC_V2:
23
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
24
- else:
25
-
26
- class Config:
27
- frozen = True
28
- smart_union = True
29
- extra = pydantic.Extra.allow
30
-
31
-
32
- from .user_context import UserContext # noqa: E402, F401, I001
33
-
34
- update_forward_refs(ServiceExecutionTokenPrincipal)
@@ -1,35 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- from __future__ import annotations
4
-
5
- import typing
6
-
7
- import pydantic
8
- import typing_extensions
9
- from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel, update_forward_refs
10
- from ..core.serialization import FieldMetadata
11
- from .user_context_account_type import UserContextAccountType
12
- from .user_context_context_type import UserContextContextType
13
-
14
-
15
- class UserContext(UniversalBaseModel):
16
- id: typing.Optional[str] = None
17
- context_type: typing_extensions.Annotated[
18
- typing.Optional[UserContextContextType], FieldMetadata(alias="contextType")
19
- ] = None
20
- account_type: typing_extensions.Annotated[
21
- typing.Optional[UserContextAccountType], FieldMetadata(alias="accountType")
22
- ] = None
23
- parent: typing.Optional["UserContext"] = None
24
-
25
- if IS_PYDANTIC_V2:
26
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
27
- else:
28
-
29
- class Config:
30
- frozen = True
31
- smart_union = True
32
- extra = pydantic.Extra.allow
33
-
34
-
35
- update_forward_refs(UserContext)
@@ -1,5 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
-
5
- UserContextAccountType = typing.Union[typing.Literal["BASIC", "PRO", "BUSINESS"], typing.Any]
@@ -1,5 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
-
5
- UserContextContextType = typing.Union[typing.Literal["USER", "ORGANIZATION", "SERVICE_EXECUTION"], typing.Any]
@@ -1,134 +0,0 @@
1
- /**
2
- * This file was auto-generated by Fern from our API Definition.
3
- */
4
-
5
- import * as environments from "../../../../environments.js";
6
- import * as core from "../../../../core/index.js";
7
- import * as PlanqkApi from "../../../index.js";
8
- import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers.js";
9
- import * as errors from "../../../../errors/index.js";
10
-
11
- export declare namespace Authentication {
12
- export interface Options {
13
- environment?: core.Supplier<environments.PlanqkApiEnvironment | string>;
14
- /** Specify a custom URL to connect the client to. */
15
- baseUrl?: core.Supplier<string>;
16
- apiKey?: core.Supplier<string | undefined>;
17
- /** Override the X-OrganizationId header */
18
- organizationId?: core.Supplier<string | undefined>;
19
- /** Additional headers to include in requests. */
20
- headers?: Record<string, string | core.Supplier<string | undefined> | undefined>;
21
- }
22
-
23
- export interface RequestOptions {
24
- /** The maximum time to wait for a response in seconds. */
25
- timeoutInSeconds?: number;
26
- /** The number of times to retry the request. Defaults to 2. */
27
- maxRetries?: number;
28
- /** A hook to abort the request. */
29
- abortSignal?: AbortSignal;
30
- /** Override the X-OrganizationId header */
31
- organizationId?: string | undefined;
32
- /** Additional headers to include in the request. */
33
- headers?: Record<string, string | core.Supplier<string | undefined> | undefined>;
34
- }
35
- }
36
-
37
- /**
38
- * Endpoints for checking authentication and authorization.
39
- */
40
- export class Authentication {
41
- protected readonly _options: Authentication.Options;
42
-
43
- constructor(_options: Authentication.Options = {}) {
44
- this._options = _options;
45
- }
46
-
47
- /**
48
- * Get the authenticated principal based on the provided token.
49
- *
50
- * @param {Authentication.RequestOptions} requestOptions - Request-specific configuration.
51
- *
52
- * @throws {@link PlanqkApi.UnauthorizedError}
53
- * @throws {@link PlanqkApi.ForbiddenError}
54
- * @throws {@link PlanqkApi.NotFoundError}
55
- * @throws {@link PlanqkApi.InternalServerError}
56
- *
57
- * @example
58
- * await client.authentication.authorize()
59
- */
60
- public authorize(
61
- requestOptions?: Authentication.RequestOptions,
62
- ): core.HttpResponsePromise<PlanqkApi.AuthorizeResponse> {
63
- return core.HttpResponsePromise.fromPromise(this.__authorize(requestOptions));
64
- }
65
-
66
- private async __authorize(
67
- requestOptions?: Authentication.RequestOptions,
68
- ): Promise<core.WithRawResponse<PlanqkApi.AuthorizeResponse>> {
69
- const _response = await core.fetcher({
70
- url: core.url.join(
71
- (await core.Supplier.get(this._options.baseUrl)) ??
72
- (await core.Supplier.get(this._options.environment)) ??
73
- environments.PlanqkApiEnvironment.Default,
74
- "authorize",
75
- ),
76
- method: "POST",
77
- headers: mergeHeaders(
78
- this._options?.headers,
79
- mergeOnlyDefinedHeaders({
80
- "X-OrganizationId": requestOptions?.organizationId,
81
- ...(await this._getCustomAuthorizationHeaders()),
82
- }),
83
- requestOptions?.headers,
84
- ),
85
- timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
86
- maxRetries: requestOptions?.maxRetries,
87
- withCredentials: true,
88
- abortSignal: requestOptions?.abortSignal,
89
- });
90
- if (_response.ok) {
91
- return { data: _response.body as PlanqkApi.AuthorizeResponse, rawResponse: _response.rawResponse };
92
- }
93
-
94
- if (_response.error.reason === "status-code") {
95
- switch (_response.error.statusCode) {
96
- case 401:
97
- throw new PlanqkApi.UnauthorizedError(_response.error.body as any, _response.rawResponse);
98
- case 403:
99
- throw new PlanqkApi.ForbiddenError(_response.error.body as any, _response.rawResponse);
100
- case 404:
101
- throw new PlanqkApi.NotFoundError(_response.error.body as any, _response.rawResponse);
102
- case 500:
103
- throw new PlanqkApi.InternalServerError(_response.error.body as any, _response.rawResponse);
104
- default:
105
- throw new errors.PlanqkApiError({
106
- statusCode: _response.error.statusCode,
107
- body: _response.error.body,
108
- rawResponse: _response.rawResponse,
109
- });
110
- }
111
- }
112
-
113
- switch (_response.error.reason) {
114
- case "non-json":
115
- throw new errors.PlanqkApiError({
116
- statusCode: _response.error.statusCode,
117
- body: _response.error.rawBody,
118
- rawResponse: _response.rawResponse,
119
- });
120
- case "timeout":
121
- throw new errors.PlanqkApiTimeoutError("Timeout exceeded when calling POST /authorize.");
122
- case "unknown":
123
- throw new errors.PlanqkApiError({
124
- message: _response.error.errorMessage,
125
- rawResponse: _response.rawResponse,
126
- });
127
- }
128
- }
129
-
130
- protected async _getCustomAuthorizationHeaders() {
131
- const apiKeyValue = await core.Supplier.get(this._options.apiKey);
132
- return { "X-Auth-Token": apiKeyValue };
133
- }
134
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,2 +0,0 @@
1
- export * from "./types/index.js";
2
- export * from "./client/index.js";
@@ -1,7 +0,0 @@
1
- /**
2
- * This file was auto-generated by Fern from our API Definition.
3
- */
4
-
5
- import * as PlanqkApi from "../../../index.js";
6
-
7
- export type AuthorizeResponse = PlanqkApi.PersonalAccessTokenPrincipal | PlanqkApi.ServiceExecutionTokenPrincipal;
@@ -1 +0,0 @@
1
- export * from "./AuthorizeResponse.js";
@@ -1,4 +0,0 @@
1
- export * as authentication from "./authentication/index.js";
2
- export * from "./authentication/types/index.js";
3
- export * as dataPools from "./dataPools/index.js";
4
- export * from "./dataPools/client/requests/index.js";
@@ -1,11 +0,0 @@
1
- /**
2
- * This file was auto-generated by Fern from our API Definition.
3
- */
4
-
5
- export interface AccessToken {
6
- id?: string;
7
- name?: string;
8
- createdAt?: string;
9
- usedAt?: string;
10
- expiresAt?: string;
11
- }
@@ -1,24 +0,0 @@
1
- /**
2
- * This file was auto-generated by Fern from our API Definition.
3
- */
4
-
5
- export interface OrganizationMembership {
6
- id?: string;
7
- accountType?: OrganizationMembership.AccountType;
8
- role?: OrganizationMembership.Role;
9
- }
10
-
11
- export namespace OrganizationMembership {
12
- export type AccountType = "BASIC" | "PRO" | "BUSINESS";
13
- export const AccountType = {
14
- Basic: "BASIC",
15
- Pro: "PRO",
16
- Business: "BUSINESS",
17
- } as const;
18
- export type Role = "VIEWER" | "MAINTAINER" | "OWNER";
19
- export const Role = {
20
- Viewer: "VIEWER",
21
- Maintainer: "MAINTAINER",
22
- Owner: "OWNER",
23
- } as const;
24
- }
@@ -1,21 +0,0 @@
1
- /**
2
- * This file was auto-generated by Fern from our API Definition.
3
- */
4
-
5
- import * as PlanqkApi from "../index.js";
6
-
7
- export interface PersonalAccessTokenPrincipal {
8
- id?: string;
9
- accessToken?: PlanqkApi.AccessToken;
10
- accountType?: PersonalAccessTokenPrincipal.AccountType;
11
- organizationMemberships?: PlanqkApi.OrganizationMembership[];
12
- }
13
-
14
- export namespace PersonalAccessTokenPrincipal {
15
- export type AccountType = "BASIC" | "PRO" | "BUSINESS";
16
- export const AccountType = {
17
- Basic: "BASIC",
18
- Pro: "PRO",
19
- Business: "BUSINESS",
20
- } as const;
21
- }