supermemory 3.0.0a21__tar.gz → 3.0.0a23__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of supermemory might be problematic. Click here for more details.

Files changed (100) hide show
  1. supermemory-3.0.0a23/.release-please-manifest.json +3 -0
  2. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/CHANGELOG.md +31 -0
  3. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/CONTRIBUTING.md +1 -1
  4. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/PKG-INFO +32 -41
  5. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/README.md +29 -39
  6. supermemory-3.0.0a23/api.md +72 -0
  7. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/mypy.ini +1 -1
  8. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/pyproject.toml +7 -6
  9. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/release-please-config.json +1 -1
  10. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/requirements-dev.lock +3 -3
  11. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/requirements.lock +3 -3
  12. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/__init__.py +2 -2
  13. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_base_client.py +10 -3
  14. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_models.py +8 -5
  15. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_response.py +4 -4
  16. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_types.py +1 -1
  17. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_utils/_logs.py +2 -2
  18. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_utils/_resources_proxy.py +4 -4
  19. supermemory-3.0.0a23/src/supermemory/_version.py +4 -0
  20. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/resources/memories.py +20 -20
  21. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/memory_add_params.py +9 -9
  22. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/memory_get_response.py +9 -3
  23. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/memory_update_params.py +9 -9
  24. supermemory-3.0.0a23/src/supermemory_new/lib/.keep +4 -0
  25. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/api_resources/test_connections.py +2 -2
  26. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/api_resources/test_memories.py +12 -32
  27. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/api_resources/test_search.py +2 -2
  28. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/api_resources/test_settings.py +2 -2
  29. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/conftest.py +3 -3
  30. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_client.py +35 -59
  31. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_deepcopy.py +1 -1
  32. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_extract_files.py +2 -2
  33. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_files.py +1 -1
  34. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_models.py +48 -3
  35. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_qs.py +1 -1
  36. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_required_args.py +1 -1
  37. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_response.py +7 -7
  38. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_streaming.py +2 -2
  39. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_transform.py +4 -4
  40. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_utils/test_proxy.py +1 -1
  41. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/test_utils/test_typing.py +1 -1
  42. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/utils.py +4 -4
  43. supermemory-3.0.0a21/.release-please-manifest.json +0 -3
  44. supermemory-3.0.0a21/api.md +0 -72
  45. supermemory-3.0.0a21/src/supermemory_new/_version.py +0 -4
  46. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/.gitignore +0 -0
  47. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/LICENSE +0 -0
  48. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/SECURITY.md +0 -0
  49. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/bin/check-release-environment +0 -0
  50. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/bin/publish-pypi +0 -0
  51. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/examples/.keep +0 -0
  52. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/noxfile.py +0 -0
  53. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_client.py +0 -0
  54. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_compat.py +0 -0
  55. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_constants.py +0 -0
  56. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_exceptions.py +0 -0
  57. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_files.py +0 -0
  58. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_qs.py +0 -0
  59. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_resource.py +0 -0
  60. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_streaming.py +0 -0
  61. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_utils/__init__.py +0 -0
  62. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_utils/_proxy.py +0 -0
  63. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_utils/_reflection.py +0 -0
  64. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_utils/_streams.py +0 -0
  65. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_utils/_sync.py +0 -0
  66. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_utils/_transform.py +0 -0
  67. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_utils/_typing.py +0 -0
  68. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/_utils/_utils.py +0 -0
  69. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/lib/.keep +0 -0
  70. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/py.typed +0 -0
  71. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/resources/__init__.py +0 -0
  72. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/resources/connections.py +0 -0
  73. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/resources/search.py +0 -0
  74. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/resources/settings.py +0 -0
  75. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/__init__.py +0 -0
  76. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_create_params.py +0 -0
  77. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_create_response.py +0 -0
  78. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_delete_by_id_response.py +0 -0
  79. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_delete_by_provider_params.py +0 -0
  80. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_delete_by_provider_response.py +0 -0
  81. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_get_by_id_response.py +0 -0
  82. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_get_by_tags_params.py +0 -0
  83. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_get_by_tags_response.py +0 -0
  84. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_import_params.py +0 -0
  85. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_list_documents_params.py +0 -0
  86. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_list_documents_response.py +0 -0
  87. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_list_params.py +0 -0
  88. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/connection_list_response.py +0 -0
  89. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/memory_add_response.py +0 -0
  90. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/memory_list_params.py +0 -0
  91. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/memory_list_response.py +0 -0
  92. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/memory_update_response.py +0 -0
  93. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/search_execute_params.py +0 -0
  94. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/search_execute_response.py +0 -0
  95. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/setting_get_response.py +0 -0
  96. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/setting_update_params.py +0 -0
  97. {supermemory-3.0.0a21/src/supermemory_new → supermemory-3.0.0a23/src/supermemory}/types/setting_update_response.py +0 -0
  98. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/__init__.py +0 -0
  99. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/api_resources/__init__.py +0 -0
  100. {supermemory-3.0.0a21 → supermemory-3.0.0a23}/tests/sample_file.txt +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "3.0.0-alpha.23"
