Skip to content

Commit f5ac29b

Browse files
committed
[fern-generated] Update SDK
Generated by Fern CLI Version: unknown Generators: - fernapi/fern-python-sdk: 5.12.6
1 parent 1026b4d commit f5ac29b

34 files changed

Lines changed: 743 additions & 39 deletions

CONTRIBUTING.md

Lines changed: 125 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,125 @@
1+
# Contributing
2+
3+
Thanks for your interest in contributing to this SDK! This document provides guidelines for contributing to the project.
4+
5+
## Getting Started
6+
7+
### Prerequisites
8+
9+
- Python 3.9+
10+
- pip
11+
- poetry
12+
13+
### Installation
14+
15+
Install the project dependencies:
16+
17+
```bash
18+
poetry install
19+
```
20+
21+
### Building
22+
23+
Build the project:
24+
25+
```bash
26+
poetry build
27+
```
28+
29+
### Testing
30+
31+
Run the test suite:
32+
33+
```bash
34+
poetry run pytest
35+
```
36+
37+
### Linting and Formatting
38+
39+
Check code style:
40+
41+
```bash
42+
poetry run ruff check .
43+
poetry run ruff format .
44+
```
45+
46+
### Type Checking
47+
48+
Run the type checker:
49+
50+
```bash
51+
poetry run mypy .
52+
```
53+
54+
## About Generated Code
55+
56+
**Important**: Most files in this SDK are automatically generated by [Fern](https://buildwithfern.com) from the API definition. Direct modifications to generated files will be overwritten the next time the SDK is generated.
57+
58+
### Generated Files
59+
60+
The following directories contain generated code:
61+
- `src/` - API client classes and types
62+
- Most Python files in the project
63+
64+
### How to Customize
65+
66+
If you need to customize the SDK, you have two options:
67+
68+
#### Option 1: Use `.fernignore`
69+
70+
For custom code that should persist across SDK regenerations:
71+
72+
1. Create a `.fernignore` file in the project root
73+
2. Add file patterns for files you want to preserve (similar to `.gitignore` syntax)
74+
3. Add your custom code to those files
75+
76+
Files listed in `.fernignore` will not be overwritten when the SDK is regenerated.
77+
78+
For more information, see the [Fern documentation on custom code](https://buildwithfern.com/learn/sdks/overview/custom-code).
79+
80+
#### Option 2: Contribute to the Generator
81+
82+
If you want to change how code is generated for all users of this SDK:
83+
84+
1. The Python SDK generator lives in the [Fern repository](https://github.com/fern-api/fern)
85+
2. Generator code is located at `generators/python-v2/`
86+
3. Follow the [Fern contributing guidelines](https://github.com/fern-api/fern/blob/main/CONTRIBUTING.md)
87+
4. Submit a pull request with your changes to the generator
88+
89+
This approach is best for:
90+
- Bug fixes in generated code
91+
- New features that would benefit all users
92+
- Improvements to code generation patterns
93+
94+
## Making Changes
95+
96+
### Workflow
97+
98+
1. Create a new branch for your changes
99+
2. Make your modifications
100+
3. Run tests to ensure nothing breaks: `poetry run pytest`
101+
4. Run linting and formatting: `poetry run ruff check .` and `poetry run ruff format .`
102+
5. Run type checking: `poetry run mypy .`
103+
6. Build the project: `poetry build`
104+
7. Commit your changes with a clear commit message
105+
8. Push your branch and create a pull request
106+
107+
### Commit Messages
108+
109+
Write clear, descriptive commit messages that explain what changed and why.
110+
111+
### Code Style
112+
113+
This project uses automated code formatting and linting. Run `poetry run ruff format .` and `poetry run ruff check .` before committing to ensure your code meets the project's style guidelines.
114+
115+
## Questions or Issues?
116+
117+
If you have questions or run into issues:
118+
119+
1. Check the [Fern documentation](https://buildwithfern.com)
120+
2. Search existing [GitHub issues](https://github.com/fern-api/fern/issues)
121+
3. Open a new issue if your question hasn't been addressed
122+
123+
## License
124+
125+
By contributing to this project, you agree that your contributions will be licensed under the same license as the project.

reference.md

Lines changed: 83 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10953,6 +10953,14 @@ client.refresh_tokens.revoke()
1095310953
<dl>
1095410954
<dd>
1095510955

10956+
**audience:** `typing.Optional[str]` — Resource server identifier (audience) to scope the revocation. Must be used with both `user_id` and `client_id`.
10957+
10958+
</dd>
10959+
</dl>
10960+
10961+
<dl>
10962+
<dd>
10963+
1095610964
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
1095710965

1095810966
</dd>
@@ -11413,6 +11421,14 @@ client.resource_servers.create(
1141311421
<dl>
1141411422
<dd>
1141511423

11424+
**allow_online_access_with_ephemeral_sessions:** `typing.Optional[bool]` — Whether Online Refresh Tokens can be issued even when sessions are configured as ephemeral (true) or not (false).
11425+
11426+
</dd>
11427+
</dl>
11428+
11429+
<dl>
11430+
<dd>
11431+
1141611432
**token_lifetime:** `typing.Optional[int]` — Expiration value (in seconds) for access tokens issued for this API from the token endpoint.
1141711433

1141811434
</dd>
@@ -11777,6 +11793,14 @@ client.resource_servers.update(
1177711793
<dl>
1177811794
<dd>
1177911795

11796+
**allow_online_access_with_ephemeral_sessions:** `typing.Optional[bool]` — Whether Online Refresh Tokens can be issued even when sessions are configured as ephemeral (true) or not (false).
11797+
11798+
</dd>
11799+
</dl>
11800+
11801+
<dl>
11802+
<dd>
11803+
1178011804
**token_lifetime:** `typing.Optional[int]` — Expiration value (in seconds) for access tokens issued for this API from the token endpoint.
1178111805

1178211806
</dd>
@@ -14222,7 +14246,7 @@ client.tickets.change_password()
1422214246
<dl>
1422314247
<dd>
1422414248

14225-
**result_url:** `typing.Optional[str]` — URL the user will be redirected to in the classic Universal Login experience once the ticket is used. Cannot be specified when using client_id or organization_id.
14249+
**result_url:** `typing.Optional[str]` — URL the user will be redirected to in the classic Universal Login experience once the ticket is used. Cannot be specified when using organization_id. May be specified together with client_id when the tenant has a custom password reset page enabled and a password-reset-post-challenge Action bound.
1422614250

1422714251
</dd>
1422814252
</dl>
@@ -34782,15 +34806,23 @@ client.users.authentication_methods.create(
3478234806
<dl>
3478334807
<dd>
3478434808

34785-
**key_id:** `typing.Optional[str]` — Applies to webauthn authentication methods only. The id of the credential.
34809+
**key_id:** `typing.Optional[str]` — Applies to webauthn/passkey authentication methods only. The id of the credential.
34810+
34811+
</dd>
34812+
</dl>
34813+
34814+
<dl>
34815+
<dd>
34816+
34817+
**public_key:** `typing.Optional[str]` — Applies to webauthn/passkey authentication methods only. The public key, which is encoded as base64.
3478634818

3478734819
</dd>
3478834820
</dl>
3478934821

3479034822
<dl>
3479134823
<dd>
3479234824

34793-
**public_key:** `typing.Optional[str]` — Applies to webauthn authentication methods only. The public key, which is encoded as base64.
34825+
**aaguid:** `typing.Optional[str]` — Applies to passkeys only. Authenticator Attestation Globally Unique Identifier
3479434826

3479534827
</dd>
3479634828
</dl>
@@ -34806,6 +34838,54 @@ client.users.authentication_methods.create(
3480634838
<dl>
3480734839
<dd>
3480834840

34841+
**credential_device_type:** `typing.Optional[CredentialDeviceTypeEnum]`
34842+
34843+
</dd>
34844+
</dl>
34845+
34846+
<dl>
34847+
<dd>
34848+
34849+
**credential_backed_up:** `typing.Optional[bool]` — Applies to passkeys only. Whether the credential was backed up.
34850+
34851+
</dd>
34852+
</dl>
34853+
34854+
<dl>
34855+
<dd>
34856+
34857+
**identity_user_id:** `typing.Optional[str]` — Applies to passkeys only. The ID of the user identity linked with the authentication method.
34858+
34859+
</dd>
34860+
</dl>
34861+
34862+
<dl>
34863+
<dd>
34864+
34865+
**user_agent:** `typing.Optional[str]` — Applies to passkeys only. The user-agent of the browser used to create the passkey.
34866+
34867+
</dd>
34868+
</dl>
34869+
34870+
<dl>
34871+
<dd>
34872+
34873+
**user_handle:** `typing.Optional[str]` — Applies to passkeys only. The user handle of the user identity.
34874+
34875+
</dd>
34876+
</dl>
34877+
34878+
<dl>
34879+
<dd>
34880+
34881+
**transports:** `typing.Optional[typing.List[str]]` — Applies to passkeys only. The transports used by clients to communicate with the authenticator.
34882+
34883+
</dd>
34884+
</dl>
34885+
34886+
<dl>
34887+
<dd>
34888+
3480934889
**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
3481034890

3481134891
</dd>

0 commit comments

Comments
 (0)