Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions .speakeasy/gen.lock
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
lockVersion: 2.0.0
id: bfe29c99-6e67-43fe-b928-64d6a5ed6aa8
management:
docChecksum: 988da0b376f34c1dad41f86578b90dd5
docChecksum: 3dfefff9a37b855f39ffa94246e8bc7b
docVersion: "2025-03-12"
speakeasyVersion: 1.555.0
generationVersion: 2.618.0
releaseVersion: 3.0.2
configChecksum: bac9e9ccd199045c7c1bdc55ea1c3795
speakeasyVersion: 1.558.0
generationVersion: 2.623.2
releaseVersion: 3.0.3
configChecksum: a1fc8a1a970474b0e9bd06b2727c69c6
repoURL: https://github.com/clerk/clerk-sdk-python.git
installationURL: https://github.com/clerk/clerk-sdk-python.git
published: true
Expand All @@ -15,7 +15,7 @@ features:
additionalDependencies: 1.0.0
additionalProperties: 1.0.1
constsAndDefaults: 1.0.5
core: 5.19.1
core: 5.19.2
customCodeRegions: 0.1.1
defaultEnabledRetries: 0.2.0
deprecations: 3.0.2
Expand Down Expand Up @@ -1153,7 +1153,7 @@ examples:
path:
user_id: "usr_test123"
requestBody:
multipart/form-data: {"file": {"": "<value>"}}
multipart/form-data: {"file": "x-file: example.file"}
responses:
"200":
application/json: {"id": "user_id_123", "object": "user", "external_id": "external_user_id_123", "primary_email_address_id": "email_id_123", "primary_phone_number_id": "phone_id_123", "primary_web3_wallet_id": "wallet_id_123", "username": "john_doe", "first_name": "John", "last_name": "Doe", "image_url": "https://example.com/new-profile.jpg", "has_image": true, "public_metadata": {"role": "admin"}, "private_metadata": {"ssn": "123-45-6789"}, "unsafe_metadata": {"theme": "dark"}, "email_addresses": [{"id": "email_id_123", "object": "email_address", "email_address": "john.doe@example.com", "reserved": false, "verification": {"status": "verified", "strategy": "ticket", "attempts": null, "expire_at": null, "verified_at_client": "<value>"}, "linked_to": [{"type": "oauth_google", "id": "link_12345"}], "matches_sso_connection": true, "created_at": 1609459200, "updated_at": 1609459200}], "phone_numbers": [{"id": "phone_id_123", "object": "phone_number", "phone_number": "+12345678901", "reserved_for_second_factor": false, "default_second_factor": true, "reserved": false, "verification": {"status": "verified", "strategy": "admin", "attempts": 2, "expire_at": 1622852400, "verified_at_client": "<value>"}, "linked_to": [{"type": "oauth_google", "id": "link_id_123"}], "backup_codes": ["code1", "code2", "code3"], "created_at": 1609459200, "updated_at": 1609459200}], "web3_wallets": [{"id": "wallet_id_123", "object": "web3_wallet", "web3_wallet": "0x123456789abcdef", "verification": {"status": "verified", "strategy": "web3_metamask_signature", "nonce": "nonce_value", "message": "<value>", "attempts": null, "expire_at": null, "verified_at_client": "<value>"}, "created_at": 1609459200, "updated_at": 1609459200}], "passkeys": [{"id": "passkey_id_123", "object": "passkey", "name": "My Passkey", "last_used_at": 1615852800, "verification": {"status": "verified", "strategy": "passkey", "nonce": "nonce", "message": null, "attempts": null, "expire_at": null, "verified_at_client": "<value>"}}], "password_enabled": true, "two_factor_enabled": true, "totp_enabled": true, "backup_code_enabled": true, "mfa_enabled_at": 1615852800, "mfa_disabled_at": null, "external_accounts": [{"object": "facebook_account", "id": "ext_account_id_123", "provider": "Facebook", "identification_id": "<id>", "provider_user_id": "<id>", "approved_scopes": "<value>", "email_address": "Evalyn13@hotmail.com", "first_name": "Jewel", "last_name": "Hackett", "image_url": "https://rare-iridescence.name", "username": "Hollis45", "public_metadata": {"key": "<value>"}, "label": "<value>", "created_at": 947362, "updated_at": 25796, "verification": {"status": "verified", "strategy": "oauth_google", "external_verification_redirect_url": "https://oauth.google.com/verify", "error": null, "expire_at": 1615462399, "attempts": 1, "verified_at_client": "<value>"}, "user_id": "user_id_at_provider"}], "saml_accounts": [{"id": "saml_account_id_123", "object": "saml_account", "provider": "SAML Provider", "active": true, "email_address": "user@example.com", "first_name": "John", "last_name": "Doe", "provider_user_id": "prov_user_id_123", "public_metadata": {"department": "IT"}, "verification": {"status": "verified", "strategy": "saml", "external_verification_redirect_url": "https://example.com/saml_callback", "error": null, "expire_at": 1622852400, "attempts": null, "verified_at_client": null}, "saml_connection": {"id": "sc_1234567890", "name": "My Company SAML Config", "domain": "mycompany.com", "active": true, "provider": "saml_custom", "sync_user_attributes": true, "allow_subdomains": false, "allow_idp_initiated": true, "disable_additional_identifications": false, "created_at": 1614768000, "updated_at": 1622540800}}], "last_sign_in_at": 1622852400, "banned": false, "locked": false, "lockout_expires_in_seconds": null, "verification_attempts_remaining": 5, "updated_at": 1622852400, "created_at": 1609459200, "delete_self_enabled": true, "create_organization_enabled": true, "create_organizations_limit": 830110, "last_active_at": 1700690400000, "legal_accepted_at": 1700690400000}
Expand Down Expand Up @@ -1782,7 +1782,7 @@ examples:
path:
organization_id: "org_12345"
requestBody:
multipart/form-data: {"uploader_user_id": "user_67890", "file": {"": "<value>"}}
multipart/form-data: {"uploader_user_id": "user_67890", "file": "path/to/your/logo.png"}
responses:
"200":
application/json: {"object": "organization", "id": "org_123", "name": "Acme Corp", "slug": "acme-corp", "members_count": 150, "missing_member_with_elevated_permissions": false, "pending_invitations_count": 968142, "max_allowed_memberships": 300, "admin_delete_enabled": true, "public_metadata": {"public_info": "Info visible to everyone"}, "private_metadata": {"internal_use_only": "Sensitive data"}, "created_by": "user_123456", "created_at": 1625078400, "updated_at": 1625164800, "image_url": "https://example.com/image_url.png", "has_image": true}
Expand Down
3 changes: 2 additions & 1 deletion .speakeasy/gen.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ generation:
oAuth2ClientCredentialsEnabled: true
oAuth2PasswordEnabled: false
python:
version: 3.0.2
version: 3.0.3
additionalDependencies:
dev:
pytest: ^8.3.3
Expand All @@ -27,6 +27,7 @@ python:
author: Clerk
authors:
- Clerk
baseErrorName: ClerkError
clientServerStatusCodesAsErrors: true
defaultErrorName: SDKError
description: Python Client SDK for clerk.dev
Expand Down
15 changes: 8 additions & 7 deletions .speakeasy/workflow.lock
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
speakeasyVersion: 1.555.0
speakeasyVersion: 1.558.0
sources:
clerk-openapi:
sourceNamespace: clerk-openapi
sourceRevisionDigest: sha256:4cbf4283ce2a07c1f31443166a6c78d5c4c022c39d86870460af75f6c7f1aa18
sourceBlobDigest: sha256:a82c310fc15cfea1ba234d207461311ad01e41fba0c5b4acb306797703c6de31
sourceRevisionDigest: sha256:3288eba09b33528d64d74299415d843a118513d034d93d468cbe9ec68ca2bb7e
sourceBlobDigest: sha256:595a7d4c019d1d3c567ca7c4ceaffa57bb5306f217b12a75df160fb107e21e47
tags:
- latest
- speakeasy-sdk-regen-1748970067
- speakeasy-sdk-regen-1749494521
- "2025-03-12"
targets:
clerk-sdk-python:
source: clerk-openapi
sourceNamespace: clerk-openapi
sourceRevisionDigest: sha256:4cbf4283ce2a07c1f31443166a6c78d5c4c022c39d86870460af75f6c7f1aa18
sourceBlobDigest: sha256:a82c310fc15cfea1ba234d207461311ad01e41fba0c5b4acb306797703c6de31
sourceRevisionDigest: sha256:3288eba09b33528d64d74299415d843a118513d034d93d468cbe9ec68ca2bb7e
sourceBlobDigest: sha256:595a7d4c019d1d3c567ca7c4ceaffa57bb5306f217b12a75df160fb107e21e47
codeSamplesNamespace: clerk-openapi-python-code-samples
codeSamplesRevisionDigest: sha256:20e4f2303a68edd90192b676c7354339b7a18b5dfd52f2ed366fafa27b47ad73
codeSamplesRevisionDigest: sha256:32d52dd50c58576c0c38393f9db2ce25e4027e95a5e8ea017aa0a49346721cb6
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest
Expand All @@ -25,6 +25,7 @@ workflow:
- location: https://raw.githubusercontent.com/clerk/openapi-specs/refs/heads/main/bapi/2025-03-12.yml
overlays:
- location: ./examples.yaml
- location: ./fixes.yaml
- location: https://raw.githubusercontent.com/clerk/openapi-specs/refs/heads/main/.speakeasy/bapi/fixes.yml
registry:
location: registry.speakeasyapi.dev/clerk/clerk/clerk-openapi
Expand Down
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -465,7 +465,6 @@ with Clerk(
res = clerk.users.set_profile_image(user_id="usr_test123", file={
"file_name": "example.file",
"content": open("example.file", "rb"),
"content_type": "<value>",
})

assert res is not None
Expand Down
12 changes: 11 additions & 1 deletion RELEASES.md
Original file line number Diff line number Diff line change
Expand Up @@ -338,4 +338,14 @@ Based on:
### Generated
- [python v3.0.2] .
### Releases
- [PyPI v3.0.2] https://pypi.org/project/clerk-backend-api/3.0.2 - .
- [PyPI v3.0.2] https://pypi.org/project/clerk-backend-api/3.0.2 - .

## 2025-06-09 18:41:45
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.558.0 (2.623.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v3.0.3] .
### Releases
- [PyPI v3.0.3] https://pypi.org/project/clerk-backend-api/3.0.3 - .
3 changes: 0 additions & 3 deletions docs/sdks/actortokens/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,6 @@ with Clerk(
user_id="user_1a2b3c",
actor=clerk_backend_api.CreateActorTokenActor(
sub="user_2OEpKhcCN1Lat9NQ0G6puh7q5Rb",
**{
"sub": "user_2OEpKhcCN1Lat9NQ0G6puh7q5Rb",
},
),
))