3
+ }
@@ -1,5 +1,36 @@
1
1
  # Changelog
2
2
 
3
+ ## 3.0.0-alpha.23 (2025-07-15)
4
+
5
+ Full Changelog: [v3.0.0-alpha.22...v3.0.0-alpha.23](https://github.com/supermemoryai/python-sdk/compare/v3.0.0-alpha.22...v3.0.0-alpha.23)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([3f71f60](https://github.com/supermemoryai/python-sdk/commit/3f71f60954dedc0a91e1859df48c5c3ca0a47c88))
10
+ * **api:** api update ([b614732](https://github.com/supermemoryai/python-sdk/commit/b61473253183d434613b0aeb631376262d22cb0c))
11
+ * clean up environment call outs ([4aaccf1](https://github.com/supermemoryai/python-sdk/commit/4aaccf17ae31c04f3097fe04a6a081171fc725d1))
12
+
13
+
14
+ ### Bug Fixes
15
+
16
+ * **client:** don't send Content-Type header on GET requests ([80480dd](https://github.com/supermemoryai/python-sdk/commit/80480dd46271dc5136f39c5ff1315555b8d51e31))
17
+ * **parsing:** correctly handle nested discriminated unions ([812e982](https://github.com/supermemoryai/python-sdk/commit/812e982cbba93e197d4cd3cf8bdfa710e7830a78))
18
+
19
+
20
+ ### Chores
21
+
22
+ * **internal:** bump pinned h11 dep ([9e822a1](https://github.com/supermemoryai/python-sdk/commit/9e822a16ce8cf30791abf6384e2e3205233eeaba))
23
+ * **package:** mark python 3.13 as supported ([2dc73dd](https://github.com/supermemoryai/python-sdk/commit/2dc73dd51ac30fa4d6b2d370b7411857518c1ddd))
24
+ * **readme:** fix version rendering on pypi ([a6d7d7a](https://github.com/supermemoryai/python-sdk/commit/a6d7d7a100680cfaa03138542f60b7b7407ad347))
25
+
26
+ ## 3.0.0-alpha.22 (2025-07-03)
27
+
28
+ Full Changelog: [v3.0.0-alpha.21...v3.0.0-alpha.22](https://github.com/supermemoryai/python-sdk/compare/v3.0.0-alpha.21...v3.0.0-alpha.22)
29
+
30
+ ### Features
31
+
32
+ * **api:** manual updates ([2a863a1](https://github.com/supermemoryai/python-sdk/commit/2a863a166b5c39208ef910d84530a27898ed0c71))
33
+
3
34
  ## 3.0.0-alpha.21 (2025-07-03)
4
35
 
5
36
  Full Changelog: [v3.0.0-alpha.20...v3.0.0-alpha.21](https://github.com/supermemoryai/python-sdk/compare/v3.0.0-alpha.20...v3.0.0-alpha.21)
@@ -36,7 +36,7 @@ $ pip install -r requirements-dev.lock
36
36
 
37
37
  Most of the SDK is generated code. Modifications to code will be persisted between generations, but may
38
38
  result in merge conflicts between manual patches and changes from the generator. The generator will never
39
- modify the contents of the `src/supermemory_new/lib/` and `examples/` directories.
39
+ modify the contents of the `src/supermemory/lib/` and `examples/` directories.
40
40
 
41
41
  ## Adding and running examples
42
42
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: supermemory
3
- Version: 3.0.0a21
3
+ Version: 3.0.0a23
4
4
  Summary: The official Python library for the supermemory API
5
5
  Project-URL: Homepage, https://github.com/supermemoryai/python-sdk
6
6
  Project-URL: Repository, https://github.com/supermemoryai/python-sdk
@@ -18,6 +18,7 @@ Classifier: Programming Language :: Python :: 3.9
18
18
  Classifier: Programming Language :: Python :: 3.10
19
19
  Classifier: Programming Language :: Python :: 3.11
20
20
  Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
21
22
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
22
23
  Classifier: Typing :: Typed
23
24
  Requires-Python: >=3.8
@@ -29,12 +30,13 @@ Requires-Dist: sniffio
29
30
  Requires-Dist: typing-extensions<5,>=4.10
30
31
  Provides-Extra: aiohttp
31
32
  Requires-Dist: aiohttp; extra == 'aiohttp'
32
- Requires-Dist: httpx-aiohttp>=0.1.6; extra == 'aiohttp'
33
+ Requires-Dist: httpx-aiohttp>=0.1.8; extra == 'aiohttp'
33
34
  Description-Content-Type: text/markdown
34
35
 
35
36
  # Supermemory Python API library
36
37
 
37
- [![PyPI version](https://github.com/supermemoryai/python-sdk/tree/main/<https://img.shields.io/pypi/v/supermemory.svg?label=pypi%20(stable)>)](https://pypi.org/project/supermemory/)
38
+ <!-- prettier-ignore -->
39
+ [![PyPI version](https://img.shields.io/pypi/v/supermemory.svg?label=pypi%20(stable))](https://pypi.org/project/supermemory/)
38
40
 
39
41
  The Supermemory Python library provides convenient access to the Supermemory REST API from any Python 3.8+
40
42
  application. The library includes type definitions for all request params and response fields,
@@ -59,7 +61,7 @@ The full API of this library can be found in [api.md](https://github.com/superme
59
61
 
60
62
  ```python
61
63
  import os
62
- from supermemory_new import Supermemory
64
+ from supermemory import Supermemory
63
65
 
64
66
  client = Supermemory(
65
67
  api_key=os.environ.get("SUPERMEMORY_API_KEY"), # This is the default and can be omitted
@@ -83,7 +85,7 @@ Simply import `AsyncSupermemory` instead of `Supermemory` and use `await` with e
83
85
  ```python
84
86
  import os
85
87
  import asyncio
86
- from supermemory_new import AsyncSupermemory
88
+ from supermemory import AsyncSupermemory
87
89
 
88
90
  client = AsyncSupermemory(
89
91
  api_key=os.environ.get("SUPERMEMORY_API_KEY"), # This is the default and can be omitted
@@ -116,15 +118,14 @@ pip install --pre supermemory[aiohttp]
116
118
  Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:
117
119
 
118
120
  ```python
119
- import os
120
121
  import asyncio
121
- from supermemory_new import DefaultAioHttpClient
122
- from supermemory_new import AsyncSupermemory
122
+ from supermemory import DefaultAioHttpClient
123
+ from supermemory import AsyncSupermemory
123
124
 
124
125
 
125
126
  async def main() -> None:
126
127
  async with AsyncSupermemory(
127
- api_key=os.environ.get("SUPERMEMORY_API_KEY"), # This is the default and can be omitted
128
+ api_key="My API Key",
128
129
  http_client=DefaultAioHttpClient(),
129
130
  ) as client:
130
131
  response = await client.search.execute(
@@ -147,29 +148,27 @@ Typed requests and responses provide autocomplete and documentation within your
147
148
 
148
149
  ## Handling errors
149
150
 
150
- When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `supermemory_new.APIConnectionError` is raised.
151
+ When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `supermemory.APIConnectionError` is raised.
151
152
 
152
153
  When the API returns a non-success status code (that is, 4xx or 5xx
153
- response), a subclass of `supermemory_new.APIStatusError` is raised, containing `status_code` and `response` properties.
154
+ response), a subclass of `supermemory.APIStatusError` is raised, containing `status_code` and `response` properties.
154
155
 
155
- All errors inherit from `supermemory_new.APIError`.
156
+ All errors inherit from `supermemory.APIError`.
156
157
 
157
158
  ```python
158
- import supermemory_new
159
- from supermemory_new import Supermemory
159
+ import supermemory
160
+ from supermemory import Supermemory
160
161
 
161
162
  client = Supermemory()
162
163
 
163
164
  try:
164
- client.memories.add(
165
- content="This is a detailed article about machine learning concepts...",
166
- )
167
- except supermemory_new.APIConnectionError as e:
165
+ client.memories.add()
166
+ except supermemory.APIConnectionError as e:
168
167
  print("The server could not be reached")
169
168
  print(e.__cause__) # an underlying Exception, likely raised within httpx.
170
- except supermemory_new.RateLimitError as e:
169
+ except supermemory.RateLimitError as e:
171
170
  print("A 429 status code was received; we should back off a bit.")
172
- except supermemory_new.APIStatusError as e:
171
+ except supermemory.APIStatusError as e:
173
172
  print("Another non-200-range status code was received")
174
173
  print(e.status_code)
175
174
  print(e.response)
@@ -197,7 +196,7 @@ Connection errors (for example, due to a network connectivity problem), 408 Requ
197
196
  You can use the `max_retries` option to configure or disable retry settings:
198
197
 
199
198
  ```python
200
- from supermemory_new import Supermemory
199
+ from supermemory import Supermemory
201
200
 
202
201
  # Configure the default for all requests:
203
202
  client = Supermemory(
@@ -206,9 +205,7 @@ client = Supermemory(
206
205
  )
207
206
 
208
207
  # Or, configure per-request:
209
- client.with_options(max_retries=5).memories.add(
210
- content="This is a detailed article about machine learning concepts...",
211
- )
208
+ client.with_options(max_retries=5).memories.add()
212
209
  ```
213
210
 
214
211
  ### Timeouts
@@ -217,7 +214,7 @@ By default requests time out after 1 minute. You can configure this with a `time
217
214
  which accepts a float or an [`httpx.Timeout`](https://www.python-httpx.org/advanced/timeouts/#fine-tuning-the-configuration) object:
218
215
 
219
216
  ```python
220
- from supermemory_new import Supermemory
217
+ from supermemory import Supermemory
221
218
 
222
219
  # Configure the default for all requests:
223
220
  client = Supermemory(
@@ -231,9 +228,7 @@ client = Supermemory(
231
228
  )
232
229
 
233
230
  # Override per-request:
234
- client.with_options(timeout=5.0).memories.add(
235
- content="This is a detailed article about machine learning concepts...",
236
- )
231
+ client.with_options(timeout=5.0).memories.add()
237
232
  ```
238
233
 
239
234
  On timeout, an `APITimeoutError` is thrown.
@@ -271,21 +266,19 @@ if response.my_field is None:
271
266
  The "raw" Response object can be accessed by prefixing `.with_raw_response.` to any HTTP method call, e.g.,
272
267
 
273
268
  ```py
274
- from supermemory_new import Supermemory
269
+ from supermemory import Supermemory
275
270
 
276
271
  client = Supermemory()
277
- response = client.memories.with_raw_response.add(
278
- content="This is a detailed article about machine learning concepts...",
279
- )
272
+ response = client.memories.with_raw_response.add()
280
273
  print(response.headers.get('X-My-Header'))
281
274
 
282
275
  memory = response.parse() # get the object that `memories.add()` would have returned
283
276
  print(memory.id)
284
277
  ```
285
278
 
286
- These methods return an [`APIResponse`](https://github.com/supermemoryai/python-sdk/tree/main/src/supermemory_new/_response.py) object.
279
+ These methods return an [`APIResponse`](https://github.com/supermemoryai/python-sdk/tree/main/src/supermemory/_response.py) object.
287
280
 
288
- The async client returns an [`AsyncAPIResponse`](https://github.com/supermemoryai/python-sdk/tree/main/src/supermemory_new/_response.py) with the same structure, the only difference being `await`able methods for reading the response content.
281
+ The async client returns an [`AsyncAPIResponse`](https://github.com/supermemoryai/python-sdk/tree/main/src/supermemory/_response.py) with the same structure, the only difference being `await`able methods for reading the response content.
289
282
 
290
283
  #### `.with_streaming_response`
291
284
 
@@ -294,9 +287,7 @@ The above interface eagerly reads the full response body when you make the reque
294
287
  To stream the response body, use `.with_streaming_response` instead, which requires a context manager and only reads the response body once you call `.read()`, `.text()`, `.json()`, `.iter_bytes()`, `.iter_text()`, `.iter_lines()` or `.parse()`. In the async client, these are async methods.
295
288
 
296
289
  ```python
297
- with client.memories.with_streaming_response.add(
298
- content="This is a detailed article about machine learning concepts...",
299
- ) as response:
290
+ with client.memories.with_streaming_response.add() as response:
300
291
  print(response.headers.get("X-My-Header"))
301
292
 
302
293
  for line in response.iter_lines():
@@ -349,7 +340,7 @@ You can directly override the [httpx client](https://www.python-httpx.org/api/#c
349
340
 
350
341
  ```python
351
342
  import httpx
352
- from supermemory_new import Supermemory, DefaultHttpxClient
343
+ from supermemory import Supermemory, DefaultHttpxClient
353
344
 
354
345
  client = Supermemory(
355
346
  # Or use the `SUPERMEMORY_BASE_URL` env var
@@ -372,7 +363,7 @@ client.with_options(http_client=DefaultHttpxClient(...))
372
363
  By default the library closes underlying HTTP connections whenever the client is [garbage collected](https://docs.python.org/3/reference/datamodel.html#object.__del__). You can manually close the client using the `.close()` method if desired, or with a context manager that closes when exiting.
373
364
 
374
365
  ```py
375
- from supermemory_new import Supermemory
366
+ from supermemory import Supermemory
376
367
 
377
368
  with Supermemory() as client:
378
369
  # make requests here
@@ -400,8 +391,8 @@ If you've upgraded to the latest version but aren't seeing any new features you
400
391
  You can determine the version that is being used at runtime with:
401
392
 
402
393
  ```py
403
- import supermemory_new
404
- print(supermemory_new.__version__)
394
+ import supermemory
395
+ print(supermemory.__version__)
405
396
  ```
406
397
 
407
398
  ## Requirements
@@ -1,6 +1,7 @@
1
1
  # Supermemory Python API library
2
2
 
3
- [![PyPI version](<https://img.shields.io/pypi/v/supermemory.svg?label=pypi%20(stable)>)](https://pypi.org/project/supermemory/)
3
+ <!-- prettier-ignore -->
4
+ [![PyPI version](https://img.shields.io/pypi/v/supermemory.svg?label=pypi%20(stable))](https://pypi.org/project/supermemory/)
4
5
 
5
6
  The Supermemory Python library provides convenient access to the Supermemory REST API from any Python 3.8+
6
7
  application. The library includes type definitions for all request params and response fields,
@@ -25,7 +26,7 @@ The full API of this library can be found in [api.md](api.md).
25
26
 
26
27
  ```python
27
28
  import os
28
- from supermemory_new import Supermemory
29
+ from supermemory import Supermemory
29
30
 
30
31
  client = Supermemory(
31
32
  api_key=os.environ.get("SUPERMEMORY_API_KEY"), # This is the default and can be omitted
@@ -49,7 +50,7 @@ Simply import `AsyncSupermemory` instead of `Supermemory` and use `await` with e
49
50
  ```python
50
51
  import os
51
52
  import asyncio
52
- from supermemory_new import AsyncSupermemory
53
+ from supermemory import AsyncSupermemory
53
54
 
54
55
  client = AsyncSupermemory(
55
56
  api_key=os.environ.get("SUPERMEMORY_API_KEY"), # This is the default and can be omitted
@@ -82,15 +83,14 @@ pip install --pre supermemory[aiohttp]
82
83
  Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:
83
84
 
84
85
  ```python
85
- import os
86
86
  import asyncio
87
- from supermemory_new import DefaultAioHttpClient
88
- from supermemory_new import AsyncSupermemory
87
+ from supermemory import DefaultAioHttpClient
88
+ from supermemory import AsyncSupermemory
89
89
 
90
90
 
91
91
  async def main() -> None:
92
92
  async with AsyncSupermemory(
93
- api_key=os.environ.get("SUPERMEMORY_API_KEY"), # This is the default and can be omitted
93
+ api_key="My API Key",
94
94
  http_client=DefaultAioHttpClient(),
95
95
  ) as client:
96
96
  response = await client.search.execute(
@@ -113,29 +113,27 @@ Typed requests and responses provide autocomplete and documentation within your
113
113
 
114
114
  ## Handling errors
115
115
 
116
- When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `supermemory_new.APIConnectionError` is raised.
116
+ When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `supermemory.APIConnectionError` is raised.
117
117
 
118
118
  When the API returns a non-success status code (that is, 4xx or 5xx
119
- response), a subclass of `supermemory_new.APIStatusError` is raised, containing `status_code` and `response` properties.
119
+ response), a subclass of `supermemory.APIStatusError` is raised, containing `status_code` and `response` properties.
120
120
 
121
- All errors inherit from `supermemory_new.APIError`.
121
+ All errors inherit from `supermemory.APIError`.
122
122
 
123
123
  ```python
124
- import supermemory_new
125
- from supermemory_new import Supermemory
124
+ import supermemory
125
+ from supermemory import Supermemory
126
126
 
127
127
  client = Supermemory()
128
128
 
129
129
  try:
130
- client.memories.add(
131
- content="This is a detailed article about machine learning concepts...",
132
- )
133
- except supermemory_new.APIConnectionError as e:
130
+ client.memories.add()
131
+ except supermemory.APIConnectionError as e:
134
132
  print("The server could not be reached")
135
133
  print(e.__cause__) # an underlying Exception, likely raised within httpx.
136
- except supermemory_new.RateLimitError as e:
134
+ except supermemory.RateLimitError as e:
137
135
  print("A 429 status code was received; we should back off a bit.")
138
- except supermemory_new.APIStatusError as e:
136
+ except supermemory.APIStatusError as e:
139
137
  print("Another non-200-range status code was received")
140
138
  print(e.status_code)
141
139
  print(e.response)
@@ -163,7 +161,7 @@ Connection errors (for example, due to a network connectivity problem), 408 Requ
163
161
  You can use the `max_retries` option to configure or disable retry settings:
164
162
 
165
163
  ```python
166
- from supermemory_new import Supermemory
164
+ from supermemory import Supermemory
167
165
 
168
166
  # Configure the default for all requests:
169
167
  client = Supermemory(
@@ -172,9 +170,7 @@ client = Supermemory(
172
170
  )
173
171
 
174
172
  # Or, configure per-request:
175
- client.with_options(max_retries=5).memories.add(
176
- content="This is a detailed article about machine learning concepts...",
177
- )
173
+ client.with_options(max_retries=5).memories.add()
178
174
  ```
179
175
 
180
176
  ### Timeouts
@@ -183,7 +179,7 @@ By default requests time out after 1 minute. You can configure this with a `time
183
179
  which accepts a float or an [`httpx.Timeout`](https://www.python-httpx.org/advanced/timeouts/#fine-tuning-the-configuration) object:
184
180
 
185
181
  ```python
186
- from supermemory_new import Supermemory
182
+ from supermemory import Supermemory
187
183
 
188
184
  # Configure the default for all requests:
189
185
  client = Supermemory(
@@ -197,9 +193,7 @@ client = Supermemory(
197
193
  )
198
194
 
199
195
  # Override per-request:
200
- client.with_options(timeout=5.0).memories.add(
201
- content="This is a detailed article about machine learning concepts...",
202
- )
196
+ client.with_options(timeout=5.0).memories.add()
203
197
  ```
204
198
 
205
199
  On timeout, an `APITimeoutError` is thrown.
@@ -237,21 +231,19 @@ if response.my_field is None:
237
231
  The "raw" Response object can be accessed by prefixing `.with_raw_response.` to any HTTP method call, e.g.,
238
232
 
239
233
  ```py
240
- from supermemory_new import Supermemory
234
+ from supermemory import Supermemory
241
235
 
242
236
  client = Supermemory()
243
- response = client.memories.with_raw_response.add(
244
- content="This is a detailed article about machine learning concepts...",
245
- )
237
+ response = client.memories.with_raw_response.add()
246
238
  print(response.headers.get('X-My-Header'))
247
239
 
248
240
  memory = response.parse() # get the object that `memories.add()` would have returned
249
241
  print(memory.id)
250
242
  ```
251
243
 
252
- These methods return an [`APIResponse`](https://github.com/supermemoryai/python-sdk/tree/main/src/supermemory_new/_response.py) object.
244
+ These methods return an [`APIResponse`](https://github.com/supermemoryai/python-sdk/tree/main/src/supermemory/_response.py) object.
253
245
 
254
- The async client returns an [`AsyncAPIResponse`](https://github.com/supermemoryai/python-sdk/tree/main/src/supermemory_new/_response.py) with the same structure, the only difference being `await`able methods for reading the response content.
246
+ The async client returns an [`AsyncAPIResponse`](https://github.com/supermemoryai/python-sdk/tree/main/src/supermemory/_response.py) with the same structure, the only difference being `await`able methods for reading the response content.
255
247
 
256
248
  #### `.with_streaming_response`
257
249
 
@@ -260,9 +252,7 @@ The above interface eagerly reads the full response body when you make the reque
260
252
  To stream the response body, use `.with_streaming_response` instead, which requires a context manager and only reads the response body once you call `.read()`, `.text()`, `.json()`, `.iter_bytes()`, `.iter_text()`, `.iter_lines()` or `.parse()`. In the async client, these are async methods.
261
253
 
262
254
  ```python
263
- with client.memories.with_streaming_response.add(
264
- content="This is a detailed article about machine learning concepts...",
265
- ) as response:
255
+ with client.memories.with_streaming_response.add() as response:
266
256
  print(response.headers.get("X-My-Header"))
267
257
 
268
258
  for line in response.iter_lines():
@@ -315,7 +305,7 @@ You can directly override the [httpx client](https://www.python-httpx.org/api/#c
315
305
 
316
306
  ```python
317
307
  import httpx
318
- from supermemory_new import Supermemory, DefaultHttpxClient
308
+ from supermemory import Supermemory, DefaultHttpxClient
319
309
 
320
310
  client = Supermemory(
321
311
  # Or use the `SUPERMEMORY_BASE_URL` env var
@@ -338,7 +328,7 @@ client.with_options(http_client=DefaultHttpxClient(...))
338
328
  By default the library closes underlying HTTP connections whenever the client is [garbage collected](https://docs.python.org/3/reference/datamodel.html#object.__del__). You can manually close the client using the `.close()` method if desired, or with a context manager that closes when exiting.
339
329
 
340
330
  ```py
341
- from supermemory_new import Supermemory
331
+ from supermemory import Supermemory
342
332
 
343
333
  with Supermemory() as client:
344
334
  # make requests here
@@ -366,8 +356,8 @@ If you've upgraded to the latest version but aren't seeing any new features you
366
356
  You can determine the version that is being used at runtime with:
367
357
 
368
358
  ```py
369
- import supermemory_new
370
- print(supermemory_new.__version__)
359
+ import supermemory
360
+ print(supermemory.__version__)
371
361
  ```
372
362
 
373
363
  ## Requirements
@@ -0,0 +1,72 @@
1
+ # Memories
2
+
3
+ Types:
4
+
5
+ ```python
6
+ from supermemory.types import (
7
+ MemoryUpdateResponse,
8
+ MemoryListResponse,
9
+ MemoryAddResponse,
10
+ MemoryGetResponse,
11
+ )
12
+ ```
13
+
14
+ Methods:
15
+
16
+ - <code title="patch /v3/memories/{id}">client.memories.<a href="./src/supermemory/resources/memories.py">update</a>(id, \*\*<a href="src/supermemory/types/memory_update_params.py">params</a>) -> <a href="./src/supermemory/types/memory_update_response.py">MemoryUpdateResponse</a></code>
17
+ - <code title="post /v3/memories/list">client.memories.<a href="./src/supermemory/resources/memories.py">list</a>(\*\*<a href="src/supermemory/types/memory_list_params.py">params</a>) -> <a href="./src/supermemory/types/memory_list_response.py">MemoryListResponse</a></code>
18
+ - <code title="delete /v3/memories/{id}">client.memories.<a href="./src/supermemory/resources/memories.py">delete</a>(id) -> None</code>
19
+ - <code title="post /v3/memories">client.memories.<a href="./src/supermemory/resources/memories.py">add</a>(\*\*<a href="src/supermemory/types/memory_add_params.py">params</a>) -> <a href="./src/supermemory/types/memory_add_response.py">MemoryAddResponse</a></code>
20
+ - <code title="get /v3/memories/{id}">client.memories.<a href="./src/supermemory/resources/memories.py">get</a>(id) -> <a href="./src/supermemory/types/memory_get_response.py">MemoryGetResponse</a></code>
21
+
22
+ # Search
23
+
24
+ Types:
25
+
26
+ ```python
27
+ from supermemory.types import SearchExecuteResponse
28
+ ```
29
+
30
+ Methods:
31
+
32
+ - <code title="post /v3/search">client.search.<a href="./src/supermemory/resources/search.py">execute</a>(\*\*<a href="src/supermemory/types/search_execute_params.py">params</a>) -> <a href="./src/supermemory/types/search_execute_response.py">SearchExecuteResponse</a></code>
33
+
34
+ # Settings
35
+
36
+ Types:
37
+
38
+ ```python
39
+ from supermemory.types import SettingUpdateResponse, SettingGetResponse
40
+ ```
41
+
42
+ Methods:
43
+
44
+ - <code title="patch /v3/settings">client.settings.<a href="./src/supermemory/resources/settings.py">update</a>(\*\*<a href="src/supermemory/types/setting_update_params.py">params</a>) -> <a href="./src/supermemory/types/setting_update_response.py">SettingUpdateResponse</a></code>
45
+ - <code title="get /v3/settings">client.settings.<a href="./src/supermemory/resources/settings.py">get</a>() -> <a href="./src/supermemory/types/setting_get_response.py">SettingGetResponse</a></code>
46
+
47
+ # Connections
48
+
49
+ Types:
50
+
51
+ ```python
52
+ from supermemory.types import (
53
+ ConnectionCreateResponse,
54
+ ConnectionListResponse,
55
+ ConnectionDeleteByIDResponse,
56
+ ConnectionDeleteByProviderResponse,
57
+ ConnectionGetByIDResponse,
58
+ ConnectionGetByTagsResponse,
59
+ ConnectionListDocumentsResponse,
60
+ )
61
+ ```
62
+
63
+ Methods:
64
+
65
+ - <code title="post /v3/connections/{provider}">client.connections.<a href="./src/supermemory/resources/connections.py">create</a>(provider, \*\*<a href="src/supermemory/types/connection_create_params.py">params</a>) -> <a href="./src/supermemory/types/connection_create_response.py">ConnectionCreateResponse</a></code>
66
+ - <code title="post /v3/connections/list">client.connections.<a href="./src/supermemory/resources/connections.py">list</a>(\*\*<a href="src/supermemory/types/connection_list_params.py">params</a>) -> <a href="./src/supermemory/types/connection_list_response.py">ConnectionListResponse</a></code>
67
+ - <code title="delete /v3/connections/{connectionId}">client.connections.<a href="./src/supermemory/resources/connections.py">delete_by_id</a>(connection_id) -> <a href="./src/supermemory/types/connection_delete_by_id_response.py">ConnectionDeleteByIDResponse</a></code>
68
+ - <code title="delete /v3/connections/{provider}">client.connections.<a href="./src/supermemory/resources/connections.py">delete_by_provider</a>(provider, \*\*<a href="src/supermemory/types/connection_delete_by_provider_params.py">params</a>) -> <a href="./src/supermemory/types/connection_delete_by_provider_response.py">ConnectionDeleteByProviderResponse</a></code>
69
+ - <code title="get /v3/connections/{connectionId}">client.connections.<a href="./src/supermemory/resources/connections.py">get_by_id</a>(connection_id) -> <a href="./src/supermemory/types/connection_get_by_id_response.py">ConnectionGetByIDResponse</a></code>
70
+ - <code title="post /v3/connections/{provider}/connection">client.connections.<a href="./src/supermemory/resources/connections.py">get_by_tags</a>(provider, \*\*<a href="src/supermemory/types/connection_get_by_tags_params.py">params</a>) -> <a href="./src/supermemory/types/connection_get_by_tags_response.py">ConnectionGetByTagsResponse</a></code>
71
+ - <code title="post /v3/connections/{provider}/import">client.connections.<a href="./src/supermemory/resources/connections.py">import\_</a>(provider, \*\*<a href="src/supermemory/types/connection_import_params.py">params</a>) -> None</code>
72
+ - <code title="post /v3/connections/{provider}/documents">client.connections.<a href="./src/supermemory/resources/connections.py">list_documents</a>(provider, \*\*<a href="src/supermemory/types/connection_list_documents_params.py">params</a>) -> <a href="./src/supermemory/types/connection_list_documents_response.py">ConnectionListDocumentsResponse</a></code>
@@ -8,7 +8,7 @@ show_error_codes = True
8
8
  #
9
9
  # We also exclude our `tests` as mypy doesn't always infer
10
10
  # types correctly and Pyright will still catch any type errors.
11
- exclude = ^(src/supermemory_new/_files\.py|_dev/.*\.py|tests/.*)$
11
+ exclude = ^(src/supermemory/_files\.py|_dev/.*\.py|tests/.*)$
12
12
 
13
13
  strict_equality = True
14
14
  implicit_reexport = True
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "supermemory"
3
- version = "3.0.0-alpha.21"
3
+ version = "3.0.0-alpha.23"
4
4
  description = "The official Python library for the supermemory API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -24,6 +24,7 @@ classifiers = [
24
24
  "Programming Language :: Python :: 3.10",
25
25
  "Programming Language :: Python :: 3.11",
26
26
  "Programming Language :: Python :: 3.12",
27
+ "Programming Language :: Python :: 3.13",
27
28
  "Operating System :: OS Independent",
28
29
  "Operating System :: POSIX",
29
30
  "Operating System :: MacOS",
@@ -38,7 +39,7 @@ Homepage = "https://github.com/supermemoryai/python-sdk"
38
39
  Repository = "https://github.com/supermemoryai/python-sdk"
39
40
 
40
41
  [project.optional-dependencies]
41
- aiohttp = ["aiohttp", "httpx_aiohttp>=0.1.6"]
42
+ aiohttp = ["aiohttp", "httpx_aiohttp>=0.1.8"]
42
43
 
43
44
  [tool.rye]
44
45
  managed = true
@@ -78,14 +79,14 @@ format = { chain = [
78
79
  "check:ruff" = "ruff check ."
79
80
  "fix:ruff" = "ruff check --fix ."
80
81
 
81
- "check:importable" = "python -c 'import supermemory_new'"
82
+ "check:importable" = "python -c 'import supermemory'"
82
83
 
83
84
  typecheck = { chain = [
84
85
  "typecheck:pyright",
85
86
  "typecheck:mypy"
86
87
  ]}
87
88
  "typecheck:pyright" = "pyright"
88
- "typecheck:verify-types" = "pyright --verifytypes supermemory_new --ignoreexternal"
89
+ "typecheck:verify-types" = "pyright --verifytypes supermemory --ignoreexternal"
89
90
  "typecheck:mypy" = "mypy ."
90
91
 
91
92
  [build-system]
@@ -98,7 +99,7 @@ include = [
98
99
  ]
99
100
 
100
101
  [tool.hatch.build.targets.wheel]
101
- packages = ["src/supermemory_new"]
102
+ packages = ["src/supermemory"]
102
103
 
103
104
  [tool.hatch.build.targets.sdist]
104
105
  # Basically everything except hidden files/directories (such as .github, .devcontainers, .python-version, etc)
@@ -201,7 +202,7 @@ length-sort = true
201
202
  length-sort-straight = true
202
203
  combine-as-imports = true
203
204
  extra-standard-library = ["typing_extensions"]
204
- known-first-party = ["supermemory_new", "tests"]
205
+ known-first-party = ["supermemory", "tests"]
205
206
 
206
207
  [tool.ruff.lint.per-file-ignores]
207
208
  "bin/**.py" = ["T201", "T203"]
@@ -61,6 +61,6 @@
61
61
  ],
62
62
  "release-type": "python",
63
63
  "extra-files": [
64
- "src/supermemory_new/_version.py"
64
+ "src/supermemory/_version.py"
65
65
  ]
66
66
  }
@@ -48,15 +48,15 @@ filelock==3.12.4
48
48
  frozenlist==1.6.2
49
49
  # via aiohttp
50
50
  # via aiosignal
51
- h11==0.14.0
51
+ h11==0.16.0
52
52
  # via httpcore
53
- httpcore==1.0.2
53
+ httpcore==1.0.9
54
54
  # via httpx
55
55
  httpx==0.28.1
56
56
  # via httpx-aiohttp
57
57
  # via respx
58
58
  # via supermemory
59
- httpx-aiohttp==0.1.6
59
+ httpx-aiohttp==0.1.8
60
60
  # via supermemory
61
61
  idna==3.4
62
62
  # via anyio
@@ -36,14 +36,14 @@ exceptiongroup==1.2.2
36
36
  frozenlist==1.6.2
37
37
  # via aiohttp
38
38
  # via aiosignal
39
- h11==0.14.0
39
+ h11==0.16.0
40
40
  # via httpcore
41
- httpcore==1.0.2
41
+ httpcore==1.0.9
42
42
  # via httpx
43
43
  httpx==0.28.1
44
44
  # via httpx-aiohttp
45
45
  # via supermemory
46
- httpx-aiohttp==0.1.6
46
+ httpx-aiohttp==0.1.8
47
47
  # via supermemory
48
48
  idna==3.4
49
49
  # via anyio
@@ -89,12 +89,12 @@ _setup_logging()
89
89
  # Update the __module__ attribute for exported symbols so that
90
90
  # error messages point to this module instead of the module
91
91
  # it was originally defined in, e.g.
92
- # supermemory_new._exceptions.NotFoundError -> supermemory_new.NotFoundError
92
+ # supermemory._exceptions.NotFoundError -> supermemory.NotFoundError
93
93
  __locals = locals()
94
94
  for __name in __all__:
95
95
  if not __name.startswith("__"):
96
96
  try:
97
- __locals[__name].__module__ = "supermemory_new"
97
+ __locals[__name].__module__ = "supermemory"
98
98
  except (TypeError, AttributeError):
99
99
  # Some of our exported symbols are builtins which we can't set attributes for.
100
100
  pass