Skip to content

Commit 2984bf2

Browse files
authored
Merge pull request #55 from openintegrations/release-please--branches--main--changes--next
release: 1.3.0
2 parents 7ab24ff + 62ea5ae commit 2984bf2

File tree

9 files changed

+132
-271
lines changed

9 files changed

+132
-271
lines changed

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "1.2.0"
2+
".": "1.3.0"
33
}

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 9
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openint%2Fopenint-f0038c91e290e6ffce873f627e8fb548c35aea1d7fa2e317997b151c159049e3.yml
3-
openapi_spec_hash: 735905a92f106aae48c80635729f44c1
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openint%2Fopenint-573ba7bb24acb12f9769960c0d801cd5e6d9522993d27f66c5c10c9e6588ea0e.yml
3+
openapi_spec_hash: db9d90654bbdc3d6280c4a4c752a08ed
44
config_hash: 3745e90e1c879ca82ecfade8dfd108df

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# Changelog
22

3+
## 1.3.0 (2025-04-03)
4+
5+
Full Changelog: [v1.2.0...v1.3.0](https://github.com/openintegrations/python-sdk/compare/v1.2.0...v1.3.0)
6+
7+
### Features
8+
9+
* **docs:** updating documented docs for stainless ([#54](https://github.com/openintegrations/python-sdk/issues/54)) ([246ab15](https://github.com/openintegrations/python-sdk/commit/246ab159d469fb878f55f23d1df30605f5c2dbec))
10+
311
## 1.2.0 (2025-04-02)
412

513
Full Changelog: [v1.1.0...v1.2.0](https://github.com/openintegrations/python-sdk/compare/v1.1.0...v1.2.0)

README.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,31 @@ Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typ
7373

7474
Typed requests and responses provide autocomplete and documentation within your editor. If you would like to see type errors in VS Code to help catch bugs earlier, set `python.analysis.typeCheckingMode` to `basic`.
7575

76+
## Nested params
77+
78+
Nested parameters are dictionaries, typed using `TypedDict`, for example:
79+
80+
```python
81+
from openint import Openint
82+
83+
client = Openint()
84+
85+
response = client.create_magic_link(
86+
customer_id="x",
87+
client_options={
88+
"minus_background": "--background",
89+
"minus_card": "--card",
90+
"minus_card_foreground": "--card-foreground",
91+
"minus_foreground": "--foreground",
92+
"minus_primary": "--primary",
93+
"connector_name": "plaid",
94+
"debug": True,
95+
"tab": "my-connections",
96+
},
97+
)
98+
print(response.client_options)
99+
```
100+
76101
## Handling errors
77102

78103
When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `openint.APIConnectionError` is raised.

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "openint"
3-
version = "1.2.0"
3+
version = "1.3.0"
44
description = "The official Python library for the Openint API"
55
dynamic = ["readme"]
66
license = "Apache-2.0"

src/openint/_client.py

Lines changed: 34 additions & 174 deletions
Original file line numberDiff line numberDiff line change
@@ -327,71 +327,8 @@ def create_magic_link(
327327
self,
328328
customer_id: str,
329329
*,
330-
connection_id: str | NotGiven = NOT_GIVEN,
331-
connector_names: List[
332-
Literal[
333-
"aircall",
334-
"airtable",
335-
"apollo",
336-
"brex",
337-
"coda",
338-
"confluence",
339-
"discord",
340-
"facebook",
341-
"finch",
342-
"firebase",
343-
"foreceipt",
344-
"github",
345-
"gong",
346-
"googlecalendar",
347-
"googledocs",
348-
"googledrive",
349-
"googlemail",
350-
"googlesheet",
351-
"greenhouse",
352-
"heron",
353-
"hubspot",
354-
"instagram",
355-
"intercom",
356-
"jira",
357-
"kustomer",
358-
"lever",
359-
"linear",
360-
"linkedin",
361-
"lunchmoney",
362-
"merge",
363-
"microsoft",
364-
"moota",
365-
"notion",
366-
"onebrick",
367-
"outreach",
368-
"pipedrive",
369-
"plaid",
370-
"quickbooks",
371-
"ramp",
372-
"reddit",
373-
"salesforce",
374-
"salesloft",
375-
"saltedge",
376-
"sharepointonline",
377-
"slack",
378-
"splitwise",
379-
"stripe",
380-
"teller",
381-
"toggl",
382-
"twenty",
383-
"twitter",
384-
"wise",
385-
"xero",
386-
"yodlee",
387-
"zohodesk",
388-
]
389-
]
390-
| NotGiven = NOT_GIVEN,
391-
redirect_url: str | NotGiven = NOT_GIVEN,
392-
theme: Literal["light", "dark"] | NotGiven = NOT_GIVEN,
330+
client_options: client_create_magic_link_params.ClientOptions | NotGiven = NOT_GIVEN,
393331
validity_in_seconds: float | NotGiven = NOT_GIVEN,
394-
view: Literal["manage", "manage-deeplink", "add", "add-deeplink"] | NotGiven = NOT_GIVEN,
395332
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
396333
# The extra values given here take precedence over values defined on the client or passed to this method.
397334
extra_headers: Headers | None = None,
@@ -400,24 +337,15 @@ def create_magic_link(
400337
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
401338
) -> CreateMagicLinkResponse:
402339
"""
403-
Create a magic link for connecting integrations
340+
Create a magic link that is ready to be shared with customers who want to use
341+
Connect
404342
405343
Args:
406-
customer_id: The id of the customer in your application. Ensure it is unique for that
407-
customer.
408-
409-
connection_id: The specific connection id to load
410-
411-
connector_names: Filter integrations by connector names
412-
413-
redirect_url: Where to send user to after connect / if they press back button
414-
415-
theme: Magic Link display theme
344+
client_options: Search params to configure the connect page. Not signed as part of JWT and
345+
therefore can be modified by client
416346
417347
validity_in_seconds: How long the magic link will be valid for (in seconds) before it expires
418348
419-
view: Magic Link tab view to load in the connect magic link
420-
421349
extra_headers: Send extra headers
422350
423351
extra_query: Add additional query parameters to the request
@@ -432,12 +360,8 @@ def create_magic_link(
432360
f"/customer/{customer_id}/magic-link",
433361
body=maybe_transform(
434362
{
435-
"connection_id": connection_id,
436-
"connector_names": connector_names,
437-
"redirect_url": redirect_url,
438-
"theme": theme,
363+
"client_options": client_options,
439364
"validity_in_seconds": validity_in_seconds,
440-
"view": view,
441365
},
442366
client_create_magic_link_params.ClientCreateMagicLinkParams,
443367
),
@@ -459,8 +383,10 @@ def create_token(
459383
extra_body: Body | None = None,
460384
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
461385
) -> CreateTokenResponse:
462-
"""
463-
Create an authentication token for a customer
386+
"""Create a @Connect authentication token for a customer.
387+
388+
This token can be used to
389+
embed @Connect in your application via the `@openint/connect` npm package.
464390
465391
Args:
466392
customer_id: The id of the customer in your application. Ensure it is unique for that
@@ -674,7 +600,8 @@ def list_connection_configs(
674600
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
675601
) -> SyncOffsetPagination[ListConnectionConfigsResponse]:
676602
"""
677-
List all connector configurations
603+
List the connectors that are configured in your account and available for your
604+
customers
678605
679606
Args:
680607
connector_name: The name of the connector
@@ -792,8 +719,11 @@ def list_connections(
792719
extra_body: Body | None = None,
793720
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
794721
) -> SyncOffsetPagination[ListConnectionsResponse]:
795-
"""
796-
List all connections with optional filtering
722+
"""List all connections with optional filtering.
723+
724+
Does not retrieve secrets or
725+
perform any connection healthcheck. For that use `getConnection` or
726+
`checkConnectionHealth`.
797727
798728
Args:
799729
connector_config_id: The id of the connector config, starts with `ccfg_`
@@ -1136,71 +1066,8 @@ async def create_magic_link(
11361066
self,
11371067
customer_id: str,
11381068
*,
1139-
connection_id: str | NotGiven = NOT_GIVEN,
1140-
connector_names: List[
1141-
Literal[
1142-
"aircall",
1143-
"airtable",
1144-
"apollo",
1145-
"brex",
1146-
"coda",
1147-
"confluence",
1148-
"discord",
1149-
"facebook",
1150-
"finch",
1151-
"firebase",
1152-
"foreceipt",
1153-
"github",
1154-
"gong",
1155-
"googlecalendar",
1156-
"googledocs",
1157-
"googledrive",
1158-
"googlemail",
1159-
"googlesheet",
1160-
"greenhouse",
1161-
"heron",
1162-
"hubspot",
1163-
"instagram",
1164-
"intercom",
1165-
"jira",
1166-
"kustomer",
1167-
"lever",
1168-
"linear",
1169-
"linkedin",
1170-
"lunchmoney",
1171-
"merge",
1172-
"microsoft",
1173-
"moota",
1174-
"notion",
1175-
"onebrick",
1176-
"outreach",
1177-
"pipedrive",
1178-
"plaid",
1179-
"quickbooks",
1180-
"ramp",
1181-
"reddit",
1182-
"salesforce",
1183-
"salesloft",
1184-
"saltedge",
1185-
"sharepointonline",
1186-
"slack",
1187-
"splitwise",
1188-
"stripe",
1189-
"teller",
1190-
"toggl",
1191-
"twenty",
1192-
"twitter",
1193-
"wise",
1194-
"xero",
1195-
"yodlee",
1196-
"zohodesk",
1197-
]
1198-
]
1199-
| NotGiven = NOT_GIVEN,
1200-
redirect_url: str | NotGiven = NOT_GIVEN,
1201-
theme: Literal["light", "dark"] | NotGiven = NOT_GIVEN,
1069+
client_options: client_create_magic_link_params.ClientOptions | NotGiven = NOT_GIVEN,
12021070
validity_in_seconds: float | NotGiven = NOT_GIVEN,
1203-
view: Literal["manage", "manage-deeplink", "add", "add-deeplink"] | NotGiven = NOT_GIVEN,
12041071
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
12051072
# The extra values given here take precedence over values defined on the client or passed to this method.
12061073
extra_headers: Headers | None = None,
@@ -1209,24 +1076,15 @@ async def create_magic_link(
12091076
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
12101077
) -> CreateMagicLinkResponse:
12111078
"""
1212-
Create a magic link for connecting integrations
1079+
Create a magic link that is ready to be shared with customers who want to use
1080+
Connect
12131081
12141082
Args:
1215-
customer_id: The id of the customer in your application. Ensure it is unique for that
1216-
customer.
1217-
1218-
connection_id: The specific connection id to load
1219-
1220-
connector_names: Filter integrations by connector names
1221-
1222-
redirect_url: Where to send user to after connect / if they press back button
1223-
1224-
theme: Magic Link display theme
1083+
client_options: Search params to configure the connect page. Not signed as part of JWT and
1084+
therefore can be modified by client
12251085
12261086
validity_in_seconds: How long the magic link will be valid for (in seconds) before it expires
12271087
1228-
view: Magic Link tab view to load in the connect magic link
1229-
12301088
extra_headers: Send extra headers
12311089
12321090
extra_query: Add additional query parameters to the request
@@ -1241,12 +1099,8 @@ async def create_magic_link(
12411099
f"/customer/{customer_id}/magic-link",
12421100
body=await async_maybe_transform(
12431101
{
1244-
"connection_id": connection_id,
1245-
"connector_names": connector_names,
1246-
"redirect_url": redirect_url,
1247-
"theme": theme,
1102+
"client_options": client_options,
12481103
"validity_in_seconds": validity_in_seconds,
1249-
"view": view,
12501104
},
12511105
client_create_magic_link_params.ClientCreateMagicLinkParams,
12521106
),
@@ -1268,8 +1122,10 @@ async def create_token(
12681122
extra_body: Body | None = None,
12691123
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
12701124
) -> CreateTokenResponse:
1271-
"""
1272-
Create an authentication token for a customer
1125+
"""Create a @Connect authentication token for a customer.
1126+
1127+
This token can be used to
1128+
embed @Connect in your application via the `@openint/connect` npm package.
12731129
12741130
Args:
12751131
customer_id: The id of the customer in your application. Ensure it is unique for that
@@ -1483,7 +1339,8 @@ def list_connection_configs(
14831339
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
14841340
) -> AsyncPaginator[ListConnectionConfigsResponse, AsyncOffsetPagination[ListConnectionConfigsResponse]]:
14851341
"""
1486-
List all connector configurations
1342+
List the connectors that are configured in your account and available for your
1343+
customers
14871344
14881345
Args:
14891346
connector_name: The name of the connector
@@ -1601,8 +1458,11 @@ def list_connections(
16011458
extra_body: Body | None = None,
16021459
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
16031460
) -> AsyncPaginator[ListConnectionsResponse, AsyncOffsetPagination[ListConnectionsResponse]]:
1604-
"""
1605-
List all connections with optional filtering
1461+
"""List all connections with optional filtering.
1462+
1463+
Does not retrieve secrets or
1464+
perform any connection healthcheck. For that use `getConnection` or
1465+
`checkConnectionHealth`.
16061466
16071467
Args:
16081468
connector_config_id: The id of the connector config, starts with `ccfg_`

src/openint/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
22

33
__title__ = "openint"
4-
__version__ = "1.2.0" # x-release-please-version
4+
__version__ = "1.3.0" # x-release-please-version

0 commit comments

Comments
 (0)