diff --git a/.devcontainer/README.md b/.devcontainer/README.md
index 78d722c..f359b71 100644
--- a/.devcontainer/README.md
+++ b/.devcontainer/README.md
@@ -1,4 +1,9 @@
+
+
+
+
+
> **Remember to shutdown a GitHub Codespace when it is not in use!**
# Dev Containers Quick Start
diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock
index 3c8073b..a0baf27 100644
--- a/.speakeasy/gen.lock
+++ b/.speakeasy/gen.lock
@@ -5,8 +5,11 @@ management:
docVersion: 1.0.0
speakeasyVersion: 1.422.1
generationVersion: 2.438.15
- releaseVersion: 0.1.0
- configChecksum: beaad268bb8c745122cb865db76c6bf5
+ releaseVersion: 0.1.1
+ configChecksum: 9c66e586ba01918c7530870d3cdb2ecb
+ repoURL: https://github.com/unkeyed/unkey-py.git
+ installationURL: https://github.com/unkeyed/unkey-py.git
+ published: true
features:
python:
additionalDependencies: 1.0.0
@@ -42,38 +45,51 @@ generatedFiles:
- USAGE.md
- docs/models/addpermissionspermissions.md
- docs/models/addpermissionsrequestbody.md
+ - docs/models/addpermissionsresponse.md
- docs/models/addrolesrequestbody.md
+ - docs/models/addrolesresponse.md
- docs/models/addrolesresponsebody.md
- docs/models/addrolesroles.md
- docs/models/and_.md
- docs/models/authorization.md
- docs/models/code.md
- docs/models/createapirequestbody.md
+ - docs/models/createapiresponse.md
- docs/models/createapiresponsebody.md
- docs/models/createidentityratelimits.md
- docs/models/createidentityrequestbody.md
+ - docs/models/createidentityresponse.md
- docs/models/createidentityresponsebody.md
- docs/models/createkeyinterval.md
- docs/models/createkeyratelimit.md
- docs/models/createkeyrefill.md
- docs/models/createkeyrequestbody.md
+ - docs/models/createkeyresponse.md
- docs/models/createkeyresponsebody.md
- docs/models/createkeytype.md
- docs/models/createpermissionrequestbody.md
+ - docs/models/createpermissionresponse.md
- docs/models/createpermissionresponsebody.md
- docs/models/createrolerequestbody.md
+ - docs/models/createroleresponse.md
- docs/models/createroleresponsebody.md
- docs/models/deleteapirequestbody.md
+ - docs/models/deleteapiresponse.md
- docs/models/deleteapiresponsebody.md
- docs/models/deleteidentityrequestbody.md
+ - docs/models/deleteidentityresponse.md
- docs/models/deleteidentityresponsebody.md
- docs/models/deletekeyrequestbody.md
+ - docs/models/deletekeyresponse.md
- docs/models/deletekeyresponsebody.md
- docs/models/deletekeysrequestbody.md
+ - docs/models/deletekeysresponse.md
- docs/models/deletekeysresponsebody.md
- docs/models/deletepermissionrequestbody.md
+ - docs/models/deletepermissionresponse.md
- docs/models/deletepermissionresponsebody.md
- docs/models/deleterolerequestbody.md
+ - docs/models/deleteroleresponse.md
- docs/models/deleteroleresponsebody.md
- docs/models/errbadrequest.md
- docs/models/errbadrequestcode.md
@@ -100,23 +116,31 @@ generatedFiles:
- docs/models/errunauthorizedcode.md
- docs/models/errunauthorizederror.md
- docs/models/getapirequest.md
+ - docs/models/getapiresponse.md
- docs/models/getapiresponsebody.md
- docs/models/getidentityratelimits.md
- docs/models/getidentityrequest.md
+ - docs/models/getidentityresponse.md
- docs/models/getidentityresponsebody.md
- docs/models/getkeyrequest.md
+ - docs/models/getkeyresponse.md
- docs/models/getpermissionrequest.md
+ - docs/models/getpermissionresponse.md
- docs/models/getpermissionresponsebody.md
- docs/models/getrolerequest.md
+ - docs/models/getroleresponse.md
- docs/models/getroleresponsebody.md
- docs/models/getverificationsrequest.md
+ - docs/models/getverificationsresponse.md
- docs/models/getverificationsresponsebody.md
- docs/models/granularity.md
- docs/models/hash.md
+ - docs/models/httpmetadata.md
- docs/models/identity.md
- docs/models/interval.md
- docs/models/key.md
- docs/models/limitrequestbody.md
+ - docs/models/limitresponse.md
- docs/models/limitresponsebody.md
- docs/models/listidentitiesidentities.md
- docs/models/listidentitiesratelimits.md
@@ -124,8 +148,11 @@ generatedFiles:
- docs/models/listidentitiesresponse.md
- docs/models/listidentitiesresponsebody.md
- docs/models/listkeysrequest.md
+ - docs/models/listkeysresponse.md
- docs/models/listkeysresponsebody.md
+ - docs/models/listpermissionsresponse.md
- docs/models/listpermissionsresponsebody.md
+ - docs/models/listrolesresponse.md
- docs/models/listrolesresponsebody.md
- docs/models/op.md
- docs/models/or_.md
@@ -135,8 +162,10 @@ generatedFiles:
- docs/models/refill.md
- docs/models/removepermissionspermissions.md
- docs/models/removepermissionsrequestbody.md
+ - docs/models/removepermissionsresponse.md
- docs/models/removepermissionsresponsebody.md
- docs/models/removerolesrequestbody.md
+ - docs/models/removerolesresponse.md
- docs/models/removerolesresponsebody.md
- docs/models/removerolesroles.md
- docs/models/requestbody.md
@@ -147,23 +176,28 @@ generatedFiles:
- docs/models/services.md
- docs/models/setpermissionspermissions.md
- docs/models/setpermissionsrequestbody.md
+ - docs/models/setpermissionsresponse.md
- docs/models/setpermissionsresponsebody.md
- docs/models/setrolesrequestbody.md
+ - docs/models/setrolesresponse.md
- docs/models/setrolesresponsebody.md
- docs/models/setrolesroles.md
- docs/models/type.md
- docs/models/updateidentityidentitiesratelimits.md
- docs/models/updateidentityratelimits.md
- docs/models/updateidentityrequestbody.md
+ - docs/models/updateidentityresponse.md
- docs/models/updateidentityresponsebody.md
- docs/models/updatekeyinterval.md
- docs/models/updatekeypermissions.md
- docs/models/updatekeyratelimit.md
- docs/models/updatekeyrefill.md
- docs/models/updatekeyrequestbody.md
+ - docs/models/updatekeyresponse.md
- docs/models/updatekeyresponsebody.md
- docs/models/updatekeytype.md
- docs/models/updateremainingrequestbody.md
+ - docs/models/updateremainingresponse.md
- docs/models/updateremainingresponsebody.md
- docs/models/utils/retryconfig.md
- docs/models/v1keysverifykeyrequest.md
@@ -171,10 +205,12 @@ generatedFiles:
- docs/models/v1keysverifykeyresponse.md
- docs/models/v1keysverifykeyresponseidentity.md
- docs/models/v1keysverifykeyresponseratelimit.md
+ - docs/models/v1livenessresponse.md
- docs/models/v1livenessresponsebody.md
- docs/models/v1migrationscreatekeysinterval.md
- docs/models/v1migrationscreatekeysratelimit.md
- docs/models/v1migrationscreatekeysrefill.md
+ - docs/models/v1migrationscreatekeysresponse.md
- docs/models/v1migrationscreatekeysresponsebody.md
- docs/models/v1migrationscreatekeystype.md
- docs/models/v1migrationsenqueuekeyshash.md
@@ -183,13 +219,16 @@ generatedFiles:
- docs/models/v1migrationsenqueuekeysratelimit.md
- docs/models/v1migrationsenqueuekeysrefill.md
- docs/models/v1migrationsenqueuekeysrequestbody.md
+ - docs/models/v1migrationsenqueuekeysresponse.md
- docs/models/v1migrationsenqueuekeysresponsebody.md
- docs/models/v1migrationsenqueuekeystype.md
- docs/models/v1migrationsenqueuekeysvariant.md
- docs/models/variant.md
- docs/models/verifications.md
+ - docs/models/verifykeyresponse.md
- docs/models/whoamiidentity.md
- docs/models/whoamirequestbody.md
+ - docs/models/whoamiresponse.md
- docs/models/whoamiresponsebody.md
- docs/sdks/apis/README.md
- docs/sdks/identities/README.md
@@ -246,6 +285,7 @@ generatedFiles:
- src/unkey/models/getpermissionop.py
- src/unkey/models/getroleop.py
- src/unkey/models/getverificationsop.py
+ - src/unkey/models/httpmetadata.py
- src/unkey/models/key.py
- src/unkey/models/limitop.py
- src/unkey/models/listidentitiesop.py
@@ -267,6 +307,7 @@ generatedFiles:
- src/unkey/models/v1_migrations_enqueuekeysop.py
- src/unkey/models/v1keysverifykeyrequest.py
- src/unkey/models/v1keysverifykeyresponse.py
+ - src/unkey/models/verifykeyop.py
- src/unkey/models/whoamiop.py
- src/unkey/permissions.py
- src/unkey/py.typed
diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml
index c091c9e..1c696d2 100644
--- a/.speakeasy/gen.yaml
+++ b/.speakeasy/gen.yaml
@@ -15,7 +15,7 @@ generation:
auth:
oAuth2ClientCredentialsEnabled: true
python:
- version: 0.1.0
+ version: 0.1.1
additionalDependencies:
dev: {}
main: {}
diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock
index af3a603..7d5d358 100644
--- a/.speakeasy/workflow.lock
+++ b/.speakeasy/workflow.lock
@@ -2,18 +2,19 @@ speakeasyVersion: 1.422.1
sources:
Unkey-OAS:
sourceNamespace: unkey-oas
- sourceRevisionDigest: sha256:60726211900401b3a94a208556e8c137defed86b1702d3adca7fd6ba39e3bcd9
- sourceBlobDigest: sha256:efbf9d023555a6dde92894add8496a0973cb04cae47594a6085e1c21b3fe5dc7
+ sourceRevisionDigest: sha256:d83811be4fc2592537d18810313c7f7ae2d8749dd3b952924217478426bf353a
+ sourceBlobDigest: sha256:6af87205b63b788e53a11d7145cd48df3e627187a5a2f694c27e3b2b49b06871
tags:
- latest
+ - main
targets:
unkey:
source: Unkey-OAS
sourceNamespace: unkey-oas
- sourceRevisionDigest: sha256:60726211900401b3a94a208556e8c137defed86b1702d3adca7fd6ba39e3bcd9
- sourceBlobDigest: sha256:efbf9d023555a6dde92894add8496a0973cb04cae47594a6085e1c21b3fe5dc7
+ sourceRevisionDigest: sha256:d83811be4fc2592537d18810313c7f7ae2d8749dd3b952924217478426bf353a
+ sourceBlobDigest: sha256:6af87205b63b788e53a11d7145cd48df3e627187a5a2f694c27e3b2b49b06871
codeSamplesNamespace: unkey-oas-code-samples
- codeSamplesRevisionDigest: sha256:466ac088f43d10aea6cad73ec10acf253a0dfca32490d6ccbbf596a7a2bea255
+ codeSamplesRevisionDigest: sha256:6f1836c611b2287bca5a0908a09f9cc0c8b8d6011d4327820f07ac462b0bce3a
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest
@@ -29,6 +30,9 @@ workflow:
unkey:
target: python
source: Unkey-OAS
+ publish:
+ pypi:
+ token: $pypi_token
codeSamples:
registry:
location: registry.speakeasyapi.dev/unkey/unkey/unkey-oas-code-samples
diff --git a/README.md b/README.md
index f8b425d..436f20d 100644
--- a/README.md
+++ b/README.md
@@ -44,7 +44,7 @@ The SDK can be installed with either *pip* or *poetry* package managers.
*PIP* is the default package installer for Python, enabling easy installation and management of packages from PyPI via the command line.
```bash
-pip install git+.git
+pip install unkey
```
### Poetry
@@ -52,7 +52,7 @@ pip install git+.git
*Poetry* is a modern tool that simplifies dependency management and package publishing by using a single `pyproject.toml` file to handle project metadata and dependencies.
```bash
-poetry add git+.git
+poetry add unkey
```
@@ -82,7 +82,7 @@ s = Unkey(
res = s.liveness.check()
-if res is not None:
+if res.object is not None:
# handle response
pass
```
@@ -101,7 +101,7 @@ async def main():
bearer_auth=os.getenv("UNKEY_BEARER_AUTH", ""),
)
res = await s.liveness.check_async()
- if res is not None:
+ if res.object is not None:
# handle response
pass
@@ -194,7 +194,7 @@ s = Unkey(
res = s.identities.list(limit=100)
-if res is not None:
+if res.object is not None:
while True:
# handle items
@@ -223,7 +223,7 @@ s = Unkey(
res = s.liveness.check(,
RetryConfig("backoff", BackoffStrategy(1, 50, 1.1, 100), False))
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -242,7 +242,7 @@ s = Unkey(
res = s.liveness.check()
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -290,7 +290,7 @@ res = None
try:
res = s.liveness.check()
- if res is not None:
+ if res.object is not None:
# handle response
pass
@@ -345,7 +345,7 @@ s = Unkey(
res = s.liveness.check()
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -366,7 +366,7 @@ s = Unkey(
res = s.liveness.check()
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -476,7 +476,7 @@ s = Unkey(
res = s.liveness.check()
-if res is not None:
+if res.object is not None:
# handle response
pass
diff --git a/RELEASES.md b/RELEASES.md
new file mode 100644
index 0000000..455a320
--- /dev/null
+++ b/RELEASES.md
@@ -0,0 +1,11 @@
+
+
+## 2024-10-28 09:25:08
+### Changes
+Based on:
+- OpenAPI Doc
+- Speakeasy CLI 1.422.1 (2.438.15) https://github.com/speakeasy-api/speakeasy
+### Generated
+- [python v0.1.1] .
+### Releases
+- [PyPI v0.1.1] https://pypi.org/project/unkey/0.1.1 - .
\ No newline at end of file
diff --git a/USAGE.md b/USAGE.md
index b597d15..2fd2fc8 100644
--- a/USAGE.md
+++ b/USAGE.md
@@ -10,7 +10,7 @@ s = Unkey(
res = s.liveness.check()
-if res is not None:
+if res.object is not None:
# handle response
pass
```
@@ -29,7 +29,7 @@ async def main():
bearer_auth=os.getenv("UNKEY_BEARER_AUTH", ""),
)
res = await s.liveness.check_async()
- if res is not None:
+ if res.object is not None:
# handle response
pass
diff --git a/docs/models/addpermissionsresponse.md b/docs/models/addpermissionsresponse.md
new file mode 100644
index 0000000..9c628d7
--- /dev/null
+++ b/docs/models/addpermissionsresponse.md
@@ -0,0 +1,9 @@
+# AddPermissionsResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `response_bodies` | List[[models.ResponseBody](../models/responsebody.md)] | :heavy_minus_sign: | All currently connected permissions |
\ No newline at end of file
diff --git a/docs/models/addrolesresponse.md b/docs/models/addrolesresponse.md
new file mode 100644
index 0000000..c4562f9
--- /dev/null
+++ b/docs/models/addrolesresponse.md
@@ -0,0 +1,9 @@
+# AddRolesResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `response_bodies` | List[[models.AddRolesResponseBody](../models/addrolesresponsebody.md)] | :heavy_minus_sign: | All currently connected roles |
\ No newline at end of file
diff --git a/docs/models/createapiresponse.md b/docs/models/createapiresponse.md
new file mode 100644
index 0000000..0231416
--- /dev/null
+++ b/docs/models/createapiresponse.md
@@ -0,0 +1,9 @@
+# CreateAPIResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.CreateAPIResponseBody]](../models/createapiresponsebody.md) | :heavy_minus_sign: | The configuration for an api |
\ No newline at end of file
diff --git a/docs/models/createidentityresponse.md b/docs/models/createidentityresponse.md
new file mode 100644
index 0000000..1751e46
--- /dev/null
+++ b/docs/models/createidentityresponse.md
@@ -0,0 +1,9 @@
+# CreateIdentityResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.CreateIdentityResponseBody]](../models/createidentityresponsebody.md) | :heavy_minus_sign: | The configuration for an api |
\ No newline at end of file
diff --git a/docs/models/createkeyresponse.md b/docs/models/createkeyresponse.md
new file mode 100644
index 0000000..19faaec
--- /dev/null
+++ b/docs/models/createkeyresponse.md
@@ -0,0 +1,9 @@
+# CreateKeyResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.CreateKeyResponseBody]](../models/createkeyresponsebody.md) | :heavy_minus_sign: | The configuration for an api |
\ No newline at end of file
diff --git a/docs/models/createpermissionresponse.md b/docs/models/createpermissionresponse.md
new file mode 100644
index 0000000..0ac1bea
--- /dev/null
+++ b/docs/models/createpermissionresponse.md
@@ -0,0 +1,9 @@
+# CreatePermissionResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.CreatePermissionResponseBody]](../models/createpermissionresponsebody.md) | :heavy_minus_sign: | Sucessfully created a permission |
\ No newline at end of file
diff --git a/docs/models/createroleresponse.md b/docs/models/createroleresponse.md
new file mode 100644
index 0000000..bb68ef1
--- /dev/null
+++ b/docs/models/createroleresponse.md
@@ -0,0 +1,9 @@
+# CreateRoleResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.CreateRoleResponseBody]](../models/createroleresponsebody.md) | :heavy_minus_sign: | Sucessfully created a role |
\ No newline at end of file
diff --git a/docs/models/deleteapiresponse.md b/docs/models/deleteapiresponse.md
new file mode 100644
index 0000000..2b1e117
--- /dev/null
+++ b/docs/models/deleteapiresponse.md
@@ -0,0 +1,9 @@
+# DeleteAPIResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.DeleteAPIResponseBody]](../models/deleteapiresponsebody.md) | :heavy_minus_sign: | The api was successfully deleted, it may take up to 30s for this to take effect in all regions |
\ No newline at end of file
diff --git a/docs/models/deleteidentityresponse.md b/docs/models/deleteidentityresponse.md
new file mode 100644
index 0000000..c594295
--- /dev/null
+++ b/docs/models/deleteidentityresponse.md
@@ -0,0 +1,9 @@
+# DeleteIdentityResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.DeleteIdentityResponseBody]](../models/deleteidentityresponsebody.md) | :heavy_minus_sign: | The identity was successfully deleted, it may take up to 30s for this to take effect in all regions |
\ No newline at end of file
diff --git a/docs/models/deletekeyresponse.md b/docs/models/deletekeyresponse.md
new file mode 100644
index 0000000..32d8cd6
--- /dev/null
+++ b/docs/models/deletekeyresponse.md
@@ -0,0 +1,9 @@
+# DeleteKeyResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.DeleteKeyResponseBody]](../models/deletekeyresponsebody.md) | :heavy_minus_sign: | The key was successfully revoked, it may take up to 30s for this to take effect in all regions |
\ No newline at end of file
diff --git a/docs/models/deletekeysresponse.md b/docs/models/deletekeysresponse.md
new file mode 100644
index 0000000..931cbf9
--- /dev/null
+++ b/docs/models/deletekeysresponse.md
@@ -0,0 +1,9 @@
+# DeleteKeysResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.DeleteKeysResponseBody]](../models/deletekeysresponsebody.md) | :heavy_minus_sign: | The keys have been deleted |
\ No newline at end of file
diff --git a/docs/models/deletepermissionresponse.md b/docs/models/deletepermissionresponse.md
new file mode 100644
index 0000000..5145cf9
--- /dev/null
+++ b/docs/models/deletepermissionresponse.md
@@ -0,0 +1,9 @@
+# DeletePermissionResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.DeletePermissionResponseBody]](../models/deletepermissionresponsebody.md) | :heavy_minus_sign: | Sucessfully deleted a permission |
\ No newline at end of file
diff --git a/docs/models/deleteroleresponse.md b/docs/models/deleteroleresponse.md
new file mode 100644
index 0000000..20d2c1e
--- /dev/null
+++ b/docs/models/deleteroleresponse.md
@@ -0,0 +1,9 @@
+# DeleteRoleResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.DeleteRoleResponseBody]](../models/deleteroleresponsebody.md) | :heavy_minus_sign: | Sucessfully deleted a role |
\ No newline at end of file
diff --git a/docs/models/getapiresponse.md b/docs/models/getapiresponse.md
new file mode 100644
index 0000000..a38b380
--- /dev/null
+++ b/docs/models/getapiresponse.md
@@ -0,0 +1,9 @@
+# GetAPIResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.GetAPIResponseBody]](../models/getapiresponsebody.md) | :heavy_minus_sign: | The configuration for an api |
\ No newline at end of file
diff --git a/docs/models/getidentityresponse.md b/docs/models/getidentityresponse.md
new file mode 100644
index 0000000..194ef5c
--- /dev/null
+++ b/docs/models/getidentityresponse.md
@@ -0,0 +1,9 @@
+# GetIdentityResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.GetIdentityResponseBody]](../models/getidentityresponsebody.md) | :heavy_minus_sign: | The configuration for an api |
\ No newline at end of file
diff --git a/docs/models/getkeyresponse.md b/docs/models/getkeyresponse.md
new file mode 100644
index 0000000..8ab1f91
--- /dev/null
+++ b/docs/models/getkeyresponse.md
@@ -0,0 +1,9 @@
+# GetKeyResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `key` | [Optional[models.Key]](../models/key.md) | :heavy_minus_sign: | The configuration for a single key |
\ No newline at end of file
diff --git a/docs/models/getpermissionresponse.md b/docs/models/getpermissionresponse.md
new file mode 100644
index 0000000..202a98f
--- /dev/null
+++ b/docs/models/getpermissionresponse.md
@@ -0,0 +1,9 @@
+# GetPermissionResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.GetPermissionResponseBody]](../models/getpermissionresponsebody.md) | :heavy_minus_sign: | The Role |
\ No newline at end of file
diff --git a/docs/models/getroleresponse.md b/docs/models/getroleresponse.md
new file mode 100644
index 0000000..b52849b
--- /dev/null
+++ b/docs/models/getroleresponse.md
@@ -0,0 +1,9 @@
+# GetRoleResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.GetRoleResponseBody]](../models/getroleresponsebody.md) | :heavy_minus_sign: | The Role |
\ No newline at end of file
diff --git a/docs/models/getverificationsresponse.md b/docs/models/getverificationsresponse.md
new file mode 100644
index 0000000..2544078
--- /dev/null
+++ b/docs/models/getverificationsresponse.md
@@ -0,0 +1,9 @@
+# GetVerificationsResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.GetVerificationsResponseBody]](../models/getverificationsresponsebody.md) | :heavy_minus_sign: | Usage numbers over time |
\ No newline at end of file
diff --git a/docs/models/httpmetadata.md b/docs/models/httpmetadata.md
new file mode 100644
index 0000000..2c18716
--- /dev/null
+++ b/docs/models/httpmetadata.md
@@ -0,0 +1,9 @@
+# HTTPMetadata
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
+| `response` | [httpx.Response](https://www.python-httpx.org/api/#response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
+| `request` | [httpx.Request](https://www.python-httpx.org/api/#request) | :heavy_check_mark: | Raw HTTP request; suitable for debugging |
\ No newline at end of file
diff --git a/docs/models/limitresponse.md b/docs/models/limitresponse.md
new file mode 100644
index 0000000..3d6349e
--- /dev/null
+++ b/docs/models/limitresponse.md
@@ -0,0 +1,9 @@
+# LimitResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.LimitResponseBody]](../models/limitresponsebody.md) | :heavy_minus_sign: | N/A |
\ No newline at end of file
diff --git a/docs/models/listidentitiesresponse.md b/docs/models/listidentitiesresponse.md
index 99d6b62..3f3e35d 100644
--- a/docs/models/listidentitiesresponse.md
+++ b/docs/models/listidentitiesresponse.md
@@ -3,6 +3,7 @@
## Fields
-| Field | Type | Required | Description |
-| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
-| `result` | [models.ListIdentitiesResponseBody](../models/listidentitiesresponsebody.md) | :heavy_check_mark: | N/A |
\ No newline at end of file
+| Field | Type | Required | Description |
+| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.ListIdentitiesResponseBody]](../models/listidentitiesresponsebody.md) | :heavy_minus_sign: | A list of identities. |
\ No newline at end of file
diff --git a/docs/models/listkeysresponse.md b/docs/models/listkeysresponse.md
new file mode 100644
index 0000000..418c888
--- /dev/null
+++ b/docs/models/listkeysresponse.md
@@ -0,0 +1,9 @@
+# ListKeysResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.ListKeysResponseBody]](../models/listkeysresponsebody.md) | :heavy_minus_sign: | List of keys for the api |
\ No newline at end of file
diff --git a/docs/models/listpermissionsresponse.md b/docs/models/listpermissionsresponse.md
new file mode 100644
index 0000000..e77052e
--- /dev/null
+++ b/docs/models/listpermissionsresponse.md
@@ -0,0 +1,9 @@
+# ListPermissionsResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `response_bodies` | List[[models.ListPermissionsResponseBody](../models/listpermissionsresponsebody.md)] | :heavy_minus_sign: | The permissions in your workspace |
\ No newline at end of file
diff --git a/docs/models/listrolesresponse.md b/docs/models/listrolesresponse.md
new file mode 100644
index 0000000..226346f
--- /dev/null
+++ b/docs/models/listrolesresponse.md
@@ -0,0 +1,9 @@
+# ListRolesResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `response_bodies` | List[[models.ListRolesResponseBody](../models/listrolesresponsebody.md)] | :heavy_minus_sign: | The Roles in your workspace |
\ No newline at end of file
diff --git a/docs/models/removepermissionsresponse.md b/docs/models/removepermissionsresponse.md
new file mode 100644
index 0000000..cf6bb87
--- /dev/null
+++ b/docs/models/removepermissionsresponse.md
@@ -0,0 +1,9 @@
+# RemovePermissionsResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.RemovePermissionsResponseBody]](../models/removepermissionsresponsebody.md) | :heavy_minus_sign: | Success |
\ No newline at end of file
diff --git a/docs/models/removerolesresponse.md b/docs/models/removerolesresponse.md
new file mode 100644
index 0000000..ed5f62f
--- /dev/null
+++ b/docs/models/removerolesresponse.md
@@ -0,0 +1,9 @@
+# RemoveRolesResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.RemoveRolesResponseBody]](../models/removerolesresponsebody.md) | :heavy_minus_sign: | Success |
\ No newline at end of file
diff --git a/docs/models/setpermissionsresponse.md b/docs/models/setpermissionsresponse.md
new file mode 100644
index 0000000..5b6d5b3
--- /dev/null
+++ b/docs/models/setpermissionsresponse.md
@@ -0,0 +1,9 @@
+# SetPermissionsResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `response_bodies` | List[[models.SetPermissionsResponseBody](../models/setpermissionsresponsebody.md)] | :heavy_minus_sign: | All currently connected permissions |
\ No newline at end of file
diff --git a/docs/models/setrolesresponse.md b/docs/models/setrolesresponse.md
new file mode 100644
index 0000000..01d53ae
--- /dev/null
+++ b/docs/models/setrolesresponse.md
@@ -0,0 +1,9 @@
+# SetRolesResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `response_bodies` | List[[models.SetRolesResponseBody](../models/setrolesresponsebody.md)] | :heavy_minus_sign: | All currently connected roles |
\ No newline at end of file
diff --git a/docs/models/updateidentityresponse.md b/docs/models/updateidentityresponse.md
new file mode 100644
index 0000000..4d213de
--- /dev/null
+++ b/docs/models/updateidentityresponse.md
@@ -0,0 +1,9 @@
+# UpdateIdentityResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.UpdateIdentityResponseBody]](../models/updateidentityresponsebody.md) | :heavy_minus_sign: | The identity after the update. |
\ No newline at end of file
diff --git a/docs/models/updatekeyresponse.md b/docs/models/updatekeyresponse.md
new file mode 100644
index 0000000..d6b7251
--- /dev/null
+++ b/docs/models/updatekeyresponse.md
@@ -0,0 +1,9 @@
+# UpdateKeyResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.UpdateKeyResponseBody]](../models/updatekeyresponsebody.md) | :heavy_minus_sign: | The key was successfully updated, it may take up to 30s for this to take effect in all regions |
\ No newline at end of file
diff --git a/docs/models/updateremainingresponse.md b/docs/models/updateremainingresponse.md
new file mode 100644
index 0000000..0ee1a71
--- /dev/null
+++ b/docs/models/updateremainingresponse.md
@@ -0,0 +1,9 @@
+# UpdateRemainingResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.UpdateRemainingResponseBody]](../models/updateremainingresponsebody.md) | :heavy_minus_sign: | The configuration for an api |
\ No newline at end of file
diff --git a/docs/models/v1livenessresponse.md b/docs/models/v1livenessresponse.md
new file mode 100644
index 0000000..7e81198
--- /dev/null
+++ b/docs/models/v1livenessresponse.md
@@ -0,0 +1,9 @@
+# V1LivenessResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.V1LivenessResponseBody]](../models/v1livenessresponsebody.md) | :heavy_minus_sign: | The configured services and their status |
\ No newline at end of file
diff --git a/docs/models/v1migrationscreatekeysresponse.md b/docs/models/v1migrationscreatekeysresponse.md
new file mode 100644
index 0000000..6edafc5
--- /dev/null
+++ b/docs/models/v1migrationscreatekeysresponse.md
@@ -0,0 +1,9 @@
+# V1MigrationsCreateKeysResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.V1MigrationsCreateKeysResponseBody]](../models/v1migrationscreatekeysresponsebody.md) | :heavy_minus_sign: | The key ids of all created keys |
\ No newline at end of file
diff --git a/docs/models/v1migrationsenqueuekeysresponse.md b/docs/models/v1migrationsenqueuekeysresponse.md
new file mode 100644
index 0000000..71bfbb2
--- /dev/null
+++ b/docs/models/v1migrationsenqueuekeysresponse.md
@@ -0,0 +1,9 @@
+# V1MigrationsEnqueueKeysResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.V1MigrationsEnqueueKeysResponseBody]](../models/v1migrationsenqueuekeysresponsebody.md) | :heavy_minus_sign: | The key ids of all created keys |
\ No newline at end of file
diff --git a/docs/models/verifykeyresponse.md b/docs/models/verifykeyresponse.md
new file mode 100644
index 0000000..15798b8
--- /dev/null
+++ b/docs/models/verifykeyresponse.md
@@ -0,0 +1,9 @@
+# VerifyKeyResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `v1_keys_verify_key_response` | [Optional[models.V1KeysVerifyKeyResponse]](../models/v1keysverifykeyresponse.md) | :heavy_minus_sign: | The verification result |
\ No newline at end of file
diff --git a/docs/models/whoamiresponse.md b/docs/models/whoamiresponse.md
new file mode 100644
index 0000000..ee6e1a4
--- /dev/null
+++ b/docs/models/whoamiresponse.md
@@ -0,0 +1,9 @@
+# WhoamiResponse
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- |
+| `http_meta` | [models.HTTPMetadata](../models/httpmetadata.md) | :heavy_check_mark: | N/A |
+| `object` | [Optional[models.WhoamiResponseBody]](../models/whoamiresponsebody.md) | :heavy_minus_sign: | The configuration for a single key |
\ No newline at end of file
diff --git a/docs/sdks/apis/README.md b/docs/sdks/apis/README.md
index 7e39140..69f828f 100644
--- a/docs/sdks/apis/README.md
+++ b/docs/sdks/apis/README.md
@@ -25,7 +25,7 @@ s = Unkey(
res = s.apis.get(api_id="api_1234")
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -40,7 +40,7 @@ if res is not None:
### Response
-**[models.GetAPIResponseBody](../../models/getapiresponsebody.md)**
+**[models.GetAPIResponse](../../models/getapiresponse.md)**
### Errors
@@ -71,7 +71,7 @@ res = s.apis.create(request={
"name": "my-api",
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -86,7 +86,7 @@ if res is not None:
### Response
-**[models.CreateAPIResponseBody](../../models/createapiresponsebody.md)**
+**[models.CreateAPIResponse](../../models/createapiresponse.md)**
### Errors
@@ -118,7 +118,7 @@ res = s.apis.list_keys(request={
"limit": 100,
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -133,7 +133,7 @@ if res is not None:
### Response
-**[models.ListKeysResponseBody](../../models/listkeysresponsebody.md)**
+**[models.ListKeysResponse](../../models/listkeysresponse.md)**
### Errors
@@ -164,7 +164,7 @@ res = s.apis.delete(request={
"api_id": "api_1234",
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -179,7 +179,7 @@ if res is not None:
### Response
-**[models.DeleteAPIResponseBody](../../models/deleteapiresponsebody.md)**
+**[models.DeleteAPIResponse](../../models/deleteapiresponse.md)**
### Errors
@@ -210,7 +210,7 @@ res = s.apis.delete_keys(request={
"api_id": "api_1234",
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -225,7 +225,7 @@ if res is not None:
### Response
-**[models.DeleteKeysResponseBody](../../models/deletekeysresponsebody.md)**
+**[models.DeleteKeysResponse](../../models/deletekeysresponse.md)**
### Errors
diff --git a/docs/sdks/identities/README.md b/docs/sdks/identities/README.md
index cec4c52..1ed47cc 100644
--- a/docs/sdks/identities/README.md
+++ b/docs/sdks/identities/README.md
@@ -39,7 +39,7 @@ res = s.identities.create(request={
],
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -54,7 +54,7 @@ if res is not None:
### Response
-**[models.CreateIdentityResponseBody](../../models/createidentityresponsebody.md)**
+**[models.CreateIdentityResponse](../../models/createidentityresponse.md)**
### Errors
@@ -83,7 +83,7 @@ s = Unkey(
res = s.identities.get(identity_id="id_1234", external_id="id_1234")
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -99,7 +99,7 @@ if res is not None:
### Response
-**[models.GetIdentityResponseBody](../../models/getidentityresponsebody.md)**
+**[models.GetIdentityResponse](../../models/getidentityresponse.md)**
### Errors
@@ -128,7 +128,7 @@ s = Unkey(
res = s.identities.list(limit=100)
-if res is not None:
+if res.object is not None:
while True:
# handle items
@@ -198,7 +198,7 @@ res = s.identities.update(request={
],
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -213,7 +213,7 @@ if res is not None:
### Response
-**[models.UpdateIdentityResponseBody](../../models/updateidentityresponsebody.md)**
+**[models.UpdateIdentityResponse](../../models/updateidentityresponse.md)**
### Errors
@@ -244,7 +244,7 @@ res = s.identities.delete(request={
"identity_id": "id_1234",
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -259,7 +259,7 @@ if res is not None:
### Response
-**[models.DeleteIdentityResponseBody](../../models/deleteidentityresponsebody.md)**
+**[models.DeleteIdentityResponse](../../models/deleteidentityresponse.md)**
### Errors
diff --git a/docs/sdks/keys/README.md b/docs/sdks/keys/README.md
index 44e77d6..bb73f8e 100644
--- a/docs/sdks/keys/README.md
+++ b/docs/sdks/keys/README.md
@@ -34,7 +34,7 @@ s = Unkey(
res = s.keys.get(key_id="key_1234")
-if res is not None:
+if res.key is not None:
# handle response
pass
@@ -50,7 +50,7 @@ if res is not None:
### Response
-**[models.Key](../../models/key.md)**
+**[models.GetKeyResponse](../../models/getkeyresponse.md)**
### Errors
@@ -81,7 +81,7 @@ res = s.keys.whoami(request={
"key": "sk_123",
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -96,7 +96,7 @@ if res is not None:
### Response
-**[models.WhoamiResponseBody](../../models/whoamiresponsebody.md)**
+**[models.WhoamiResponse](../../models/whoamiresponse.md)**
### Errors
@@ -127,7 +127,7 @@ res = s.keys.delete(request={
"key_id": "key_1234",
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -142,7 +142,7 @@ if res is not None:
### Response
-**[models.DeleteKeyResponseBody](../../models/deletekeyresponsebody.md)**
+**[models.DeleteKeyResponse](../../models/deletekeyresponse.md)**
### Errors
@@ -200,7 +200,7 @@ res = s.keys.create(request={
"enabled": False,
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -215,7 +215,7 @@ if res is not None:
### Response
-**[models.CreateKeyResponseBody](../../models/createkeyresponsebody.md)**
+**[models.CreateKeyResponse](../../models/createkeyresponse.md)**
### Errors
@@ -259,7 +259,7 @@ res = s.keys.verify(request={
],
})
-if res is not None:
+if res.v1_keys_verify_key_response is not None:
# handle response
pass
@@ -274,7 +274,7 @@ if res is not None:
### Response
-**[models.V1KeysVerifyKeyResponse](../../models/v1keysverifykeyresponse.md)**
+**[models.VerifyKeyResponse](../../models/verifykeyresponse.md)**
### Errors
@@ -352,7 +352,7 @@ res = s.keys.update(request={
],
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -367,7 +367,7 @@ if res is not None:
### Response
-**[models.UpdateKeyResponseBody](../../models/updatekeyresponsebody.md)**
+**[models.UpdateKeyResponse](../../models/updatekeyresponse.md)**
### Errors
@@ -401,7 +401,7 @@ res = s.keys.update_remaining(request={
"value": 1,
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -416,7 +416,7 @@ if res is not None:
### Response
-**[models.UpdateRemainingResponseBody](../../models/updateremainingresponsebody.md)**
+**[models.UpdateRemainingResponse](../../models/updateremainingresponse.md)**
### Errors
@@ -452,7 +452,7 @@ res = s.keys.get_verifications(request={
"granularity": unkey.Granularity.DAY,
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -467,7 +467,7 @@ if res is not None:
### Response
-**[models.GetVerificationsResponseBody](../../models/getverificationsresponsebody.md)**
+**[models.GetVerificationsResponse](../../models/getverificationsresponse.md)**
### Errors
@@ -501,7 +501,7 @@ res = s.keys.add_permissions(request={
],
})
-if res is not None:
+if res.response_bodies is not None:
# handle response
pass
@@ -516,7 +516,7 @@ if res is not None:
### Response
-**[List[models.ResponseBody]](../../models/.md)**
+**[models.AddPermissionsResponse](../../models/addpermissionsresponse.md)**
### Errors
@@ -555,7 +555,7 @@ res = s.keys.remove_permissions(request={
],
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -570,7 +570,7 @@ if res is not None:
### Response
-**[models.RemovePermissionsResponseBody](../../models/removepermissionsresponsebody.md)**
+**[models.RemovePermissionsResponse](../../models/removepermissionsresponse.md)**
### Errors
@@ -613,7 +613,7 @@ res = s.keys.set_permissions(request={
],
})
-if res is not None:
+if res.response_bodies is not None:
# handle response
pass
@@ -628,7 +628,7 @@ if res is not None:
### Response
-**[List[models.SetPermissionsResponseBody]](../../models/.md)**
+**[models.SetPermissionsResponse](../../models/setpermissionsresponse.md)**
### Errors
@@ -671,7 +671,7 @@ res = s.keys.add_roles(request={
],
})
-if res is not None:
+if res.response_bodies is not None:
# handle response
pass
@@ -686,7 +686,7 @@ if res is not None:
### Response
-**[List[models.AddRolesResponseBody]](../../models/.md)**
+**[models.AddRolesResponse](../../models/addrolesresponse.md)**
### Errors
@@ -725,7 +725,7 @@ res = s.keys.remove_roles(request={
],
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -740,7 +740,7 @@ if res is not None:
### Response
-**[models.RemoveRolesResponseBody](../../models/removerolesresponsebody.md)**
+**[models.RemoveRolesResponse](../../models/removerolesresponse.md)**
### Errors
@@ -783,7 +783,7 @@ res = s.keys.set_roles(request={
],
})
-if res is not None:
+if res.response_bodies is not None:
# handle response
pass
@@ -798,7 +798,7 @@ if res is not None:
### Response
-**[List[models.SetRolesResponseBody]](../../models/.md)**
+**[models.SetRolesResponse](../../models/setrolesresponse.md)**
### Errors
diff --git a/docs/sdks/liveness/README.md b/docs/sdks/liveness/README.md
index 7d5f52f..9ed9d23 100644
--- a/docs/sdks/liveness/README.md
+++ b/docs/sdks/liveness/README.md
@@ -21,7 +21,7 @@ s = Unkey(
res = s.liveness.check()
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -35,7 +35,7 @@ if res is not None:
### Response
-**[models.V1LivenessResponseBody](../../models/v1livenessresponsebody.md)**
+**[models.V1LivenessResponse](../../models/v1livenessresponse.md)**
### Errors
diff --git a/docs/sdks/migrations/README.md b/docs/sdks/migrations/README.md
index f7dbc3c..efd787e 100644
--- a/docs/sdks/migrations/README.md
+++ b/docs/sdks/migrations/README.md
@@ -55,7 +55,7 @@ res = s.migrations.create_keys(request=[
},
])
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -70,7 +70,7 @@ if res is not None:
### Response
-**[models.V1MigrationsCreateKeysResponseBody](../../models/v1migrationscreatekeysresponsebody.md)**
+**[models.V1MigrationsCreateKeysResponse](../../models/v1migrationscreatekeysresponse.md)**
### Errors
@@ -134,7 +134,7 @@ res = s.migrations.enqueue(request={
],
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -149,7 +149,7 @@ if res is not None:
### Response
-**[models.V1MigrationsEnqueueKeysResponseBody](../../models/v1migrationsenqueuekeysresponsebody.md)**
+**[models.V1MigrationsEnqueueKeysResponse](../../models/v1migrationsenqueuekeysresponse.md)**
### Errors
diff --git a/docs/sdks/permissions/README.md b/docs/sdks/permissions/README.md
index 156ecc3..59c6043 100644
--- a/docs/sdks/permissions/README.md
+++ b/docs/sdks/permissions/README.md
@@ -31,7 +31,7 @@ res = s.permissions.create(request={
"description": "record.write can create new dns records for our domains.",
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -46,7 +46,7 @@ if res is not None:
### Response
-**[models.CreatePermissionResponseBody](../../models/createpermissionresponsebody.md)**
+**[models.CreatePermissionResponse](../../models/createpermissionresponse.md)**
### Errors
@@ -77,7 +77,7 @@ res = s.permissions.delete(request={
"permission_id": "perm_123",
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -92,7 +92,7 @@ if res is not None:
### Response
-**[models.DeletePermissionResponseBody](../../models/deletepermissionresponsebody.md)**
+**[models.DeletePermissionResponse](../../models/deletepermissionresponse.md)**
### Errors
@@ -121,7 +121,7 @@ s = Unkey(
res = s.permissions.get(permission_id="perm_123")
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -136,7 +136,7 @@ if res is not None:
### Response
-**[models.GetPermissionResponseBody](../../models/getpermissionresponsebody.md)**
+**[models.GetPermissionResponse](../../models/getpermissionresponse.md)**
### Errors
@@ -165,7 +165,7 @@ s = Unkey(
res = s.permissions.list()
-if res is not None:
+if res.response_bodies is not None:
# handle response
pass
@@ -179,7 +179,7 @@ if res is not None:
### Response
-**[List[models.ListPermissionsResponseBody]](../../models/.md)**
+**[models.ListPermissionsResponse](../../models/listpermissionsresponse.md)**
### Errors
@@ -211,7 +211,7 @@ res = s.permissions.create_role(request={
"description": "dns.records.manager can read and write dns records for our domains.",
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -226,7 +226,7 @@ if res is not None:
### Response
-**[models.CreateRoleResponseBody](../../models/createroleresponsebody.md)**
+**[models.CreateRoleResponse](../../models/createroleresponse.md)**
### Errors
@@ -257,7 +257,7 @@ res = s.permissions.delete_role(request={
"role_id": "role_123",
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -272,7 +272,7 @@ if res is not None:
### Response
-**[models.DeleteRoleResponseBody](../../models/deleteroleresponsebody.md)**
+**[models.DeleteRoleResponse](../../models/deleteroleresponse.md)**
### Errors
@@ -301,7 +301,7 @@ s = Unkey(
res = s.permissions.get_role(role_id="role_123")
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -316,7 +316,7 @@ if res is not None:
### Response
-**[models.GetRoleResponseBody](../../models/getroleresponsebody.md)**
+**[models.GetRoleResponse](../../models/getroleresponse.md)**
### Errors
@@ -345,7 +345,7 @@ s = Unkey(
res = s.permissions.list_roles()
-if res is not None:
+if res.response_bodies is not None:
# handle response
pass
@@ -359,7 +359,7 @@ if res is not None:
### Response
-**[List[models.ListRolesResponseBody]](../../models/.md)**
+**[models.ListRolesResponse](../../models/listrolesresponse.md)**
### Errors
diff --git a/docs/sdks/ratelimits/README.md b/docs/sdks/ratelimits/README.md
index e81b9d7..e8317ad 100644
--- a/docs/sdks/ratelimits/README.md
+++ b/docs/sdks/ratelimits/README.md
@@ -34,7 +34,7 @@ res = s.ratelimits.limit(request={
],
})
-if res is not None:
+if res.object is not None:
# handle response
pass
@@ -49,7 +49,7 @@ if res is not None:
### Response
-**[models.LimitResponseBody](../../models/limitresponsebody.md)**
+**[models.LimitResponse](../../models/limitresponse.md)**
### Errors
diff --git a/poetry.lock b/poetry.lock
new file mode 100644
index 0000000..2b38ecf
--- /dev/null
+++ b/poetry.lock
@@ -0,0 +1,551 @@
+# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand.
+
+[[package]]
+name = "annotated-types"
+version = "0.7.0"
+description = "Reusable constraint types to use with typing.Annotated"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53"},
+ {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"},
+]
+
+[package.dependencies]
+typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.9\""}
+
+[[package]]
+name = "anyio"
+version = "4.5.2"
+description = "High level compatibility layer for multiple asynchronous event loop implementations"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "anyio-4.5.2-py3-none-any.whl", hash = "sha256:c011ee36bc1e8ba40e5a81cb9df91925c218fe9b778554e0b56a21e1b5d4716f"},
+ {file = "anyio-4.5.2.tar.gz", hash = "sha256:23009af4ed04ce05991845451e11ef02fc7c5ed29179ac9a420e5ad0ac7ddc5b"},
+]
+
+[package.dependencies]
+exceptiongroup = {version = ">=1.0.2", markers = "python_version < \"3.11\""}
+idna = ">=2.8"
+sniffio = ">=1.1"
+typing-extensions = {version = ">=4.1", markers = "python_version < \"3.11\""}
+
+[package.extras]
+doc = ["Sphinx (>=7.4,<8.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"]
+test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21.0b1)"]
+trio = ["trio (>=0.26.1)"]
+
+[[package]]
+name = "astroid"
+version = "3.2.4"
+description = "An abstract syntax tree for Python with inference support."
+optional = false
+python-versions = ">=3.8.0"
+files = [
+ {file = "astroid-3.2.4-py3-none-any.whl", hash = "sha256:413658a61eeca6202a59231abb473f932038fbcbf1666587f66d482083413a25"},
+ {file = "astroid-3.2.4.tar.gz", hash = "sha256:0e14202810b30da1b735827f78f5157be2bbd4a7a59b7707ca0bfc2fb4c0063a"},
+]
+
+[package.dependencies]
+typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""}
+
+[[package]]
+name = "certifi"
+version = "2024.8.30"
+description = "Python package for providing Mozilla's CA Bundle."
+optional = false
+python-versions = ">=3.6"
+files = [
+ {file = "certifi-2024.8.30-py3-none-any.whl", hash = "sha256:922820b53db7a7257ffbda3f597266d435245903d80737e34f8a45ff3e3230d8"},
+ {file = "certifi-2024.8.30.tar.gz", hash = "sha256:bec941d2aa8195e248a60b31ff9f0558284cf01a52591ceda73ea9afffd69fd9"},
+]
+
+[[package]]
+name = "colorama"
+version = "0.4.6"
+description = "Cross-platform colored terminal text."
+optional = false
+python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7"
+files = [
+ {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"},
+ {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"},
+]
+
+[[package]]
+name = "dill"
+version = "0.3.9"
+description = "serialize all of Python"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "dill-0.3.9-py3-none-any.whl", hash = "sha256:468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a"},
+ {file = "dill-0.3.9.tar.gz", hash = "sha256:81aa267dddf68cbfe8029c42ca9ec6a4ab3b22371d1c450abc54422577b4512c"},
+]
+
+[package.extras]
+graph = ["objgraph (>=1.7.2)"]
+profile = ["gprof2dot (>=2022.7.29)"]
+
+[[package]]
+name = "eval-type-backport"
+version = "0.2.0"
+description = "Like `typing._eval_type`, but lets older Python versions use newer typing features."
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "eval_type_backport-0.2.0-py3-none-any.whl", hash = "sha256:ac2f73d30d40c5a30a80b8739a789d6bb5e49fdffa66d7912667e2015d9c9933"},
+ {file = "eval_type_backport-0.2.0.tar.gz", hash = "sha256:68796cfbc7371ebf923f03bdf7bef415f3ec098aeced24e054b253a0e78f7b37"},
+]
+
+[package.extras]
+tests = ["pytest"]
+
+[[package]]
+name = "exceptiongroup"
+version = "1.2.2"
+description = "Backport of PEP 654 (exception groups)"
+optional = false
+python-versions = ">=3.7"
+files = [
+ {file = "exceptiongroup-1.2.2-py3-none-any.whl", hash = "sha256:3111b9d131c238bec2f8f516e123e14ba243563fb135d3fe885990585aa7795b"},
+ {file = "exceptiongroup-1.2.2.tar.gz", hash = "sha256:47c2edf7c6738fafb49fd34290706d1a1a2f4d1c6df275526b62cbb4aa5393cc"},
+]
+
+[package.extras]
+test = ["pytest (>=6)"]
+
+[[package]]
+name = "h11"
+version = "0.14.0"
+description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1"
+optional = false
+python-versions = ">=3.7"
+files = [
+ {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"},
+ {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"},
+]
+
+[[package]]
+name = "httpcore"
+version = "1.0.6"
+description = "A minimal low-level HTTP client."
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "httpcore-1.0.6-py3-none-any.whl", hash = "sha256:27b59625743b85577a8c0e10e55b50b5368a4f2cfe8cc7bcfa9cf00829c2682f"},
+ {file = "httpcore-1.0.6.tar.gz", hash = "sha256:73f6dbd6eb8c21bbf7ef8efad555481853f5f6acdeaff1edb0694289269ee17f"},
+]
+
+[package.dependencies]
+certifi = "*"
+h11 = ">=0.13,<0.15"
+
+[package.extras]
+asyncio = ["anyio (>=4.0,<5.0)"]
+http2 = ["h2 (>=3,<5)"]
+socks = ["socksio (==1.*)"]
+trio = ["trio (>=0.22.0,<1.0)"]
+
+[[package]]
+name = "httpx"
+version = "0.27.2"
+description = "The next generation HTTP client."
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "httpx-0.27.2-py3-none-any.whl", hash = "sha256:7bb2708e112d8fdd7829cd4243970f0c223274051cb35ee80c03301ee29a3df0"},
+ {file = "httpx-0.27.2.tar.gz", hash = "sha256:f7c2be1d2f3c3c3160d441802406b206c2b76f5947b11115e6df10c6c65e66c2"},
+]
+
+[package.dependencies]
+anyio = "*"
+certifi = "*"
+httpcore = "==1.*"
+idna = "*"
+sniffio = "*"
+
+[package.extras]
+brotli = ["brotli", "brotlicffi"]
+cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"]
+http2 = ["h2 (>=3,<5)"]
+socks = ["socksio (==1.*)"]
+zstd = ["zstandard (>=0.18.0)"]
+
+[[package]]
+name = "idna"
+version = "3.10"
+description = "Internationalized Domain Names in Applications (IDNA)"
+optional = false
+python-versions = ">=3.6"
+files = [
+ {file = "idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3"},
+ {file = "idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9"},
+]
+
+[package.extras]
+all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2)"]
+
+[[package]]
+name = "isort"
+version = "5.13.2"
+description = "A Python utility / library to sort Python imports."
+optional = false
+python-versions = ">=3.8.0"
+files = [
+ {file = "isort-5.13.2-py3-none-any.whl", hash = "sha256:8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"},
+ {file = "isort-5.13.2.tar.gz", hash = "sha256:48fdfcb9face5d58a4f6dde2e72a1fb8dcaf8ab26f95ab49fab84c2ddefb0109"},
+]
+
+[package.extras]
+colors = ["colorama (>=0.4.6)"]
+
+[[package]]
+name = "jsonpath-python"
+version = "1.0.6"
+description = "A more powerful JSONPath implementation in modern python"
+optional = false
+python-versions = ">=3.6"
+files = [
+ {file = "jsonpath-python-1.0.6.tar.gz", hash = "sha256:dd5be4a72d8a2995c3f583cf82bf3cd1a9544cfdabf2d22595b67aff07349666"},
+ {file = "jsonpath_python-1.0.6-py3-none-any.whl", hash = "sha256:1e3b78df579f5efc23565293612decee04214609208a2335884b3ee3f786b575"},
+]
+
+[[package]]
+name = "mccabe"
+version = "0.7.0"
+description = "McCabe checker, plugin for flake8"
+optional = false
+python-versions = ">=3.6"
+files = [
+ {file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"},
+ {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"},
+]
+
+[[package]]
+name = "mypy"
+version = "1.10.1"
+description = "Optional static typing for Python"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "mypy-1.10.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e36f229acfe250dc660790840916eb49726c928e8ce10fbdf90715090fe4ae02"},
+ {file = "mypy-1.10.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:51a46974340baaa4145363b9e051812a2446cf583dfaeba124af966fa44593f7"},
+ {file = "mypy-1.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:901c89c2d67bba57aaaca91ccdb659aa3a312de67f23b9dfb059727cce2e2e0a"},
+ {file = "mypy-1.10.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0cd62192a4a32b77ceb31272d9e74d23cd88c8060c34d1d3622db3267679a5d9"},
+ {file = "mypy-1.10.1-cp310-cp310-win_amd64.whl", hash = "sha256:a2cbc68cb9e943ac0814c13e2452d2046c2f2b23ff0278e26599224cf164e78d"},
+ {file = "mypy-1.10.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:bd6f629b67bb43dc0d9211ee98b96d8dabc97b1ad38b9b25f5e4c4d7569a0c6a"},
+ {file = "mypy-1.10.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a1bbb3a6f5ff319d2b9d40b4080d46cd639abe3516d5a62c070cf0114a457d84"},
+ {file = "mypy-1.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8edd4e9bbbc9d7b79502eb9592cab808585516ae1bcc1446eb9122656c6066f"},
+ {file = "mypy-1.10.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:6166a88b15f1759f94a46fa474c7b1b05d134b1b61fca627dd7335454cc9aa6b"},
+ {file = "mypy-1.10.1-cp311-cp311-win_amd64.whl", hash = "sha256:5bb9cd11c01c8606a9d0b83ffa91d0b236a0e91bc4126d9ba9ce62906ada868e"},
+ {file = "mypy-1.10.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d8681909f7b44d0b7b86e653ca152d6dff0eb5eb41694e163c6092124f8246d7"},
+ {file = "mypy-1.10.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:378c03f53f10bbdd55ca94e46ec3ba255279706a6aacaecac52ad248f98205d3"},
+ {file = "mypy-1.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6bacf8f3a3d7d849f40ca6caea5c055122efe70e81480c8328ad29c55c69e93e"},
+ {file = "mypy-1.10.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:701b5f71413f1e9855566a34d6e9d12624e9e0a8818a5704d74d6b0402e66c04"},
+ {file = "mypy-1.10.1-cp312-cp312-win_amd64.whl", hash = "sha256:3c4c2992f6ea46ff7fce0072642cfb62af7a2484efe69017ed8b095f7b39ef31"},
+ {file = "mypy-1.10.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:604282c886497645ffb87b8f35a57ec773a4a2721161e709a4422c1636ddde5c"},
+ {file = "mypy-1.10.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37fd87cab83f09842653f08de066ee68f1182b9b5282e4634cdb4b407266bade"},
+ {file = "mypy-1.10.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8addf6313777dbb92e9564c5d32ec122bf2c6c39d683ea64de6a1fd98b90fe37"},
+ {file = "mypy-1.10.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5cc3ca0a244eb9a5249c7c583ad9a7e881aa5d7b73c35652296ddcdb33b2b9c7"},
+ {file = "mypy-1.10.1-cp38-cp38-win_amd64.whl", hash = "sha256:1b3a2ffce52cc4dbaeee4df762f20a2905aa171ef157b82192f2e2f368eec05d"},
+ {file = "mypy-1.10.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:fe85ed6836165d52ae8b88f99527d3d1b2362e0cb90b005409b8bed90e9059b3"},
+ {file = "mypy-1.10.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c2ae450d60d7d020d67ab440c6e3fae375809988119817214440033f26ddf7bf"},
+ {file = "mypy-1.10.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6be84c06e6abd72f960ba9a71561c14137a583093ffcf9bbfaf5e613d63fa531"},
+ {file = "mypy-1.10.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2189ff1e39db399f08205e22a797383613ce1cb0cb3b13d8bcf0170e45b96cc3"},
+ {file = "mypy-1.10.1-cp39-cp39-win_amd64.whl", hash = "sha256:97a131ee36ac37ce9581f4220311247ab6cba896b4395b9c87af0675a13a755f"},
+ {file = "mypy-1.10.1-py3-none-any.whl", hash = "sha256:71d8ac0b906354ebda8ef1673e5fde785936ac1f29ff6987c7483cfbd5a4235a"},
+ {file = "mypy-1.10.1.tar.gz", hash = "sha256:1f8f492d7db9e3593ef42d4f115f04e556130f2819ad33ab84551403e97dd4c0"},
+]
+
+[package.dependencies]
+mypy-extensions = ">=1.0.0"
+tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""}
+typing-extensions = ">=4.1.0"
+
+[package.extras]
+dmypy = ["psutil (>=4.0)"]
+install-types = ["pip"]
+mypyc = ["setuptools (>=50)"]
+reports = ["lxml"]
+
+[[package]]
+name = "mypy-extensions"
+version = "1.0.0"
+description = "Type system extensions for programs checked with the mypy type checker."
+optional = false
+python-versions = ">=3.5"
+files = [
+ {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"},
+ {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"},
+]
+
+[[package]]
+name = "platformdirs"
+version = "4.3.6"
+description = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`."
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "platformdirs-4.3.6-py3-none-any.whl", hash = "sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb"},
+ {file = "platformdirs-4.3.6.tar.gz", hash = "sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907"},
+]
+
+[package.extras]
+docs = ["furo (>=2024.8.6)", "proselint (>=0.14)", "sphinx (>=8.0.2)", "sphinx-autodoc-typehints (>=2.4)"]
+test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=8.3.2)", "pytest-cov (>=5)", "pytest-mock (>=3.14)"]
+type = ["mypy (>=1.11.2)"]
+
+[[package]]
+name = "pydantic"
+version = "2.9.2"
+description = "Data validation using Python type hints"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "pydantic-2.9.2-py3-none-any.whl", hash = "sha256:f048cec7b26778210e28a0459867920654d48e5e62db0958433636cde4254f12"},
+ {file = "pydantic-2.9.2.tar.gz", hash = "sha256:d155cef71265d1e9807ed1c32b4c8deec042a44a50a4188b25ac67ecd81a9c0f"},
+]
+
+[package.dependencies]
+annotated-types = ">=0.6.0"
+pydantic-core = "2.23.4"
+typing-extensions = [
+ {version = ">=4.6.1", markers = "python_version < \"3.13\""},
+ {version = ">=4.12.2", markers = "python_version >= \"3.13\""},
+]
+
+[package.extras]
+email = ["email-validator (>=2.0.0)"]
+timezone = ["tzdata"]
+
+[[package]]
+name = "pydantic-core"
+version = "2.23.4"
+description = "Core functionality for Pydantic validation and serialization"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "pydantic_core-2.23.4-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:b10bd51f823d891193d4717448fab065733958bdb6a6b351967bd349d48d5c9b"},
+ {file = "pydantic_core-2.23.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4fc714bdbfb534f94034efaa6eadd74e5b93c8fa6315565a222f7b6f42ca1166"},
+ {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63e46b3169866bd62849936de036f901a9356e36376079b05efa83caeaa02ceb"},
+ {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed1a53de42fbe34853ba90513cea21673481cd81ed1be739f7f2efb931b24916"},
+ {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cfdd16ab5e59fc31b5e906d1a3f666571abc367598e3e02c83403acabc092e07"},
+ {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:255a8ef062cbf6674450e668482456abac99a5583bbafb73f9ad469540a3a232"},
+ {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a7cd62e831afe623fbb7aabbb4fe583212115b3ef38a9f6b71869ba644624a2"},
+ {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f09e2ff1f17c2b51f2bc76d1cc33da96298f0a036a137f5440ab3ec5360b624f"},
+ {file = "pydantic_core-2.23.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e38e63e6f3d1cec5a27e0afe90a085af8b6806ee208b33030e65b6516353f1a3"},
+ {file = "pydantic_core-2.23.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0dbd8dbed2085ed23b5c04afa29d8fd2771674223135dc9bc937f3c09284d071"},
+ {file = "pydantic_core-2.23.4-cp310-none-win32.whl", hash = "sha256:6531b7ca5f951d663c339002e91aaebda765ec7d61b7d1e3991051906ddde119"},
+ {file = "pydantic_core-2.23.4-cp310-none-win_amd64.whl", hash = "sha256:7c9129eb40958b3d4500fa2467e6a83356b3b61bfff1b414c7361d9220f9ae8f"},
+ {file = "pydantic_core-2.23.4-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:77733e3892bb0a7fa797826361ce8a9184d25c8dffaec60b7ffe928153680ba8"},
+ {file = "pydantic_core-2.23.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b84d168f6c48fabd1f2027a3d1bdfe62f92cade1fb273a5d68e621da0e44e6d"},
+ {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df49e7a0861a8c36d089c1ed57d308623d60416dab2647a4a17fe050ba85de0e"},
+ {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ff02b6d461a6de369f07ec15e465a88895f3223eb75073ffea56b84d9331f607"},
+ {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:996a38a83508c54c78a5f41456b0103c30508fed9abcad0a59b876d7398f25fd"},
+ {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d97683ddee4723ae8c95d1eddac7c192e8c552da0c73a925a89fa8649bf13eea"},
+ {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:216f9b2d7713eb98cb83c80b9c794de1f6b7e3145eef40400c62e86cee5f4e1e"},
+ {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6f783e0ec4803c787bcea93e13e9932edab72068f68ecffdf86a99fd5918878b"},
+ {file = "pydantic_core-2.23.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d0776dea117cf5272382634bd2a5c1b6eb16767c223c6a5317cd3e2a757c61a0"},
+ {file = "pydantic_core-2.23.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d5f7a395a8cf1621939692dba2a6b6a830efa6b3cee787d82c7de1ad2930de64"},
+ {file = "pydantic_core-2.23.4-cp311-none-win32.whl", hash = "sha256:74b9127ffea03643e998e0c5ad9bd3811d3dac8c676e47db17b0ee7c3c3bf35f"},
+ {file = "pydantic_core-2.23.4-cp311-none-win_amd64.whl", hash = "sha256:98d134c954828488b153d88ba1f34e14259284f256180ce659e8d83e9c05eaa3"},
+ {file = "pydantic_core-2.23.4-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:f3e0da4ebaef65158d4dfd7d3678aad692f7666877df0002b8a522cdf088f231"},
+ {file = "pydantic_core-2.23.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f69a8e0b033b747bb3e36a44e7732f0c99f7edd5cea723d45bc0d6e95377ffee"},
+ {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:723314c1d51722ab28bfcd5240d858512ffd3116449c557a1336cbe3919beb87"},
+ {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bb2802e667b7051a1bebbfe93684841cc9351004e2badbd6411bf357ab8d5ac8"},
+ {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d18ca8148bebe1b0a382a27a8ee60350091a6ddaf475fa05ef50dc35b5df6327"},
+ {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33e3d65a85a2a4a0dc3b092b938a4062b1a05f3a9abde65ea93b233bca0e03f2"},
+ {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:128585782e5bfa515c590ccee4b727fb76925dd04a98864182b22e89a4e6ed36"},
+ {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:68665f4c17edcceecc112dfed5dbe6f92261fb9d6054b47d01bf6371a6196126"},
+ {file = "pydantic_core-2.23.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:20152074317d9bed6b7a95ade3b7d6054845d70584216160860425f4fbd5ee9e"},
+ {file = "pydantic_core-2.23.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:9261d3ce84fa1d38ed649c3638feefeae23d32ba9182963e465d58d62203bd24"},
+ {file = "pydantic_core-2.23.4-cp312-none-win32.whl", hash = "sha256:4ba762ed58e8d68657fc1281e9bb72e1c3e79cc5d464be146e260c541ec12d84"},
+ {file = "pydantic_core-2.23.4-cp312-none-win_amd64.whl", hash = "sha256:97df63000f4fea395b2824da80e169731088656d1818a11b95f3b173747b6cd9"},
+ {file = "pydantic_core-2.23.4-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:7530e201d10d7d14abce4fb54cfe5b94a0aefc87da539d0346a484ead376c3cc"},
+ {file = "pydantic_core-2.23.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:df933278128ea1cd77772673c73954e53a1c95a4fdf41eef97c2b779271bd0bd"},
+ {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cb3da3fd1b6a5d0279a01877713dbda118a2a4fc6f0d821a57da2e464793f05"},
+ {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:42c6dcb030aefb668a2b7009c85b27f90e51e6a3b4d5c9bc4c57631292015b0d"},
+ {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:696dd8d674d6ce621ab9d45b205df149399e4bb9aa34102c970b721554828510"},
+ {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2971bb5ffe72cc0f555c13e19b23c85b654dd2a8f7ab493c262071377bfce9f6"},
+ {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8394d940e5d400d04cad4f75c0598665cbb81aecefaca82ca85bd28264af7f9b"},
+ {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0dff76e0602ca7d4cdaacc1ac4c005e0ce0dcfe095d5b5259163a80d3a10d327"},
+ {file = "pydantic_core-2.23.4-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:7d32706badfe136888bdea71c0def994644e09fff0bfe47441deaed8e96fdbc6"},
+ {file = "pydantic_core-2.23.4-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ed541d70698978a20eb63d8c5d72f2cc6d7079d9d90f6b50bad07826f1320f5f"},
+ {file = "pydantic_core-2.23.4-cp313-none-win32.whl", hash = "sha256:3d5639516376dce1940ea36edf408c554475369f5da2abd45d44621cb616f769"},
+ {file = "pydantic_core-2.23.4-cp313-none-win_amd64.whl", hash = "sha256:5a1504ad17ba4210df3a045132a7baeeba5a200e930f57512ee02909fc5c4cb5"},
+ {file = "pydantic_core-2.23.4-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:d4488a93b071c04dc20f5cecc3631fc78b9789dd72483ba15d423b5b3689b555"},
+ {file = "pydantic_core-2.23.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:81965a16b675b35e1d09dd14df53f190f9129c0202356ed44ab2728b1c905658"},
+ {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ffa2ebd4c8530079140dd2d7f794a9d9a73cbb8e9d59ffe24c63436efa8f271"},
+ {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:61817945f2fe7d166e75fbfb28004034b48e44878177fc54d81688e7b85a3665"},
+ {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:29d2c342c4bc01b88402d60189f3df065fb0dda3654744d5a165a5288a657368"},
+ {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5e11661ce0fd30a6790e8bcdf263b9ec5988e95e63cf901972107efc49218b13"},
+ {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d18368b137c6295db49ce7218b1a9ba15c5bc254c96d7c9f9e924a9bc7825ad"},
+ {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ec4e55f79b1c4ffb2eecd8a0cfba9955a2588497d96851f4c8f99aa4a1d39b12"},
+ {file = "pydantic_core-2.23.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:374a5e5049eda9e0a44c696c7ade3ff355f06b1fe0bb945ea3cac2bc336478a2"},
+ {file = "pydantic_core-2.23.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5c364564d17da23db1106787675fc7af45f2f7b58b4173bfdd105564e132e6fb"},
+ {file = "pydantic_core-2.23.4-cp38-none-win32.whl", hash = "sha256:d7a80d21d613eec45e3d41eb22f8f94ddc758a6c4720842dc74c0581f54993d6"},
+ {file = "pydantic_core-2.23.4-cp38-none-win_amd64.whl", hash = "sha256:5f5ff8d839f4566a474a969508fe1c5e59c31c80d9e140566f9a37bba7b8d556"},
+ {file = "pydantic_core-2.23.4-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:a4fa4fc04dff799089689f4fd502ce7d59de529fc2f40a2c8836886c03e0175a"},
+ {file = "pydantic_core-2.23.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0a7df63886be5e270da67e0966cf4afbae86069501d35c8c1b3b6c168f42cb36"},
+ {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dcedcd19a557e182628afa1d553c3895a9f825b936415d0dbd3cd0bbcfd29b4b"},
+ {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5f54b118ce5de9ac21c363d9b3caa6c800341e8c47a508787e5868c6b79c9323"},
+ {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:86d2f57d3e1379a9525c5ab067b27dbb8a0642fb5d454e17a9ac434f9ce523e3"},
+ {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:de6d1d1b9e5101508cb37ab0d972357cac5235f5c6533d1071964c47139257df"},
+ {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1278e0d324f6908e872730c9102b0112477a7f7cf88b308e4fc36ce1bdb6d58c"},
+ {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9a6b5099eeec78827553827f4c6b8615978bb4b6a88e5d9b93eddf8bb6790f55"},
+ {file = "pydantic_core-2.23.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:e55541f756f9b3ee346b840103f32779c695a19826a4c442b7954550a0972040"},
+ {file = "pydantic_core-2.23.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a5c7ba8ffb6d6f8f2ab08743be203654bb1aaa8c9dcb09f82ddd34eadb695605"},
+ {file = "pydantic_core-2.23.4-cp39-none-win32.whl", hash = "sha256:37b0fe330e4a58d3c58b24d91d1eb102aeec675a3db4c292ec3928ecd892a9a6"},
+ {file = "pydantic_core-2.23.4-cp39-none-win_amd64.whl", hash = "sha256:1498bec4c05c9c787bde9125cfdcc63a41004ff167f495063191b863399b1a29"},
+ {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:f455ee30a9d61d3e1a15abd5068827773d6e4dc513e795f380cdd59932c782d5"},
+ {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:1e90d2e3bd2c3863d48525d297cd143fe541be8bbf6f579504b9712cb6b643ec"},
+ {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2e203fdf807ac7e12ab59ca2bfcabb38c7cf0b33c41efeb00f8e5da1d86af480"},
+ {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e08277a400de01bc72436a0ccd02bdf596631411f592ad985dcee21445bd0068"},
+ {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f220b0eea5965dec25480b6333c788fb72ce5f9129e8759ef876a1d805d00801"},
+ {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:d06b0c8da4f16d1d1e352134427cb194a0a6e19ad5db9161bf32b2113409e728"},
+ {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:ba1a0996f6c2773bd83e63f18914c1de3c9dd26d55f4ac302a7efe93fb8e7433"},
+ {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:9a5bce9d23aac8f0cf0836ecfc033896aa8443b501c58d0602dbfd5bd5b37753"},
+ {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:78ddaaa81421a29574a682b3179d4cf9e6d405a09b99d93ddcf7e5239c742e21"},
+ {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:883a91b5dd7d26492ff2f04f40fbb652de40fcc0afe07e8129e8ae779c2110eb"},
+ {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88ad334a15b32a791ea935af224b9de1bf99bcd62fabf745d5f3442199d86d59"},
+ {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:233710f069d251feb12a56da21e14cca67994eab08362207785cf8c598e74577"},
+ {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:19442362866a753485ba5e4be408964644dd6a09123d9416c54cd49171f50744"},
+ {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:624e278a7d29b6445e4e813af92af37820fafb6dcc55c012c834f9e26f9aaaef"},
+ {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f5ef8f42bec47f21d07668a043f077d507e5bf4e668d5c6dfe6aaba89de1a5b8"},
+ {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:aea443fffa9fbe3af1a9ba721a87f926fe548d32cab71d188a6ede77d0ff244e"},
+ {file = "pydantic_core-2.23.4.tar.gz", hash = "sha256:2584f7cf844ac4d970fba483a717dbe10c1c1c96a969bf65d61ffe94df1b2863"},
+]
+
+[package.dependencies]
+typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0"
+
+[[package]]
+name = "pylint"
+version = "3.2.3"
+description = "python code static checker"
+optional = false
+python-versions = ">=3.8.0"
+files = [
+ {file = "pylint-3.2.3-py3-none-any.whl", hash = "sha256:b3d7d2708a3e04b4679e02d99e72329a8b7ee8afb8d04110682278781f889fa8"},
+ {file = "pylint-3.2.3.tar.gz", hash = "sha256:02f6c562b215582386068d52a30f520d84fdbcf2a95fc7e855b816060d048b60"},
+]
+
+[package.dependencies]
+astroid = ">=3.2.2,<=3.3.0-dev0"
+colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""}
+dill = [
+ {version = ">=0.2", markers = "python_version < \"3.11\""},
+ {version = ">=0.3.7", markers = "python_version >= \"3.12\""},
+ {version = ">=0.3.6", markers = "python_version >= \"3.11\" and python_version < \"3.12\""},
+]
+isort = ">=4.2.5,<5.13.0 || >5.13.0,<6"
+mccabe = ">=0.6,<0.8"
+platformdirs = ">=2.2.0"
+tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""}
+tomlkit = ">=0.10.1"
+typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""}
+
+[package.extras]
+spelling = ["pyenchant (>=3.2,<4.0)"]
+testutils = ["gitpython (>3)"]
+
+[[package]]
+name = "python-dateutil"
+version = "2.8.2"
+description = "Extensions to the standard Python datetime module"
+optional = false
+python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7"
+files = [
+ {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"},
+ {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"},
+]
+
+[package.dependencies]
+six = ">=1.5"
+
+[[package]]
+name = "six"
+version = "1.16.0"
+description = "Python 2 and 3 compatibility utilities"
+optional = false
+python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"
+files = [
+ {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"},
+ {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"},
+]
+
+[[package]]
+name = "sniffio"
+version = "1.3.1"
+description = "Sniff out which async library your code is running under"
+optional = false
+python-versions = ">=3.7"
+files = [
+ {file = "sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2"},
+ {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"},
+]
+
+[[package]]
+name = "tomli"
+version = "2.0.2"
+description = "A lil' TOML parser"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "tomli-2.0.2-py3-none-any.whl", hash = "sha256:2ebe24485c53d303f690b0ec092806a085f07af5a5aa1464f3931eec36caaa38"},
+ {file = "tomli-2.0.2.tar.gz", hash = "sha256:d46d457a85337051c36524bc5349dd91b1877838e2979ac5ced3e710ed8a60ed"},
+]
+
+[[package]]
+name = "tomlkit"
+version = "0.13.2"
+description = "Style preserving TOML library"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "tomlkit-0.13.2-py3-none-any.whl", hash = "sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde"},
+ {file = "tomlkit-0.13.2.tar.gz", hash = "sha256:fff5fe59a87295b278abd31bec92c15d9bc4a06885ab12bcea52c71119392e79"},
+]
+
+[[package]]
+name = "types-python-dateutil"
+version = "2.9.0.20241003"
+description = "Typing stubs for python-dateutil"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "types-python-dateutil-2.9.0.20241003.tar.gz", hash = "sha256:58cb85449b2a56d6684e41aeefb4c4280631246a0da1a719bdbe6f3fb0317446"},
+ {file = "types_python_dateutil-2.9.0.20241003-py3-none-any.whl", hash = "sha256:250e1d8e80e7bbc3a6c99b907762711d1a1cdd00e978ad39cb5940f6f0a87f3d"},
+]
+
+[[package]]
+name = "typing-extensions"
+version = "4.12.2"
+description = "Backported and Experimental Type Hints for Python 3.8+"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"},
+ {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"},
+]
+
+[[package]]
+name = "typing-inspect"
+version = "0.9.0"
+description = "Runtime inspection utilities for typing module."
+optional = false
+python-versions = "*"
+files = [
+ {file = "typing_inspect-0.9.0-py3-none-any.whl", hash = "sha256:9ee6fc59062311ef8547596ab6b955e1b8aa46242d854bfc78f4f6b0eff35f9f"},
+ {file = "typing_inspect-0.9.0.tar.gz", hash = "sha256:b23fc42ff6f6ef6954e4852c1fb512cdd18dbea03134f91f856a95ccc9461f78"},
+]
+
+[package.dependencies]
+mypy-extensions = ">=0.3.0"
+typing-extensions = ">=3.7.4"
+
+[metadata]
+lock-version = "2.0"
+python-versions = "^3.8"
+content-hash = "6bb5f77afb8fcbe7327ccd1fcc33f5c279c6a2582d43be73b69c2a94b836b85d"
diff --git a/pyproject.toml b/pyproject.toml
index dbb6e74..da44a2f 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,9 +1,10 @@
[tool.poetry]
name = "unkey"
-version = "0.1.0"
+version = "0.1.1"
description = "Python Client SDK Generated by Speakeasy."
authors = ["Speakeasy",]
readme = "README-PYPI.md"
+repository = "https://github.com/unkeyed/unkey-py.git"
packages = [
{ include = "unkey", from = "src" }
]
diff --git a/scripts/prepare-readme.py b/scripts/prepare-readme.py
index 825d9de..9916449 100644
--- a/scripts/prepare-readme.py
+++ b/scripts/prepare-readme.py
@@ -1,9 +1,33 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
+import re
import shutil
try:
- shutil.copyfile("README.md", "README-PYPI.md")
+ with open("README.md", "r") as rh:
+ readme_contents = rh.read()
+ GITHUB_URL = "https://github.com/unkeyed/unkey-py.git"
+ GITHUB_URL = (
+ GITHUB_URL[: -len(".git")] if GITHUB_URL.endswith(".git") else GITHUB_URL
+ )
+ # links on PyPI should have absolute URLs
+ readme_contents = re.sub(
+ r"(\[[^\]]+\]\()((?!https?:)[^\)]+)(\))",
+ lambda m: m.group(1)
+ + GITHUB_URL
+ + "/blob/master/"
+ + m.group(2)
+ + m.group(3),
+ readme_contents,
+ )
+
+ with open("README-PYPI.md", "w") as wh:
+ wh.write(readme_contents)
except Exception as e:
- print("Failed to copy README.md to README-PYPI.md")
- print(e)
+ try:
+ print("Failed to rewrite README.md to README-PYPI.md, copying original instead")
+ print(e)
+ shutil.copyfile("README.md", "README-PYPI.md")
+ except Exception as e:
+ print("Failed to copy README.md to README-PYPI.md")
+ print(e)
diff --git a/src/unkey/_version.py b/src/unkey/_version.py
index eaa850d..e1d26e6 100644
--- a/src/unkey/_version.py
+++ b/src/unkey/_version.py
@@ -3,7 +3,7 @@
import importlib.metadata
__title__: str = "unkey"
-__version__: str = "0.1.0"
+__version__: str = "0.1.1"
try:
if __package__ is not None:
diff --git a/src/unkey/apis.py b/src/unkey/apis.py
index 2d7e759..49c446a 100644
--- a/src/unkey/apis.py
+++ b/src/unkey/apis.py
@@ -16,7 +16,7 @@ def get(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.GetAPIResponseBody:
+ ) -> models.GetAPIResponse:
r"""
:param api_id:
:param retries: Override the default retry configuration for this method
@@ -87,7 +87,12 @@ def get(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.GetAPIResponseBody)
+ return models.GetAPIResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.GetAPIResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -133,7 +138,7 @@ async def get_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.GetAPIResponseBody:
+ ) -> models.GetAPIResponse:
r"""
:param api_id:
:param retries: Override the default retry configuration for this method
@@ -204,7 +209,12 @@ async def get_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.GetAPIResponseBody)
+ return models.GetAPIResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.GetAPIResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -252,7 +262,7 @@ def create(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.CreateAPIResponseBody:
+ ) -> models.CreateAPIResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -326,7 +336,12 @@ def create(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.CreateAPIResponseBody)
+ return models.CreateAPIResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.CreateAPIResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -374,7 +389,7 @@ async def create_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.CreateAPIResponseBody:
+ ) -> models.CreateAPIResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -448,7 +463,12 @@ async def create_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.CreateAPIResponseBody)
+ return models.CreateAPIResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.CreateAPIResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -494,7 +514,7 @@ def list_keys(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.ListKeysResponseBody:
+ ) -> models.ListKeysResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -565,7 +585,12 @@ def list_keys(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.ListKeysResponseBody)
+ return models.ListKeysResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.ListKeysResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -611,7 +636,7 @@ async def list_keys_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.ListKeysResponseBody:
+ ) -> models.ListKeysResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -682,7 +707,12 @@ async def list_keys_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.ListKeysResponseBody)
+ return models.ListKeysResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.ListKeysResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -730,7 +760,7 @@ def delete(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeleteAPIResponseBody:
+ ) -> models.DeleteAPIResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -804,7 +834,12 @@ def delete(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.DeleteAPIResponseBody)
+ return models.DeleteAPIResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeleteAPIResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -852,7 +887,7 @@ async def delete_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeleteAPIResponseBody:
+ ) -> models.DeleteAPIResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -926,7 +961,12 @@ async def delete_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.DeleteAPIResponseBody)
+ return models.DeleteAPIResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeleteAPIResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -974,7 +1014,7 @@ def delete_keys(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeleteKeysResponseBody:
+ ) -> models.DeleteKeysResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1048,7 +1088,12 @@ def delete_keys(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.DeleteKeysResponseBody)
+ return models.DeleteKeysResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeleteKeysResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1096,7 +1141,7 @@ async def delete_keys_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeleteKeysResponseBody:
+ ) -> models.DeleteKeysResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1170,7 +1215,12 @@ async def delete_keys_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.DeleteKeysResponseBody)
+ return models.DeleteKeysResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeleteKeysResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
diff --git a/src/unkey/identities.py b/src/unkey/identities.py
index 95028de..b889a09 100644
--- a/src/unkey/identities.py
+++ b/src/unkey/identities.py
@@ -19,7 +19,7 @@ def create(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.CreateIdentityResponseBody:
+ ) -> models.CreateIdentityResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -93,8 +93,11 @@ def create(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.CreateIdentityResponseBody
+ return models.CreateIdentityResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.CreateIdentityResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -143,7 +146,7 @@ async def create_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.CreateIdentityResponseBody:
+ ) -> models.CreateIdentityResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -217,8 +220,11 @@ async def create_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.CreateIdentityResponseBody
+ return models.CreateIdentityResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.CreateIdentityResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -266,7 +272,7 @@ def get(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.GetIdentityResponseBody:
+ ) -> models.GetIdentityResponse:
r"""
:param identity_id:
:param external_id:
@@ -339,7 +345,12 @@ def get(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.GetIdentityResponseBody)
+ return models.GetIdentityResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.GetIdentityResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -386,7 +397,7 @@ async def get_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.GetIdentityResponseBody:
+ ) -> models.GetIdentityResponse:
r"""
:param identity_id:
:param external_id:
@@ -459,7 +470,12 @@ async def get_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.GetIdentityResponseBody)
+ return models.GetIdentityResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.GetIdentityResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -598,9 +614,10 @@ def next_func() -> Optional[models.ListIdentitiesResponse]:
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
return models.ListIdentitiesResponse(
- result=utils.unmarshal_json(
- http_res.text, models.ListIdentitiesResponseBody
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.ListIdentitiesResponseBody]
),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
next=next_func,
)
if utils.match_response(http_res, "400", "application/json"):
@@ -741,9 +758,10 @@ def next_func() -> Optional[models.ListIdentitiesResponse]:
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
return models.ListIdentitiesResponse(
- result=utils.unmarshal_json(
- http_res.text, models.ListIdentitiesResponseBody
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.ListIdentitiesResponseBody]
),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
next=next_func,
)
if utils.match_response(http_res, "400", "application/json"):
@@ -793,7 +811,7 @@ def update(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.UpdateIdentityResponseBody:
+ ) -> models.UpdateIdentityResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -867,8 +885,11 @@ def update(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.UpdateIdentityResponseBody
+ return models.UpdateIdentityResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.UpdateIdentityResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -917,7 +938,7 @@ async def update_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.UpdateIdentityResponseBody:
+ ) -> models.UpdateIdentityResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -991,8 +1012,11 @@ async def update_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.UpdateIdentityResponseBody
+ return models.UpdateIdentityResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.UpdateIdentityResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -1041,7 +1065,7 @@ def delete(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeleteIdentityResponseBody:
+ ) -> models.DeleteIdentityResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1115,8 +1139,11 @@ def delete(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.DeleteIdentityResponseBody
+ return models.DeleteIdentityResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeleteIdentityResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -1165,7 +1192,7 @@ async def delete_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeleteIdentityResponseBody:
+ ) -> models.DeleteIdentityResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1239,8 +1266,11 @@ async def delete_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.DeleteIdentityResponseBody
+ return models.DeleteIdentityResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeleteIdentityResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
diff --git a/src/unkey/keys.py b/src/unkey/keys.py
index c3665d6..8606800 100644
--- a/src/unkey/keys.py
+++ b/src/unkey/keys.py
@@ -17,7 +17,7 @@ def get(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.Key:
+ ) -> models.GetKeyResponse:
r"""
:param key_id:
:param decrypt:
@@ -90,7 +90,10 @@ def get(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.Key)
+ return models.GetKeyResponse(
+ key=utils.unmarshal_json(http_res.text, Optional[models.Key]),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -137,7 +140,7 @@ async def get_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.Key:
+ ) -> models.GetKeyResponse:
r"""
:param key_id:
:param decrypt:
@@ -210,7 +213,10 @@ async def get_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.Key)
+ return models.GetKeyResponse(
+ key=utils.unmarshal_json(http_res.text, Optional[models.Key]),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -256,7 +262,7 @@ def whoami(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.WhoamiResponseBody:
+ ) -> models.WhoamiResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -330,7 +336,12 @@ def whoami(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.WhoamiResponseBody)
+ return models.WhoamiResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.WhoamiResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -376,7 +387,7 @@ async def whoami_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.WhoamiResponseBody:
+ ) -> models.WhoamiResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -450,7 +461,12 @@ async def whoami_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.WhoamiResponseBody)
+ return models.WhoamiResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.WhoamiResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -498,7 +514,7 @@ def delete(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeleteKeyResponseBody:
+ ) -> models.DeleteKeyResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -572,7 +588,12 @@ def delete(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.DeleteKeyResponseBody)
+ return models.DeleteKeyResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeleteKeyResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -620,7 +641,7 @@ async def delete_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeleteKeyResponseBody:
+ ) -> models.DeleteKeyResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -694,7 +715,12 @@ async def delete_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.DeleteKeyResponseBody)
+ return models.DeleteKeyResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeleteKeyResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -742,7 +768,7 @@ def create(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.CreateKeyResponseBody:
+ ) -> models.CreateKeyResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -816,7 +842,12 @@ def create(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.CreateKeyResponseBody)
+ return models.CreateKeyResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.CreateKeyResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -864,7 +895,7 @@ async def create_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.CreateKeyResponseBody:
+ ) -> models.CreateKeyResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -938,7 +969,12 @@ async def create_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.CreateKeyResponseBody)
+ return models.CreateKeyResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.CreateKeyResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -986,7 +1022,7 @@ def verify(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.V1KeysVerifyKeyResponse:
+ ) -> models.VerifyKeyResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1060,7 +1096,12 @@ def verify(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.V1KeysVerifyKeyResponse)
+ return models.VerifyKeyResponse(
+ v1_keys_verify_key_response=utils.unmarshal_json(
+ http_res.text, Optional[models.V1KeysVerifyKeyResponse]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1108,7 +1149,7 @@ async def verify_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.V1KeysVerifyKeyResponse:
+ ) -> models.VerifyKeyResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1182,7 +1223,12 @@ async def verify_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.V1KeysVerifyKeyResponse)
+ return models.VerifyKeyResponse(
+ v1_keys_verify_key_response=utils.unmarshal_json(
+ http_res.text, Optional[models.V1KeysVerifyKeyResponse]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1230,7 +1276,7 @@ def update(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.UpdateKeyResponseBody:
+ ) -> models.UpdateKeyResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1304,7 +1350,12 @@ def update(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.UpdateKeyResponseBody)
+ return models.UpdateKeyResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.UpdateKeyResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1352,7 +1403,7 @@ async def update_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.UpdateKeyResponseBody:
+ ) -> models.UpdateKeyResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1426,7 +1477,12 @@ async def update_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.UpdateKeyResponseBody)
+ return models.UpdateKeyResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.UpdateKeyResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1475,7 +1531,7 @@ def update_remaining(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.UpdateRemainingResponseBody:
+ ) -> models.UpdateRemainingResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1549,8 +1605,11 @@ def update_remaining(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.UpdateRemainingResponseBody
+ return models.UpdateRemainingResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.UpdateRemainingResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -1600,7 +1659,7 @@ async def update_remaining_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.UpdateRemainingResponseBody:
+ ) -> models.UpdateRemainingResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1674,8 +1733,11 @@ async def update_remaining_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.UpdateRemainingResponseBody
+ return models.UpdateRemainingResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.UpdateRemainingResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -1724,7 +1786,7 @@ def get_verifications(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.GetVerificationsResponseBody:
+ ) -> models.GetVerificationsResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1795,8 +1857,11 @@ def get_verifications(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.GetVerificationsResponseBody
+ return models.GetVerificationsResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.GetVerificationsResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -1845,7 +1910,7 @@ async def get_verifications_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.GetVerificationsResponseBody:
+ ) -> models.GetVerificationsResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1916,8 +1981,11 @@ async def get_verifications_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.GetVerificationsResponseBody
+ return models.GetVerificationsResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.GetVerificationsResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -1966,7 +2034,7 @@ def add_permissions(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.ResponseBody]:
+ ) -> models.AddPermissionsResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -2040,7 +2108,12 @@ def add_permissions(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, List[models.ResponseBody])
+ return models.AddPermissionsResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.ResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -2088,7 +2161,7 @@ async def add_permissions_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.ResponseBody]:
+ ) -> models.AddPermissionsResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -2162,7 +2235,12 @@ async def add_permissions_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, List[models.ResponseBody])
+ return models.AddPermissionsResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.ResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -2211,7 +2289,7 @@ def remove_permissions(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.RemovePermissionsResponseBody:
+ ) -> models.RemovePermissionsResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -2285,8 +2363,11 @@ def remove_permissions(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.RemovePermissionsResponseBody
+ return models.RemovePermissionsResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.RemovePermissionsResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -2336,7 +2417,7 @@ async def remove_permissions_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.RemovePermissionsResponseBody:
+ ) -> models.RemovePermissionsResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -2410,8 +2491,11 @@ async def remove_permissions_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.RemovePermissionsResponseBody
+ return models.RemovePermissionsResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.RemovePermissionsResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -2460,7 +2544,7 @@ def set_permissions(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.SetPermissionsResponseBody]:
+ ) -> models.SetPermissionsResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -2534,8 +2618,11 @@ def set_permissions(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, List[models.SetPermissionsResponseBody]
+ return models.SetPermissionsResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.SetPermissionsResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -2584,7 +2671,7 @@ async def set_permissions_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.SetPermissionsResponseBody]:
+ ) -> models.SetPermissionsResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -2658,8 +2745,11 @@ async def set_permissions_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, List[models.SetPermissionsResponseBody]
+ return models.SetPermissionsResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.SetPermissionsResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -2706,7 +2796,7 @@ def add_roles(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.AddRolesResponseBody]:
+ ) -> models.AddRolesResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -2780,8 +2870,11 @@ def add_roles(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, List[models.AddRolesResponseBody]
+ return models.AddRolesResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.AddRolesResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -2828,7 +2921,7 @@ async def add_roles_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.AddRolesResponseBody]:
+ ) -> models.AddRolesResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -2902,8 +2995,11 @@ async def add_roles_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, List[models.AddRolesResponseBody]
+ return models.AddRolesResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.AddRolesResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -2952,7 +3048,7 @@ def remove_roles(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.RemoveRolesResponseBody:
+ ) -> models.RemoveRolesResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -3026,7 +3122,12 @@ def remove_roles(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.RemoveRolesResponseBody)
+ return models.RemoveRolesResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.RemoveRolesResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -3074,7 +3175,7 @@ async def remove_roles_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.RemoveRolesResponseBody:
+ ) -> models.RemoveRolesResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -3148,7 +3249,12 @@ async def remove_roles_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.RemoveRolesResponseBody)
+ return models.RemoveRolesResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.RemoveRolesResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -3194,7 +3300,7 @@ def set_roles(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.SetRolesResponseBody]:
+ ) -> models.SetRolesResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -3268,8 +3374,11 @@ def set_roles(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, List[models.SetRolesResponseBody]
+ return models.SetRolesResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.SetRolesResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -3316,7 +3425,7 @@ async def set_roles_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.SetRolesResponseBody]:
+ ) -> models.SetRolesResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -3390,8 +3499,11 @@ async def set_roles_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, List[models.SetRolesResponseBody]
+ return models.SetRolesResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.SetRolesResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
diff --git a/src/unkey/liveness.py b/src/unkey/liveness.py
index 0aa6ae3..2908c2a 100644
--- a/src/unkey/liveness.py
+++ b/src/unkey/liveness.py
@@ -15,7 +15,7 @@ def check(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.V1LivenessResponseBody:
+ ) -> models.V1LivenessResponse:
r"""
:param retries: Override the default retry configuration for this method
:param server_url: Override the default server URL for this method
@@ -80,7 +80,12 @@ def check(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.V1LivenessResponseBody)
+ return models.V1LivenessResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.V1LivenessResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -125,7 +130,7 @@ async def check_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.V1LivenessResponseBody:
+ ) -> models.V1LivenessResponse:
r"""
:param retries: Override the default retry configuration for this method
:param server_url: Override the default server URL for this method
@@ -190,7 +195,12 @@ async def check_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.V1LivenessResponseBody)
+ return models.V1LivenessResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.V1LivenessResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
diff --git a/src/unkey/migrations.py b/src/unkey/migrations.py
index a4a622d..12ecbdf 100644
--- a/src/unkey/migrations.py
+++ b/src/unkey/migrations.py
@@ -16,7 +16,7 @@ def create_keys(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.V1MigrationsCreateKeysResponseBody:
+ ) -> models.V1MigrationsCreateKeysResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -90,8 +90,11 @@ def create_keys(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.V1MigrationsCreateKeysResponseBody
+ return models.V1MigrationsCreateKeysResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.V1MigrationsCreateKeysResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -138,7 +141,7 @@ async def create_keys_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.V1MigrationsCreateKeysResponseBody:
+ ) -> models.V1MigrationsCreateKeysResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -212,8 +215,11 @@ async def create_keys_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.V1MigrationsCreateKeysResponseBody
+ return models.V1MigrationsCreateKeysResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.V1MigrationsCreateKeysResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -263,7 +269,7 @@ def enqueue(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.V1MigrationsEnqueueKeysResponseBody:
+ ) -> models.V1MigrationsEnqueueKeysResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -339,8 +345,11 @@ def enqueue(
data: Any = None
if utils.match_response(http_res, "202", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.V1MigrationsEnqueueKeysResponseBody
+ return models.V1MigrationsEnqueueKeysResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.V1MigrationsEnqueueKeysResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -390,7 +399,7 @@ async def enqueue_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.V1MigrationsEnqueueKeysResponseBody:
+ ) -> models.V1MigrationsEnqueueKeysResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -466,8 +475,11 @@ async def enqueue_async(
data: Any = None
if utils.match_response(http_res, "202", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.V1MigrationsEnqueueKeysResponseBody
+ return models.V1MigrationsEnqueueKeysResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.V1MigrationsEnqueueKeysResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
diff --git a/src/unkey/models/__init__.py b/src/unkey/models/__init__.py
index 6b35642..32e575c 100644
--- a/src/unkey/models/__init__.py
+++ b/src/unkey/models/__init__.py
@@ -5,30 +5,38 @@
AddPermissionsPermissionsTypedDict,
AddPermissionsRequestBody,
AddPermissionsRequestBodyTypedDict,
+ AddPermissionsResponse,
+ AddPermissionsResponseTypedDict,
ResponseBody,
ResponseBodyTypedDict,
)
from .addrolesop import (
AddRolesRequestBody,
AddRolesRequestBodyTypedDict,
+ AddRolesResponse,
AddRolesResponseBody,
AddRolesResponseBodyTypedDict,
+ AddRolesResponseTypedDict,
AddRolesRoles,
AddRolesRolesTypedDict,
)
from .createapiop import (
CreateAPIRequestBody,
CreateAPIRequestBodyTypedDict,
+ CreateAPIResponse,
CreateAPIResponseBody,
CreateAPIResponseBodyTypedDict,
+ CreateAPIResponseTypedDict,
)
from .createidentityop import (
CreateIdentityRatelimits,
CreateIdentityRatelimitsTypedDict,
CreateIdentityRequestBody,
CreateIdentityRequestBodyTypedDict,
+ CreateIdentityResponse,
CreateIdentityResponseBody,
CreateIdentityResponseBodyTypedDict,
+ CreateIdentityResponseTypedDict,
)
from .createkeyop import (
CreateKeyInterval,
@@ -38,57 +46,75 @@
CreateKeyRefillTypedDict,
CreateKeyRequestBody,
CreateKeyRequestBodyTypedDict,
+ CreateKeyResponse,
CreateKeyResponseBody,
CreateKeyResponseBodyTypedDict,
+ CreateKeyResponseTypedDict,
CreateKeyType,
)
from .createpermissionop import (
CreatePermissionRequestBody,
CreatePermissionRequestBodyTypedDict,
+ CreatePermissionResponse,
CreatePermissionResponseBody,
CreatePermissionResponseBodyTypedDict,
+ CreatePermissionResponseTypedDict,
)
from .createroleop import (
CreateRoleRequestBody,
CreateRoleRequestBodyTypedDict,
+ CreateRoleResponse,
CreateRoleResponseBody,
CreateRoleResponseBodyTypedDict,
+ CreateRoleResponseTypedDict,
)
from .deleteapiop import (
DeleteAPIRequestBody,
DeleteAPIRequestBodyTypedDict,
+ DeleteAPIResponse,
DeleteAPIResponseBody,
DeleteAPIResponseBodyTypedDict,
+ DeleteAPIResponseTypedDict,
)
from .deleteidentityop import (
DeleteIdentityRequestBody,
DeleteIdentityRequestBodyTypedDict,
+ DeleteIdentityResponse,
DeleteIdentityResponseBody,
DeleteIdentityResponseBodyTypedDict,
+ DeleteIdentityResponseTypedDict,
)
from .deletekeyop import (
DeleteKeyRequestBody,
DeleteKeyRequestBodyTypedDict,
+ DeleteKeyResponse,
DeleteKeyResponseBody,
DeleteKeyResponseBodyTypedDict,
+ DeleteKeyResponseTypedDict,
)
from .deletekeysop import (
DeleteKeysRequestBody,
DeleteKeysRequestBodyTypedDict,
+ DeleteKeysResponse,
DeleteKeysResponseBody,
DeleteKeysResponseBodyTypedDict,
+ DeleteKeysResponseTypedDict,
)
from .deletepermissionop import (
DeletePermissionRequestBody,
DeletePermissionRequestBodyTypedDict,
+ DeletePermissionResponse,
DeletePermissionResponseBody,
DeletePermissionResponseBodyTypedDict,
+ DeletePermissionResponseTypedDict,
)
from .deleteroleop import (
DeleteRoleRequestBody,
DeleteRoleRequestBodyTypedDict,
+ DeleteRoleResponse,
DeleteRoleResponseBody,
DeleteRoleResponseBodyTypedDict,
+ DeleteRoleResponseTypedDict,
)
from .errbadrequest import (
ErrBadRequest,
@@ -149,39 +175,55 @@
from .getapiop import (
GetAPIRequest,
GetAPIRequestTypedDict,
+ GetAPIResponse,
GetAPIResponseBody,
GetAPIResponseBodyTypedDict,
+ GetAPIResponseTypedDict,
)
from .getidentityop import (
GetIdentityRatelimits,
GetIdentityRatelimitsTypedDict,
GetIdentityRequest,
GetIdentityRequestTypedDict,
+ GetIdentityResponse,
GetIdentityResponseBody,
GetIdentityResponseBodyTypedDict,
+ GetIdentityResponseTypedDict,
+)
+from .getkeyop import (
+ GetKeyRequest,
+ GetKeyRequestTypedDict,
+ GetKeyResponse,
+ GetKeyResponseTypedDict,
)
-from .getkeyop import GetKeyRequest, GetKeyRequestTypedDict
from .getpermissionop import (
GetPermissionRequest,
GetPermissionRequestTypedDict,
+ GetPermissionResponse,
GetPermissionResponseBody,
GetPermissionResponseBodyTypedDict,
+ GetPermissionResponseTypedDict,
)
from .getroleop import (
GetRoleRequest,
GetRoleRequestTypedDict,
+ GetRoleResponse,
GetRoleResponseBody,
GetRoleResponseBodyTypedDict,
+ GetRoleResponseTypedDict,
)
from .getverificationsop import (
GetVerificationsRequest,
GetVerificationsRequestTypedDict,
+ GetVerificationsResponse,
GetVerificationsResponseBody,
GetVerificationsResponseBodyTypedDict,
+ GetVerificationsResponseTypedDict,
Granularity,
Verifications,
VerificationsTypedDict,
)
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
from .key import (
Identity,
IdentityTypedDict,
@@ -197,8 +239,10 @@
from .limitop import (
LimitRequestBody,
LimitRequestBodyTypedDict,
+ LimitResponse,
LimitResponseBody,
LimitResponseBodyTypedDict,
+ LimitResponseTypedDict,
Resources,
ResourcesTypedDict,
)
@@ -217,14 +261,23 @@
from .listkeysop import (
ListKeysRequest,
ListKeysRequestTypedDict,
+ ListKeysResponse,
ListKeysResponseBody,
ListKeysResponseBodyTypedDict,
+ ListKeysResponseTypedDict,
)
from .listpermissionsop import (
+ ListPermissionsResponse,
ListPermissionsResponseBody,
ListPermissionsResponseBodyTypedDict,
+ ListPermissionsResponseTypedDict,
+)
+from .listrolesop import (
+ ListRolesResponse,
+ ListRolesResponseBody,
+ ListRolesResponseBodyTypedDict,
+ ListRolesResponseTypedDict,
)
-from .listrolesop import ListRolesResponseBody, ListRolesResponseBodyTypedDict
from .permissionquery import (
And,
AndTypedDict,
@@ -238,14 +291,18 @@
RemovePermissionsPermissionsTypedDict,
RemovePermissionsRequestBody,
RemovePermissionsRequestBodyTypedDict,
+ RemovePermissionsResponse,
RemovePermissionsResponseBody,
RemovePermissionsResponseBodyTypedDict,
+ RemovePermissionsResponseTypedDict,
)
from .removerolesop import (
RemoveRolesRequestBody,
RemoveRolesRequestBodyTypedDict,
+ RemoveRolesResponse,
RemoveRolesResponseBody,
RemoveRolesResponseBodyTypedDict,
+ RemoveRolesResponseTypedDict,
RemoveRolesRoles,
RemoveRolesRolesTypedDict,
)
@@ -256,14 +313,18 @@
SetPermissionsPermissionsTypedDict,
SetPermissionsRequestBody,
SetPermissionsRequestBodyTypedDict,
+ SetPermissionsResponse,
SetPermissionsResponseBody,
SetPermissionsResponseBodyTypedDict,
+ SetPermissionsResponseTypedDict,
)
from .setrolesop import (
SetRolesRequestBody,
SetRolesRequestBodyTypedDict,
+ SetRolesResponse,
SetRolesResponseBody,
SetRolesResponseBodyTypedDict,
+ SetRolesResponseTypedDict,
SetRolesRoles,
SetRolesRolesTypedDict,
)
@@ -274,8 +335,10 @@
UpdateIdentityRatelimitsTypedDict,
UpdateIdentityRequestBody,
UpdateIdentityRequestBodyTypedDict,
+ UpdateIdentityResponse,
UpdateIdentityResponseBody,
UpdateIdentityResponseBodyTypedDict,
+ UpdateIdentityResponseTypedDict,
)
from .updatekeyop import (
Roles,
@@ -289,22 +352,28 @@
UpdateKeyRefillTypedDict,
UpdateKeyRequestBody,
UpdateKeyRequestBodyTypedDict,
+ UpdateKeyResponse,
UpdateKeyResponseBody,
UpdateKeyResponseBodyTypedDict,
+ UpdateKeyResponseTypedDict,
UpdateKeyType,
)
from .updateremainingop import (
Op,
UpdateRemainingRequestBody,
UpdateRemainingRequestBodyTypedDict,
+ UpdateRemainingResponse,
UpdateRemainingResponseBody,
UpdateRemainingResponseBodyTypedDict,
+ UpdateRemainingResponseTypedDict,
)
from .v1_livenessop import (
Services,
ServicesTypedDict,
+ V1LivenessResponse,
V1LivenessResponseBody,
V1LivenessResponseBodyTypedDict,
+ V1LivenessResponseTypedDict,
)
from .v1_migrations_createkeysop import (
Hash,
@@ -316,8 +385,10 @@
V1MigrationsCreateKeysRatelimitTypedDict,
V1MigrationsCreateKeysRefill,
V1MigrationsCreateKeysRefillTypedDict,
+ V1MigrationsCreateKeysResponse,
V1MigrationsCreateKeysResponseBody,
V1MigrationsCreateKeysResponseBodyTypedDict,
+ V1MigrationsCreateKeysResponseTypedDict,
V1MigrationsCreateKeysType,
Variant,
)
@@ -333,8 +404,10 @@
V1MigrationsEnqueueKeysRefillTypedDict,
V1MigrationsEnqueueKeysRequestBody,
V1MigrationsEnqueueKeysRequestBodyTypedDict,
+ V1MigrationsEnqueueKeysResponse,
V1MigrationsEnqueueKeysResponseBody,
V1MigrationsEnqueueKeysResponseBodyTypedDict,
+ V1MigrationsEnqueueKeysResponseTypedDict,
V1MigrationsEnqueueKeysType,
V1MigrationsEnqueueKeysVariant,
)
@@ -357,13 +430,16 @@
V1KeysVerifyKeyResponseRatelimitTypedDict,
V1KeysVerifyKeyResponseTypedDict,
)
+from .verifykeyop import VerifyKeyResponse, VerifyKeyResponseTypedDict
from .whoamiop import (
WhoamiIdentity,
WhoamiIdentityTypedDict,
WhoamiRequestBody,
WhoamiRequestBodyTypedDict,
+ WhoamiResponse,
WhoamiResponseBody,
WhoamiResponseBodyTypedDict,
+ WhoamiResponseTypedDict,
)
__all__ = [
@@ -371,10 +447,14 @@
"AddPermissionsPermissionsTypedDict",
"AddPermissionsRequestBody",
"AddPermissionsRequestBodyTypedDict",
+ "AddPermissionsResponse",
+ "AddPermissionsResponseTypedDict",
"AddRolesRequestBody",
"AddRolesRequestBodyTypedDict",
+ "AddRolesResponse",
"AddRolesResponseBody",
"AddRolesResponseBodyTypedDict",
+ "AddRolesResponseTypedDict",
"AddRolesRoles",
"AddRolesRolesTypedDict",
"And",
@@ -384,14 +464,18 @@
"Code",
"CreateAPIRequestBody",
"CreateAPIRequestBodyTypedDict",
+ "CreateAPIResponse",
"CreateAPIResponseBody",
"CreateAPIResponseBodyTypedDict",
+ "CreateAPIResponseTypedDict",
"CreateIdentityRatelimits",
"CreateIdentityRatelimitsTypedDict",
"CreateIdentityRequestBody",
"CreateIdentityRequestBodyTypedDict",
+ "CreateIdentityResponse",
"CreateIdentityResponseBody",
"CreateIdentityResponseBodyTypedDict",
+ "CreateIdentityResponseTypedDict",
"CreateKeyInterval",
"CreateKeyRatelimit",
"CreateKeyRatelimitTypedDict",
@@ -399,41 +483,59 @@
"CreateKeyRefillTypedDict",
"CreateKeyRequestBody",
"CreateKeyRequestBodyTypedDict",
+ "CreateKeyResponse",
"CreateKeyResponseBody",
"CreateKeyResponseBodyTypedDict",
+ "CreateKeyResponseTypedDict",
"CreateKeyType",
"CreatePermissionRequestBody",
"CreatePermissionRequestBodyTypedDict",
+ "CreatePermissionResponse",
"CreatePermissionResponseBody",
"CreatePermissionResponseBodyTypedDict",
+ "CreatePermissionResponseTypedDict",
"CreateRoleRequestBody",
"CreateRoleRequestBodyTypedDict",
+ "CreateRoleResponse",
"CreateRoleResponseBody",
"CreateRoleResponseBodyTypedDict",
+ "CreateRoleResponseTypedDict",
"DeleteAPIRequestBody",
"DeleteAPIRequestBodyTypedDict",
+ "DeleteAPIResponse",
"DeleteAPIResponseBody",
"DeleteAPIResponseBodyTypedDict",
+ "DeleteAPIResponseTypedDict",
"DeleteIdentityRequestBody",
"DeleteIdentityRequestBodyTypedDict",
+ "DeleteIdentityResponse",
"DeleteIdentityResponseBody",
"DeleteIdentityResponseBodyTypedDict",
+ "DeleteIdentityResponseTypedDict",
"DeleteKeyRequestBody",
"DeleteKeyRequestBodyTypedDict",
+ "DeleteKeyResponse",
"DeleteKeyResponseBody",
"DeleteKeyResponseBodyTypedDict",
+ "DeleteKeyResponseTypedDict",
"DeleteKeysRequestBody",
"DeleteKeysRequestBodyTypedDict",
+ "DeleteKeysResponse",
"DeleteKeysResponseBody",
"DeleteKeysResponseBodyTypedDict",
+ "DeleteKeysResponseTypedDict",
"DeletePermissionRequestBody",
"DeletePermissionRequestBodyTypedDict",
+ "DeletePermissionResponse",
"DeletePermissionResponseBody",
"DeletePermissionResponseBodyTypedDict",
+ "DeletePermissionResponseTypedDict",
"DeleteRoleRequestBody",
"DeleteRoleRequestBodyTypedDict",
+ "DeleteRoleResponse",
"DeleteRoleResponseBody",
"DeleteRoleResponseBodyTypedDict",
+ "DeleteRoleResponseTypedDict",
"ErrBadRequest",
"ErrBadRequestCode",
"ErrBadRequestData",
@@ -476,29 +578,43 @@
"ErrorTypedDict",
"GetAPIRequest",
"GetAPIRequestTypedDict",
+ "GetAPIResponse",
"GetAPIResponseBody",
"GetAPIResponseBodyTypedDict",
+ "GetAPIResponseTypedDict",
"GetIdentityRatelimits",
"GetIdentityRatelimitsTypedDict",
"GetIdentityRequest",
"GetIdentityRequestTypedDict",
+ "GetIdentityResponse",
"GetIdentityResponseBody",
"GetIdentityResponseBodyTypedDict",
+ "GetIdentityResponseTypedDict",
"GetKeyRequest",
"GetKeyRequestTypedDict",
+ "GetKeyResponse",
+ "GetKeyResponseTypedDict",
"GetPermissionRequest",
"GetPermissionRequestTypedDict",
+ "GetPermissionResponse",
"GetPermissionResponseBody",
"GetPermissionResponseBodyTypedDict",
+ "GetPermissionResponseTypedDict",
"GetRoleRequest",
"GetRoleRequestTypedDict",
+ "GetRoleResponse",
"GetRoleResponseBody",
"GetRoleResponseBodyTypedDict",
+ "GetRoleResponseTypedDict",
"GetVerificationsRequest",
"GetVerificationsRequestTypedDict",
+ "GetVerificationsResponse",
"GetVerificationsResponseBody",
"GetVerificationsResponseBodyTypedDict",
+ "GetVerificationsResponseTypedDict",
"Granularity",
+ "HTTPMetadata",
+ "HTTPMetadataTypedDict",
"Hash",
"HashTypedDict",
"Identity",
@@ -508,8 +624,10 @@
"KeyTypedDict",
"LimitRequestBody",
"LimitRequestBodyTypedDict",
+ "LimitResponse",
"LimitResponseBody",
"LimitResponseBodyTypedDict",
+ "LimitResponseTypedDict",
"ListIdentitiesIdentities",
"ListIdentitiesIdentitiesTypedDict",
"ListIdentitiesRatelimits",
@@ -522,12 +640,18 @@
"ListIdentitiesResponseTypedDict",
"ListKeysRequest",
"ListKeysRequestTypedDict",
+ "ListKeysResponse",
"ListKeysResponseBody",
"ListKeysResponseBodyTypedDict",
+ "ListKeysResponseTypedDict",
+ "ListPermissionsResponse",
"ListPermissionsResponseBody",
"ListPermissionsResponseBodyTypedDict",
+ "ListPermissionsResponseTypedDict",
+ "ListRolesResponse",
"ListRolesResponseBody",
"ListRolesResponseBodyTypedDict",
+ "ListRolesResponseTypedDict",
"Op",
"Or",
"OrTypedDict",
@@ -543,12 +667,16 @@
"RemovePermissionsPermissionsTypedDict",
"RemovePermissionsRequestBody",
"RemovePermissionsRequestBodyTypedDict",
+ "RemovePermissionsResponse",
"RemovePermissionsResponseBody",
"RemovePermissionsResponseBodyTypedDict",
+ "RemovePermissionsResponseTypedDict",
"RemoveRolesRequestBody",
"RemoveRolesRequestBodyTypedDict",
+ "RemoveRolesResponse",
"RemoveRolesResponseBody",
"RemoveRolesResponseBodyTypedDict",
+ "RemoveRolesResponseTypedDict",
"RemoveRolesRoles",
"RemoveRolesRolesTypedDict",
"RequestBody",
@@ -568,12 +696,16 @@
"SetPermissionsPermissionsTypedDict",
"SetPermissionsRequestBody",
"SetPermissionsRequestBodyTypedDict",
+ "SetPermissionsResponse",
"SetPermissionsResponseBody",
"SetPermissionsResponseBodyTypedDict",
+ "SetPermissionsResponseTypedDict",
"SetRolesRequestBody",
"SetRolesRequestBodyTypedDict",
+ "SetRolesResponse",
"SetRolesResponseBody",
"SetRolesResponseBodyTypedDict",
+ "SetRolesResponseTypedDict",
"SetRolesRoles",
"SetRolesRolesTypedDict",
"Type",
@@ -583,8 +715,10 @@
"UpdateIdentityRatelimitsTypedDict",
"UpdateIdentityRequestBody",
"UpdateIdentityRequestBodyTypedDict",
+ "UpdateIdentityResponse",
"UpdateIdentityResponseBody",
"UpdateIdentityResponseBodyTypedDict",
+ "UpdateIdentityResponseTypedDict",
"UpdateKeyInterval",
"UpdateKeyPermissions",
"UpdateKeyPermissionsTypedDict",
@@ -594,13 +728,17 @@
"UpdateKeyRefillTypedDict",
"UpdateKeyRequestBody",
"UpdateKeyRequestBodyTypedDict",
+ "UpdateKeyResponse",
"UpdateKeyResponseBody",
"UpdateKeyResponseBodyTypedDict",
+ "UpdateKeyResponseTypedDict",
"UpdateKeyType",
"UpdateRemainingRequestBody",
"UpdateRemainingRequestBodyTypedDict",
+ "UpdateRemainingResponse",
"UpdateRemainingResponseBody",
"UpdateRemainingResponseBodyTypedDict",
+ "UpdateRemainingResponseTypedDict",
"V1KeysVerifyKeyRequest",
"V1KeysVerifyKeyRequestRatelimit",
"V1KeysVerifyKeyRequestRatelimitTypedDict",
@@ -611,15 +749,19 @@
"V1KeysVerifyKeyResponseRatelimit",
"V1KeysVerifyKeyResponseRatelimitTypedDict",
"V1KeysVerifyKeyResponseTypedDict",
+ "V1LivenessResponse",
"V1LivenessResponseBody",
"V1LivenessResponseBodyTypedDict",
+ "V1LivenessResponseTypedDict",
"V1MigrationsCreateKeysInterval",
"V1MigrationsCreateKeysRatelimit",
"V1MigrationsCreateKeysRatelimitTypedDict",
"V1MigrationsCreateKeysRefill",
"V1MigrationsCreateKeysRefillTypedDict",
+ "V1MigrationsCreateKeysResponse",
"V1MigrationsCreateKeysResponseBody",
"V1MigrationsCreateKeysResponseBodyTypedDict",
+ "V1MigrationsCreateKeysResponseTypedDict",
"V1MigrationsCreateKeysType",
"V1MigrationsEnqueueKeysHash",
"V1MigrationsEnqueueKeysHashTypedDict",
@@ -632,17 +774,23 @@
"V1MigrationsEnqueueKeysRefillTypedDict",
"V1MigrationsEnqueueKeysRequestBody",
"V1MigrationsEnqueueKeysRequestBodyTypedDict",
+ "V1MigrationsEnqueueKeysResponse",
"V1MigrationsEnqueueKeysResponseBody",
"V1MigrationsEnqueueKeysResponseBodyTypedDict",
+ "V1MigrationsEnqueueKeysResponseTypedDict",
"V1MigrationsEnqueueKeysType",
"V1MigrationsEnqueueKeysVariant",
"Variant",
"Verifications",
"VerificationsTypedDict",
+ "VerifyKeyResponse",
+ "VerifyKeyResponseTypedDict",
"WhoamiIdentity",
"WhoamiIdentityTypedDict",
"WhoamiRequestBody",
"WhoamiRequestBodyTypedDict",
+ "WhoamiResponse",
"WhoamiResponseBody",
"WhoamiResponseBodyTypedDict",
+ "WhoamiResponseTypedDict",
]
diff --git a/src/unkey/models/addpermissionsop.py b/src/unkey/models/addpermissionsop.py
index 9bf3532..69cdc9b 100644
--- a/src/unkey/models/addpermissionsop.py
+++ b/src/unkey/models/addpermissionsop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -59,3 +60,16 @@ class ResponseBody(BaseModel):
name: str
r"""The name of the permission"""
+
+
+class AddPermissionsResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ response_bodies: NotRequired[List[ResponseBodyTypedDict]]
+ r"""All currently connected permissions"""
+
+
+class AddPermissionsResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ response_bodies: Optional[List[ResponseBody]] = None
+ r"""All currently connected permissions"""
diff --git a/src/unkey/models/addrolesop.py b/src/unkey/models/addrolesop.py
index 7fd3dd4..d608030 100644
--- a/src/unkey/models/addrolesop.py
+++ b/src/unkey/models/addrolesop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -63,3 +64,16 @@ class AddRolesResponseBody(BaseModel):
name: str
r"""The name of the role"""
+
+
+class AddRolesResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ response_bodies: NotRequired[List[AddRolesResponseBodyTypedDict]]
+ r"""All currently connected roles"""
+
+
+class AddRolesResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ response_bodies: Optional[List[AddRolesResponseBody]] = None
+ r"""All currently connected roles"""
diff --git a/src/unkey/models/createapiop.py b/src/unkey/models/createapiop.py
index 7d2e7d6..6191cbd 100644
--- a/src/unkey/models/createapiop.py
+++ b/src/unkey/models/createapiop.py
@@ -1,8 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
-from typing_extensions import Annotated, TypedDict
+from typing import Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel
@@ -28,3 +30,16 @@ class CreateAPIResponseBody(BaseModel):
api_id: Annotated[str, pydantic.Field(alias="apiId")]
r"""The id of the api"""
+
+
+class CreateAPIResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[CreateAPIResponseBodyTypedDict]
+ r"""The configuration for an api"""
+
+
+class CreateAPIResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[CreateAPIResponseBody] = None
+ r"""The configuration for an api"""
diff --git a/src/unkey/models/createidentityop.py b/src/unkey/models/createidentityop.py
index 7812008..2a35ef6 100644
--- a/src/unkey/models/createidentityop.py
+++ b/src/unkey/models/createidentityop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Any, Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -87,3 +88,16 @@ class CreateIdentityResponseBody(BaseModel):
identity_id: Annotated[str, pydantic.Field(alias="identityId")]
r"""The id of the identity. Used internally, you do not need to store this."""
+
+
+class CreateIdentityResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[CreateIdentityResponseBodyTypedDict]
+ r"""The configuration for an api"""
+
+
+class CreateIdentityResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[CreateIdentityResponseBody] = None
+ r"""The configuration for an api"""
diff --git a/src/unkey/models/createkeyop.py b/src/unkey/models/createkeyop.py
index 7d23c44..3f44009 100644
--- a/src/unkey/models/createkeyop.py
+++ b/src/unkey/models/createkeyop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
from enum import Enum
import pydantic
from typing import Any, Dict, List, Optional
@@ -266,3 +267,16 @@ class CreateKeyResponseBody(BaseModel):
key: str
r"""The newly created api key, do not store this on your own system but pass it along to your user."""
+
+
+class CreateKeyResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[CreateKeyResponseBodyTypedDict]
+ r"""The configuration for an api"""
+
+
+class CreateKeyResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[CreateKeyResponseBody] = None
+ r"""The configuration for an api"""
diff --git a/src/unkey/models/createpermissionop.py b/src/unkey/models/createpermissionop.py
index c0c43f6..e1a5729 100644
--- a/src/unkey/models/createpermissionop.py
+++ b/src/unkey/models/createpermissionop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -34,3 +35,16 @@ class CreatePermissionResponseBody(BaseModel):
permission_id: Annotated[str, pydantic.Field(alias="permissionId")]
r"""The id of the permission. This is used internally"""
+
+
+class CreatePermissionResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[CreatePermissionResponseBodyTypedDict]
+ r"""Sucessfully created a permission"""
+
+
+class CreatePermissionResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[CreatePermissionResponseBody] = None
+ r"""Sucessfully created a permission"""
diff --git a/src/unkey/models/createroleop.py b/src/unkey/models/createroleop.py
index 78da94b..ec4ba9f 100644
--- a/src/unkey/models/createroleop.py
+++ b/src/unkey/models/createroleop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -34,3 +35,16 @@ class CreateRoleResponseBody(BaseModel):
role_id: Annotated[str, pydantic.Field(alias="roleId")]
r"""The id of the role. This is used internally"""
+
+
+class CreateRoleResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[CreateRoleResponseBodyTypedDict]
+ r"""Sucessfully created a role"""
+
+
+class CreateRoleResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[CreateRoleResponseBody] = None
+ r"""Sucessfully created a role"""
diff --git a/src/unkey/models/deleteapiop.py b/src/unkey/models/deleteapiop.py
index 270b709..e87fc62 100644
--- a/src/unkey/models/deleteapiop.py
+++ b/src/unkey/models/deleteapiop.py
@@ -1,8 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
-from typing_extensions import Annotated, TypedDict
+from typing import Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel
@@ -22,3 +24,16 @@ class DeleteAPIResponseBodyTypedDict(TypedDict):
class DeleteAPIResponseBody(BaseModel):
r"""The api was successfully deleted, it may take up to 30s for this to take effect in all regions"""
+
+
+class DeleteAPIResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[DeleteAPIResponseBodyTypedDict]
+ r"""The api was successfully deleted, it may take up to 30s for this to take effect in all regions"""
+
+
+class DeleteAPIResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[DeleteAPIResponseBody] = None
+ r"""The api was successfully deleted, it may take up to 30s for this to take effect in all regions"""
diff --git a/src/unkey/models/deleteidentityop.py b/src/unkey/models/deleteidentityop.py
index 2bce0b0..4c4bb77 100644
--- a/src/unkey/models/deleteidentityop.py
+++ b/src/unkey/models/deleteidentityop.py
@@ -1,8 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
-from typing_extensions import Annotated, TypedDict
+from typing import Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel
@@ -22,3 +24,16 @@ class DeleteIdentityResponseBodyTypedDict(TypedDict):
class DeleteIdentityResponseBody(BaseModel):
r"""The identity was successfully deleted, it may take up to 30s for this to take effect in all regions"""
+
+
+class DeleteIdentityResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[DeleteIdentityResponseBodyTypedDict]
+ r"""The identity was successfully deleted, it may take up to 30s for this to take effect in all regions"""
+
+
+class DeleteIdentityResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[DeleteIdentityResponseBody] = None
+ r"""The identity was successfully deleted, it may take up to 30s for this to take effect in all regions"""
diff --git a/src/unkey/models/deletekeyop.py b/src/unkey/models/deletekeyop.py
index 1122b9c..edeb298 100644
--- a/src/unkey/models/deletekeyop.py
+++ b/src/unkey/models/deletekeyop.py
@@ -1,8 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
-from typing_extensions import Annotated, TypedDict
+from typing import Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel
@@ -22,3 +24,16 @@ class DeleteKeyResponseBodyTypedDict(TypedDict):
class DeleteKeyResponseBody(BaseModel):
r"""The key was successfully revoked, it may take up to 30s for this to take effect in all regions"""
+
+
+class DeleteKeyResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[DeleteKeyResponseBodyTypedDict]
+ r"""The key was successfully revoked, it may take up to 30s for this to take effect in all regions"""
+
+
+class DeleteKeyResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[DeleteKeyResponseBody] = None
+ r"""The key was successfully revoked, it may take up to 30s for this to take effect in all regions"""
diff --git a/src/unkey/models/deletekeysop.py b/src/unkey/models/deletekeysop.py
index c5befe4..b24dfa1 100644
--- a/src/unkey/models/deletekeysop.py
+++ b/src/unkey/models/deletekeysop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -34,3 +35,16 @@ class DeleteKeysResponseBody(BaseModel):
deleted_keys: Annotated[int, pydantic.Field(alias="deletedKeys")]
r"""The number of keys that were deleted"""
+
+
+class DeleteKeysResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[DeleteKeysResponseBodyTypedDict]
+ r"""The keys have been deleted"""
+
+
+class DeleteKeysResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[DeleteKeysResponseBody] = None
+ r"""The keys have been deleted"""
diff --git a/src/unkey/models/deletepermissionop.py b/src/unkey/models/deletepermissionop.py
index 9172b2c..9bd6fb6 100644
--- a/src/unkey/models/deletepermissionop.py
+++ b/src/unkey/models/deletepermissionop.py
@@ -1,8 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
-from typing_extensions import Annotated, TypedDict
+from typing import Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel
@@ -22,3 +24,16 @@ class DeletePermissionResponseBodyTypedDict(TypedDict):
class DeletePermissionResponseBody(BaseModel):
r"""Sucessfully deleted a permission"""
+
+
+class DeletePermissionResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[DeletePermissionResponseBodyTypedDict]
+ r"""Sucessfully deleted a permission"""
+
+
+class DeletePermissionResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[DeletePermissionResponseBody] = None
+ r"""Sucessfully deleted a permission"""
diff --git a/src/unkey/models/deleteroleop.py b/src/unkey/models/deleteroleop.py
index 7525c03..79ff231 100644
--- a/src/unkey/models/deleteroleop.py
+++ b/src/unkey/models/deleteroleop.py
@@ -1,8 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
-from typing_extensions import Annotated, TypedDict
+from typing import Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel
@@ -22,3 +24,16 @@ class DeleteRoleResponseBodyTypedDict(TypedDict):
class DeleteRoleResponseBody(BaseModel):
r"""Sucessfully deleted a role"""
+
+
+class DeleteRoleResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[DeleteRoleResponseBodyTypedDict]
+ r"""Sucessfully deleted a role"""
+
+
+class DeleteRoleResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[DeleteRoleResponseBody] = None
+ r"""Sucessfully deleted a role"""
diff --git a/src/unkey/models/getapiop.py b/src/unkey/models/getapiop.py
index e9d661d..bc2ff49 100644
--- a/src/unkey/models/getapiop.py
+++ b/src/unkey/models/getapiop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -42,3 +43,16 @@ class GetAPIResponseBody(BaseModel):
name: Optional[str] = None
r"""The name of the api. This is internal and your users will not see this."""
+
+
+class GetAPIResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[GetAPIResponseBodyTypedDict]
+ r"""The configuration for an api"""
+
+
+class GetAPIResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[GetAPIResponseBody] = None
+ r"""The configuration for an api"""
diff --git a/src/unkey/models/getidentityop.py b/src/unkey/models/getidentityop.py
index 552f9c2..38614b6 100644
--- a/src/unkey/models/getidentityop.py
+++ b/src/unkey/models/getidentityop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Any, Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -74,3 +75,16 @@ class GetIdentityResponseBody(BaseModel):
ratelimits: List[GetIdentityRatelimits]
r"""When verifying keys, you can specify which limits you want to use and all keys attached to this identity, will share the limits."""
+
+
+class GetIdentityResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[GetIdentityResponseBodyTypedDict]
+ r"""The configuration for an api"""
+
+
+class GetIdentityResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[GetIdentityResponseBody] = None
+ r"""The configuration for an api"""
diff --git a/src/unkey/models/getkeyop.py b/src/unkey/models/getkeyop.py
index 8a95f51..511a061 100644
--- a/src/unkey/models/getkeyop.py
+++ b/src/unkey/models/getkeyop.py
@@ -1,8 +1,11 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
+from .key import Key, KeyTypedDict
import pydantic
from pydantic import model_serializer
+from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
from unkey.utils import FieldMetadata, QueryParamMetadata
@@ -54,3 +57,16 @@ def serialize_model(self, handler):
m[k] = val
return m
+
+
+class GetKeyResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ key: NotRequired[KeyTypedDict]
+ r"""The configuration for a single key"""
+
+
+class GetKeyResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ key: Optional[Key] = None
+ r"""The configuration for a single key"""
diff --git a/src/unkey/models/getpermissionop.py b/src/unkey/models/getpermissionop.py
index 839748e..c8e9405 100644
--- a/src/unkey/models/getpermissionop.py
+++ b/src/unkey/models/getpermissionop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -42,3 +43,16 @@ class GetPermissionResponseBody(BaseModel):
description: Optional[str] = None
r"""The description of what this permission does. This is just for your team, your users will not see this."""
+
+
+class GetPermissionResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[GetPermissionResponseBodyTypedDict]
+ r"""The Role"""
+
+
+class GetPermissionResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[GetPermissionResponseBody] = None
+ r"""The Role"""
diff --git a/src/unkey/models/getroleop.py b/src/unkey/models/getroleop.py
index 4e9a71d..72f8275 100644
--- a/src/unkey/models/getroleop.py
+++ b/src/unkey/models/getroleop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -42,3 +43,16 @@ class GetRoleResponseBody(BaseModel):
description: Optional[str] = None
r"""The description of what this role does. This is just for your team, your users will not see this."""
+
+
+class GetRoleResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[GetRoleResponseBodyTypedDict]
+ r"""The Role"""
+
+
+class GetRoleResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[GetRoleResponseBody] = None
+ r"""The Role"""
diff --git a/src/unkey/models/getverificationsop.py b/src/unkey/models/getverificationsop.py
index 2da4564..a21e4b1 100644
--- a/src/unkey/models/getverificationsop.py
+++ b/src/unkey/models/getverificationsop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
from enum import Enum
import pydantic
from pydantic import model_serializer
@@ -120,3 +121,16 @@ class GetVerificationsResponseBody(BaseModel):
r"""Usage numbers over time"""
verifications: List[Verifications]
+
+
+class GetVerificationsResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[GetVerificationsResponseBodyTypedDict]
+ r"""Usage numbers over time"""
+
+
+class GetVerificationsResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[GetVerificationsResponseBody] = None
+ r"""Usage numbers over time"""
diff --git a/src/unkey/models/httpmetadata.py b/src/unkey/models/httpmetadata.py
new file mode 100644
index 0000000..4763a88
--- /dev/null
+++ b/src/unkey/models/httpmetadata.py
@@ -0,0 +1,23 @@
+"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
+
+from __future__ import annotations
+import httpx
+import pydantic
+from typing import Optional
+from typing_extensions import Annotated, TypedDict
+from unkey.types import BaseModel
+
+
+class HTTPMetadataTypedDict(TypedDict):
+ response: httpx.Response
+ r"""Raw HTTP response; suitable for custom response parsing"""
+ request: httpx.Request
+ r"""Raw HTTP request; suitable for debugging"""
+
+
+class HTTPMetadata(BaseModel):
+ response: Annotated[Optional[httpx.Response], pydantic.Field(exclude=True)] = None
+ r"""Raw HTTP response; suitable for custom response parsing"""
+
+ request: Annotated[Optional[httpx.Request], pydantic.Field(exclude=True)] = None
+ r"""Raw HTTP request; suitable for debugging"""
diff --git a/src/unkey/models/limitop.py b/src/unkey/models/limitop.py
index 0a6652f..87185fc 100644
--- a/src/unkey/models/limitop.py
+++ b/src/unkey/models/limitop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Any, Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -108,3 +109,14 @@ class LimitResponseBody(BaseModel):
reset: int
r"""A unix millisecond timestamp when the limits reset."""
+
+
+class LimitResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[LimitResponseBodyTypedDict]
+
+
+class LimitResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[LimitResponseBody] = None
diff --git a/src/unkey/models/listidentitiesop.py b/src/unkey/models/listidentitiesop.py
index f90af18..5df7dc2 100644
--- a/src/unkey/models/listidentitiesop.py
+++ b/src/unkey/models/listidentitiesop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Callable, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -96,10 +97,15 @@ class ListIdentitiesResponseBody(BaseModel):
class ListIdentitiesResponseTypedDict(TypedDict):
- result: ListIdentitiesResponseBodyTypedDict
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[ListIdentitiesResponseBodyTypedDict]
+ r"""A list of identities."""
class ListIdentitiesResponse(BaseModel):
next: Callable[[], Optional[ListIdentitiesResponse]]
- result: ListIdentitiesResponseBody
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[ListIdentitiesResponseBody] = None
+ r"""A list of identities."""
diff --git a/src/unkey/models/listkeysop.py b/src/unkey/models/listkeysop.py
index fdfdee3..9155157 100644
--- a/src/unkey/models/listkeysop.py
+++ b/src/unkey/models/listkeysop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
from .key import Key, KeyTypedDict
import pydantic
from pydantic import model_serializer
@@ -118,3 +119,16 @@ class ListKeysResponseBody(BaseModel):
cursor: Optional[str] = None
r"""The cursor to use for the next page of results, if no cursor is returned, there are no more results"""
+
+
+class ListKeysResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[ListKeysResponseBodyTypedDict]
+ r"""List of keys for the api"""
+
+
+class ListKeysResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[ListKeysResponseBody] = None
+ r"""List of keys for the api"""
diff --git a/src/unkey/models/listpermissionsop.py b/src/unkey/models/listpermissionsop.py
index 2934e62..d0991c4 100644
--- a/src/unkey/models/listpermissionsop.py
+++ b/src/unkey/models/listpermissionsop.py
@@ -1,8 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from typing import Optional
-from typing_extensions import NotRequired, TypedDict
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
+import pydantic
+from typing import List, Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel
@@ -24,3 +26,16 @@ class ListPermissionsResponseBody(BaseModel):
description: Optional[str] = None
r"""The description of what this permission does. This is just for your team, your users will not see this."""
+
+
+class ListPermissionsResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ response_bodies: NotRequired[List[ListPermissionsResponseBodyTypedDict]]
+ r"""The permissions in your workspace"""
+
+
+class ListPermissionsResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ response_bodies: Optional[List[ListPermissionsResponseBody]] = None
+ r"""The permissions in your workspace"""
diff --git a/src/unkey/models/listrolesop.py b/src/unkey/models/listrolesop.py
index 5c2e7c3..c0cb2f7 100644
--- a/src/unkey/models/listrolesop.py
+++ b/src/unkey/models/listrolesop.py
@@ -1,8 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from typing import Optional
-from typing_extensions import NotRequired, TypedDict
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
+import pydantic
+from typing import List, Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel
@@ -24,3 +26,16 @@ class ListRolesResponseBody(BaseModel):
description: Optional[str] = None
r"""The description of what this role does. This is just for your team, your users will not see this."""
+
+
+class ListRolesResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ response_bodies: NotRequired[List[ListRolesResponseBodyTypedDict]]
+ r"""The Roles in your workspace"""
+
+
+class ListRolesResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ response_bodies: Optional[List[ListRolesResponseBody]] = None
+ r"""The Roles in your workspace"""
diff --git a/src/unkey/models/removepermissionsop.py b/src/unkey/models/removepermissionsop.py
index 166246b..4c36692 100644
--- a/src/unkey/models/removepermissionsop.py
+++ b/src/unkey/models/removepermissionsop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -43,3 +44,16 @@ class RemovePermissionsResponseBodyTypedDict(TypedDict):
class RemovePermissionsResponseBody(BaseModel):
r"""Success"""
+
+
+class RemovePermissionsResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[RemovePermissionsResponseBodyTypedDict]
+ r"""Success"""
+
+
+class RemovePermissionsResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[RemovePermissionsResponseBody] = None
+ r"""Success"""
diff --git a/src/unkey/models/removerolesop.py b/src/unkey/models/removerolesop.py
index 527ae03..8cace09 100644
--- a/src/unkey/models/removerolesop.py
+++ b/src/unkey/models/removerolesop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -43,3 +44,16 @@ class RemoveRolesResponseBodyTypedDict(TypedDict):
class RemoveRolesResponseBody(BaseModel):
r"""Success"""
+
+
+class RemoveRolesResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[RemoveRolesResponseBodyTypedDict]
+ r"""Success"""
+
+
+class RemoveRolesResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[RemoveRolesResponseBody] = None
+ r"""Success"""
diff --git a/src/unkey/models/setpermissionsop.py b/src/unkey/models/setpermissionsop.py
index 539b7f8..2b339e4 100644
--- a/src/unkey/models/setpermissionsop.py
+++ b/src/unkey/models/setpermissionsop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -63,3 +64,16 @@ class SetPermissionsResponseBody(BaseModel):
name: str
r"""The name of the permission"""
+
+
+class SetPermissionsResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ response_bodies: NotRequired[List[SetPermissionsResponseBodyTypedDict]]
+ r"""All currently connected permissions"""
+
+
+class SetPermissionsResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ response_bodies: Optional[List[SetPermissionsResponseBody]] = None
+ r"""All currently connected permissions"""
diff --git a/src/unkey/models/setrolesop.py b/src/unkey/models/setrolesop.py
index 677f45b..754ea94 100644
--- a/src/unkey/models/setrolesop.py
+++ b/src/unkey/models/setrolesop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -63,3 +64,16 @@ class SetRolesResponseBody(BaseModel):
name: str
r"""The name of the role"""
+
+
+class SetRolesResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ response_bodies: NotRequired[List[SetRolesResponseBodyTypedDict]]
+ r"""All currently connected roles"""
+
+
+class SetRolesResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ response_bodies: Optional[List[SetRolesResponseBody]] = None
+ r"""All currently connected roles"""
diff --git a/src/unkey/models/updateidentityop.py b/src/unkey/models/updateidentityop.py
index d0e369a..beaa1ea 100644
--- a/src/unkey/models/updateidentityop.py
+++ b/src/unkey/models/updateidentityop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Any, Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -126,3 +127,16 @@ class UpdateIdentityResponseBody(BaseModel):
r"""The metadata attached to this identity."""
ratelimits: List[UpdateIdentityIdentitiesRatelimits]
+
+
+class UpdateIdentityResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[UpdateIdentityResponseBodyTypedDict]
+ r"""The identity after the update."""
+
+
+class UpdateIdentityResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[UpdateIdentityResponseBody] = None
+ r"""The identity after the update."""
diff --git a/src/unkey/models/updatekeyop.py b/src/unkey/models/updatekeyop.py
index 998296f..cceb89a 100644
--- a/src/unkey/models/updatekeyop.py
+++ b/src/unkey/models/updatekeyop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
from enum import Enum
import pydantic
from pydantic import model_serializer
@@ -330,3 +331,16 @@ class UpdateKeyResponseBodyTypedDict(TypedDict):
class UpdateKeyResponseBody(BaseModel):
r"""The key was successfully updated, it may take up to 30s for this to take effect in all regions"""
+
+
+class UpdateKeyResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[UpdateKeyResponseBodyTypedDict]
+ r"""The key was successfully updated, it may take up to 30s for this to take effect in all regions"""
+
+
+class UpdateKeyResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[UpdateKeyResponseBody] = None
+ r"""The key was successfully updated, it may take up to 30s for this to take effect in all regions"""
diff --git a/src/unkey/models/updateremainingop.py b/src/unkey/models/updateremainingop.py
index 08d39aa..6ec8cc2 100644
--- a/src/unkey/models/updateremainingop.py
+++ b/src/unkey/models/updateremainingop.py
@@ -1,10 +1,12 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
from enum import Enum
import pydantic
from pydantic import model_serializer
-from typing_extensions import Annotated, TypedDict
+from typing import Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel, Nullable, UNSET_SENTINEL
@@ -108,3 +110,16 @@ def serialize_model(self, handler):
m[k] = val
return m
+
+
+class UpdateRemainingResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[UpdateRemainingResponseBodyTypedDict]
+ r"""The configuration for an api"""
+
+
+class UpdateRemainingResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[UpdateRemainingResponseBody] = None
+ r"""The configuration for an api"""
diff --git a/src/unkey/models/v1_livenessop.py b/src/unkey/models/v1_livenessop.py
index 5036f84..7acdace 100644
--- a/src/unkey/models/v1_livenessop.py
+++ b/src/unkey/models/v1_livenessop.py
@@ -1,7 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from typing_extensions import TypedDict
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
+import pydantic
+from typing import Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
from unkey.types import BaseModel
@@ -50,3 +53,16 @@ class V1LivenessResponseBody(BaseModel):
r"""The status of the server"""
services: Services
+
+
+class V1LivenessResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[V1LivenessResponseBodyTypedDict]
+ r"""The configured services and their status"""
+
+
+class V1LivenessResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[V1LivenessResponseBody] = None
+ r"""The configured services and their status"""
diff --git a/src/unkey/models/v1_migrations_createkeysop.py b/src/unkey/models/v1_migrations_createkeysop.py
index 37b2167..7e8f38f 100644
--- a/src/unkey/models/v1_migrations_createkeysop.py
+++ b/src/unkey/models/v1_migrations_createkeysop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
from enum import Enum
import pydantic
from typing import Any, Dict, List, Optional
@@ -265,3 +266,16 @@ class V1MigrationsCreateKeysResponseBody(BaseModel):
key_ids: Annotated[List[str], pydantic.Field(alias="keyIds")]
r"""The ids of the keys. This is not a secret and can be stored as a reference if you wish. You need the keyId to update or delete a key later."""
+
+
+class V1MigrationsCreateKeysResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[V1MigrationsCreateKeysResponseBodyTypedDict]
+ r"""The key ids of all created keys"""
+
+
+class V1MigrationsCreateKeysResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[V1MigrationsCreateKeysResponseBody] = None
+ r"""The key ids of all created keys"""
diff --git a/src/unkey/models/v1_migrations_enqueuekeysop.py b/src/unkey/models/v1_migrations_enqueuekeysop.py
index f484267..9924c7d 100644
--- a/src/unkey/models/v1_migrations_enqueuekeysop.py
+++ b/src/unkey/models/v1_migrations_enqueuekeysop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
from enum import Enum
import pydantic
from typing import Any, Dict, List, Optional
@@ -277,3 +278,16 @@ class V1MigrationsEnqueueKeysResponseBodyTypedDict(TypedDict):
class V1MigrationsEnqueueKeysResponseBody(BaseModel):
r"""The key ids of all created keys"""
+
+
+class V1MigrationsEnqueueKeysResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[V1MigrationsEnqueueKeysResponseBodyTypedDict]
+ r"""The key ids of all created keys"""
+
+
+class V1MigrationsEnqueueKeysResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[V1MigrationsEnqueueKeysResponseBody] = None
+ r"""The key ids of all created keys"""
diff --git a/src/unkey/models/verifykeyop.py b/src/unkey/models/verifykeyop.py
new file mode 100644
index 0000000..bb62c85
--- /dev/null
+++ b/src/unkey/models/verifykeyop.py
@@ -0,0 +1,25 @@
+"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
+
+from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
+from .v1keysverifykeyresponse import (
+ V1KeysVerifyKeyResponse,
+ V1KeysVerifyKeyResponseTypedDict,
+)
+import pydantic
+from typing import Optional
+from typing_extensions import Annotated, NotRequired, TypedDict
+from unkey.types import BaseModel
+
+
+class VerifyKeyResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ v1_keys_verify_key_response: NotRequired[V1KeysVerifyKeyResponseTypedDict]
+ r"""The verification result"""
+
+
+class VerifyKeyResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ v1_keys_verify_key_response: Optional[V1KeysVerifyKeyResponse] = None
+ r"""The verification result"""
diff --git a/src/unkey/models/whoamiop.py b/src/unkey/models/whoamiop.py
index 14fd397..24f6b49 100644
--- a/src/unkey/models/whoamiop.py
+++ b/src/unkey/models/whoamiop.py
@@ -1,6 +1,7 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
+from .httpmetadata import HTTPMetadata, HTTPMetadataTypedDict
import pydantic
from typing import Any, Dict, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -83,3 +84,16 @@ class WhoamiResponseBody(BaseModel):
environment: Optional[str] = None
r"""The environment the key is associated with"""
+
+
+class WhoamiResponseTypedDict(TypedDict):
+ http_meta: HTTPMetadataTypedDict
+ object: NotRequired[WhoamiResponseBodyTypedDict]
+ r"""The configuration for a single key"""
+
+
+class WhoamiResponse(BaseModel):
+ http_meta: Annotated[Optional[HTTPMetadata], pydantic.Field(exclude=True)] = None
+
+ object: Optional[WhoamiResponseBody] = None
+ r"""The configuration for a single key"""
diff --git a/src/unkey/permissions.py b/src/unkey/permissions.py
index 89e5bda..8a49256 100644
--- a/src/unkey/permissions.py
+++ b/src/unkey/permissions.py
@@ -19,7 +19,7 @@ def create(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.CreatePermissionResponseBody:
+ ) -> models.CreatePermissionResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -93,8 +93,11 @@ def create(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.CreatePermissionResponseBody
+ return models.CreatePermissionResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.CreatePermissionResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -144,7 +147,7 @@ async def create_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.CreatePermissionResponseBody:
+ ) -> models.CreatePermissionResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -218,8 +221,11 @@ async def create_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.CreatePermissionResponseBody
+ return models.CreatePermissionResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.CreatePermissionResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -269,7 +275,7 @@ def delete(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeletePermissionResponseBody:
+ ) -> models.DeletePermissionResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -343,8 +349,11 @@ def delete(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.DeletePermissionResponseBody
+ return models.DeletePermissionResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeletePermissionResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -394,7 +403,7 @@ async def delete_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeletePermissionResponseBody:
+ ) -> models.DeletePermissionResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -468,8 +477,11 @@ async def delete_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, models.DeletePermissionResponseBody
+ return models.DeletePermissionResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeletePermissionResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -516,7 +528,7 @@ def get(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.GetPermissionResponseBody:
+ ) -> models.GetPermissionResponse:
r"""
:param permission_id:
:param retries: Override the default retry configuration for this method
@@ -587,7 +599,12 @@ def get(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.GetPermissionResponseBody)
+ return models.GetPermissionResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.GetPermissionResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -633,7 +650,7 @@ async def get_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.GetPermissionResponseBody:
+ ) -> models.GetPermissionResponse:
r"""
:param permission_id:
:param retries: Override the default retry configuration for this method
@@ -704,7 +721,12 @@ async def get_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.GetPermissionResponseBody)
+ return models.GetPermissionResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.GetPermissionResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -749,7 +771,7 @@ def list(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.ListPermissionsResponseBody]:
+ ) -> models.ListPermissionsResponse:
r"""
:param retries: Override the default retry configuration for this method
:param server_url: Override the default server URL for this method
@@ -814,8 +836,11 @@ def list(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, List[models.ListPermissionsResponseBody]
+ return models.ListPermissionsResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.ListPermissionsResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -861,7 +886,7 @@ async def list_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.ListPermissionsResponseBody]:
+ ) -> models.ListPermissionsResponse:
r"""
:param retries: Override the default retry configuration for this method
:param server_url: Override the default server URL for this method
@@ -926,8 +951,11 @@ async def list_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, List[models.ListPermissionsResponseBody]
+ return models.ListPermissionsResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.ListPermissionsResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -976,7 +1004,7 @@ def create_role(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.CreateRoleResponseBody:
+ ) -> models.CreateRoleResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1050,7 +1078,12 @@ def create_role(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.CreateRoleResponseBody)
+ return models.CreateRoleResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.CreateRoleResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1098,7 +1131,7 @@ async def create_role_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.CreateRoleResponseBody:
+ ) -> models.CreateRoleResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1172,7 +1205,12 @@ async def create_role_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.CreateRoleResponseBody)
+ return models.CreateRoleResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.CreateRoleResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1220,7 +1258,7 @@ def delete_role(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeleteRoleResponseBody:
+ ) -> models.DeleteRoleResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1294,7 +1332,12 @@ def delete_role(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.DeleteRoleResponseBody)
+ return models.DeleteRoleResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeleteRoleResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1342,7 +1385,7 @@ async def delete_role_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.DeleteRoleResponseBody:
+ ) -> models.DeleteRoleResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1416,7 +1459,12 @@ async def delete_role_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.DeleteRoleResponseBody)
+ return models.DeleteRoleResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.DeleteRoleResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1462,7 +1510,7 @@ def get_role(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.GetRoleResponseBody:
+ ) -> models.GetRoleResponse:
r"""
:param role_id:
:param retries: Override the default retry configuration for this method
@@ -1533,7 +1581,12 @@ def get_role(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.GetRoleResponseBody)
+ return models.GetRoleResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.GetRoleResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1579,7 +1632,7 @@ async def get_role_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.GetRoleResponseBody:
+ ) -> models.GetRoleResponse:
r"""
:param role_id:
:param retries: Override the default retry configuration for this method
@@ -1650,7 +1703,12 @@ async def get_role_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.GetRoleResponseBody)
+ return models.GetRoleResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.GetRoleResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -1695,7 +1753,7 @@ def list_roles(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.ListRolesResponseBody]:
+ ) -> models.ListRolesResponse:
r"""
:param retries: Override the default retry configuration for this method
:param server_url: Override the default server URL for this method
@@ -1760,8 +1818,11 @@ def list_roles(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, List[models.ListRolesResponseBody]
+ return models.ListRolesResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.ListRolesResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
@@ -1807,7 +1868,7 @@ async def list_roles_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> List[models.ListRolesResponseBody]:
+ ) -> models.ListRolesResponse:
r"""
:param retries: Override the default retry configuration for this method
:param server_url: Override the default server URL for this method
@@ -1872,8 +1933,11 @@ async def list_roles_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(
- http_res.text, List[models.ListRolesResponseBody]
+ return models.ListRolesResponse(
+ response_bodies=utils.unmarshal_json(
+ http_res.text, Optional[List[models.ListRolesResponseBody]]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
)
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
diff --git a/src/unkey/ratelimits.py b/src/unkey/ratelimits.py
index fa3056c..369ea4e 100644
--- a/src/unkey/ratelimits.py
+++ b/src/unkey/ratelimits.py
@@ -16,7 +16,7 @@ def limit(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.LimitResponseBody:
+ ) -> models.LimitResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -90,7 +90,12 @@ def limit(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.LimitResponseBody)
+ return models.LimitResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.LimitResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
@@ -136,7 +141,7 @@ async def limit_async(
retries: OptionalNullable[utils.RetryConfig] = UNSET,
server_url: Optional[str] = None,
timeout_ms: Optional[int] = None,
- ) -> models.LimitResponseBody:
+ ) -> models.LimitResponse:
r"""
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -210,7 +215,12 @@ async def limit_async(
data: Any = None
if utils.match_response(http_res, "200", "application/json"):
- return utils.unmarshal_json(http_res.text, models.LimitResponseBody)
+ return models.LimitResponse(
+ object=utils.unmarshal_json(
+ http_res.text, Optional[models.LimitResponseBody]
+ ),
+ http_meta=models.HTTPMetadata(request=req, response=http_res),
+ )
if utils.match_response(http_res, "400", "application/json"):
data = utils.unmarshal_json(http_res.text, models.ErrBadRequestData)
raise models.ErrBadRequest(data=data)
diff --git a/src/unkey/sdkconfiguration.py b/src/unkey/sdkconfiguration.py
index 6591be2..b7e3cbd 100644
--- a/src/unkey/sdkconfiguration.py
+++ b/src/unkey/sdkconfiguration.py
@@ -27,9 +27,9 @@ class SDKConfiguration:
server_idx: Optional[int] = 0
language: str = "python"
openapi_doc_version: str = "1.0.0"
- sdk_version: str = "0.1.0"
+ sdk_version: str = "0.1.1"
gen_version: str = "2.438.15"
- user_agent: str = "speakeasy-sdk/python 0.1.0 2.438.15 1.0.0 unkey"
+ user_agent: str = "speakeasy-sdk/python 0.1.1 2.438.15 1.0.0 unkey"
retry_config: OptionalNullable[RetryConfig] = Field(default_factory=lambda: UNSET)
timeout_ms: Optional[int] = None