Expand Down
3 changes: 2 additions & 1 deletion docs/sdks/allowlistidentifiers/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.allowlist_identifiers.list(paginated=False)
res = clerk.allowlist_identifiers.list(paginated=False, limit=20, offset=10)

assert res is not None

Expand Down Expand Up @@ -68,6 +68,7 @@ with Clerk(

res = clerk.allowlist_identifiers.create(request={
"identifier": "user@example.com",
"notify": True,
})

assert res is not None
Expand Down
2 changes: 1 addition & 1 deletion docs/sdks/clients/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.clients.list(paginated=False)
res = clerk.clients.list(paginated=False, limit=20, offset=10)

assert res is not None

Expand Down
2 changes: 1 addition & 1 deletion docs/sdks/emailsmstemplates/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.email_sms_templates.list(template_type=clerk_backend_api.TemplateType.EMAIL, paginated=True)
res = clerk.email_sms_templates.list(template_type=clerk_backend_api.TemplateType.EMAIL, paginated=True, limit=20, offset=10)

assert res is not None

Expand Down
2 changes: 1 addition & 1 deletion docs/sdks/invitations/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.invitations.list(status=clerk_backend_api.ListInvitationsQueryParamStatus.ACCEPTED, query="<value>", order_by="pending", paginated=False)
res = clerk.invitations.list(status=clerk_backend_api.ListInvitationsQueryParamStatus.ACCEPTED, query="<value>", order_by="pending", paginated=False, limit=20, offset=10)

assert res is not None

Expand Down
2 changes: 1 addition & 1 deletion docs/sdks/jwttemplates/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.jwt_templates.list(paginated=True)
res = clerk.jwt_templates.list(paginated=True, limit=20, offset=10)

assert res is not None

Expand Down
5 changes: 3 additions & 2 deletions docs/sdks/oauthapplicationssdk/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.oauth_applications.list()
res = clerk.oauth_applications.list(limit=20, offset=10)

assert res is not None

Expand Down Expand Up @@ -78,6 +78,7 @@ with Clerk(
"redirect_uris": [
"<value 1>",
],
"scopes": "profile email public_metadata",
"public": True,
})

Expand Down Expand Up @@ -161,7 +162,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.oauth_applications.update(oauth_application_id="oauth_app_67890", name="Updated OAuth App Name", redirect_uris=None, public=None)
res = clerk.oauth_applications.update(oauth_application_id="oauth_app_67890", name="Updated OAuth App Name", redirect_uris=None, scopes="profile email public_metadata private_metadata", public=None)

assert res is not None

Expand Down
2 changes: 1 addition & 1 deletion docs/sdks/organizationdomainssdk/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.organization_domains.list(organization_id="<id>", verified="<value>", enrollment_mode="<value>")
res = clerk.organization_domains.list(organization_id="<id>", verified="<value>", enrollment_mode="<value>", limit=20, offset=10)

assert res is not None

Expand Down
6 changes: 3 additions & 3 deletions docs/sdks/organizationinvitationssdk/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.organization_invitations.get_all(status=clerk_backend_api.ListInstanceOrganizationInvitationsQueryParamStatus.ACCEPTED, query="<value>")
res = clerk.organization_invitations.get_all(order_by="-created_at", status=clerk_backend_api.ListInstanceOrganizationInvitationsQueryParamStatus.ACCEPTED, query="<value>", limit=20, offset=10)

assert res is not None

Expand Down Expand Up @@ -152,7 +152,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.organization_invitations.list(organization_id="org_12345", status=clerk_backend_api.ListOrganizationInvitationsQueryParamStatus.ACCEPTED)
res = clerk.organization_invitations.list(organization_id="org_12345", status=clerk_backend_api.ListOrganizationInvitationsQueryParamStatus.ACCEPTED, limit=20, offset=10)

assert res is not None

Expand Down Expand Up @@ -284,7 +284,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.organization_invitations.list_pending(organization_id="org_12345")
res = clerk.organization_invitations.list_pending(organization_id="org_12345", limit=20, offset=10)

assert res is not None

Expand Down
2 changes: 1 addition & 1 deletion docs/sdks/organizationmembershipssdk/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ with Clerk(
"<value 1>",
], role=[
"<value 1>",
], query="<value>", email_address_query="<value>", phone_number_query="<value>", username_query="<value>", name_query="<value>", last_active_at_before=1700690400000, last_active_at_after=1700690400000, created_at_before=1730160000000, created_at_after=1730160000000)
], query="<value>", email_address_query="<value>", phone_number_query="<value>", username_query="<value>", name_query="<value>", last_active_at_before=1700690400000, last_active_at_after=1700690400000, created_at_before=1730160000000, created_at_after=1730160000000, limit=20, offset=10)

assert res is not None

Expand Down
3 changes: 1 addition & 2 deletions docs/sdks/organizationssdk/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ with Clerk(
"clerk",
], organization_id=[
"-name",
])
], order_by="-created_at", limit=20, offset=10)

assert res is not None

Expand Down Expand Up @@ -339,7 +339,6 @@ with Clerk(
res = clerk.organizations.upload_logo(organization_id="org_12345", file={
"file_name": "example.file",
"content": open("example.file", "rb"),
"content_type": "<value>",
}, uploader_user_id="user_67890")

assert res is not None
Expand Down
2 changes: 1 addition & 1 deletion docs/sdks/redirecturls/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.redirect_urls.list(paginated=True)
res = clerk.redirect_urls.list(paginated=True, limit=20, offset=10)

assert res is not None

Expand Down
2 changes: 1 addition & 1 deletion docs/sdks/samlconnectionssdk/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.saml_connections.list(query="<value>", order_by="<value>", organization_id=[
res = clerk.saml_connections.list(limit=20, offset=10, query="<value>", order_by="<value>", organization_id=[
"<id 1>",
])

Expand Down
5 changes: 3 additions & 2 deletions docs/sdks/sessions/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ with Clerk(
bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
) as clerk:

res = clerk.sessions.list(client_id="client_123", user_id="user_456", status=clerk_backend_api.QueryParamStatus.ACTIVE, paginated=True)
res = clerk.sessions.list(client_id="client_123", user_id="user_456", status=clerk_backend_api.QueryParamStatus.ACTIVE, paginated=True, limit=20, offset=10)

assert res is not None

Expand Down Expand Up @@ -159,6 +159,7 @@ are validation errors, which signals the SDKs to fallback to the handshake flow.
### Example Usage

```python
import clerk_backend_api
from clerk_backend_api import Clerk


Expand All @@ -170,7 +171,7 @@ with Clerk(
"key": "<value>",
"key1": "<value>",
"key2": "<value>",
}, request_originating_ip="<value>")
}, format_=clerk_backend_api.Format.TOKEN, request_originating_ip="<value>")

assert res is not None

Expand Down
Loading