Skip to content

Commit 458012e

Browse files
feat: feat(ai_search): RAG-934 add namespace endpoints and remove non-namespaced items (prod)
* fix(workers): RAG-934 enable terraform for dispatch namespaces * fix(workers_for_platforms): restore dispatch namespaces correct indentation * feat(ai_search): skip terraform on namespaces instances jobs and items * feat(ai_search): fix move endpoint path and skip terraform on namespaces instances * feat(ai_search): skip terraform generation for namespaces * fix(ai_search): correct indentation and rename edit to move * feat(ai_search): add namespace endpoints and remove non-namespaced items
1 parent de3711e commit 458012e

File tree

67 files changed

+14760
-2
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+14760
-2
lines changed

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
configured_endpoints: 2134
1+
configured_endpoints: 2163
22
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-0e49d1dc0490c869be746d59e3e82fa07c02edae5f9b421033c9b94807974de6.yml
33
openapi_spec_hash: 6858d3cd0d37b23dac9544a532a19d82
4-
config_hash: 591b4fc9102b68593471cf59ef305cb8
4+
config_hash: af8ba8b08f4bcb84f6007acfbdc0671c

api.md

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11200,6 +11200,111 @@ Methods:
1120011200

1120111201
# AISearch
1120211202

11203+
## Namespaces
11204+
11205+
Types:
11206+
11207+
```python
11208+
from cloudflare.types.aisearch import (
11209+
NamespaceCreateResponse,
11210+
NamespaceUpdateResponse,
11211+
NamespaceListResponse,
11212+
NamespaceDeleteResponse,
11213+
NamespaceChatCompletionsResponse,
11214+
NamespaceReadResponse,
11215+
NamespaceSearchResponse,
11216+
)
11217+
```
11218+
11219+
Methods:
11220+
11221+
- <code title="post /accounts/{account_id}/ai-search/namespaces">client.aisearch.namespaces.<a href="./src/cloudflare/resources/aisearch/namespaces/namespaces.py">create</a>(\*, account_id, \*\*<a href="src/cloudflare/types/aisearch/namespace_create_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespace_create_response.py">NamespaceCreateResponse</a></code>
11222+
- <code title="put /accounts/{account_id}/ai-search/namespaces/{name}">client.aisearch.namespaces.<a href="./src/cloudflare/resources/aisearch/namespaces/namespaces.py">update</a>(name, \*, account_id, \*\*<a href="src/cloudflare/types/aisearch/namespace_update_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespace_update_response.py">NamespaceUpdateResponse</a></code>
11223+
- <code title="get /accounts/{account_id}/ai-search/namespaces">client.aisearch.namespaces.<a href="./src/cloudflare/resources/aisearch/namespaces/namespaces.py">list</a>(\*, account_id, \*\*<a href="src/cloudflare/types/aisearch/namespace_list_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespace_list_response.py">SyncV4PagePaginationArray[NamespaceListResponse]</a></code>
11224+
- <code title="delete /accounts/{account_id}/ai-search/namespaces/{name}">client.aisearch.namespaces.<a href="./src/cloudflare/resources/aisearch/namespaces/namespaces.py">delete</a>(name, \*, account_id) -> <a href="./src/cloudflare/types/aisearch/namespace_delete_response.py">NamespaceDeleteResponse</a></code>
11225+
- <code title="post /accounts/{account_id}/ai-search/namespaces/{name}/chat/completions">client.aisearch.namespaces.<a href="./src/cloudflare/resources/aisearch/namespaces/namespaces.py">chat_completions</a>(name, \*, account_id, \*\*<a href="src/cloudflare/types/aisearch/namespace_chat_completions_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespace_chat_completions_response.py">NamespaceChatCompletionsResponse</a></code>
11226+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}">client.aisearch.namespaces.<a href="./src/cloudflare/resources/aisearch/namespaces/namespaces.py">read</a>(name, \*, account_id) -> <a href="./src/cloudflare/types/aisearch/namespace_read_response.py">NamespaceReadResponse</a></code>
11227+
- <code title="post /accounts/{account_id}/ai-search/namespaces/{name}/search">client.aisearch.namespaces.<a href="./src/cloudflare/resources/aisearch/namespaces/namespaces.py">search</a>(name, \*, account_id, \*\*<a href="src/cloudflare/types/aisearch/namespace_search_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespace_search_response.py">NamespaceSearchResponse</a></code>
11228+
11229+
### Instances
11230+
11231+
Types:
11232+
11233+
```python
11234+
from cloudflare.types.aisearch.namespaces import (
11235+
InstanceCreateResponse,
11236+
InstanceUpdateResponse,
11237+
InstanceListResponse,
11238+
InstanceDeleteResponse,
11239+
InstanceChatCompletionsResponse,
11240+
InstanceReadResponse,
11241+
InstanceSearchResponse,
11242+
InstanceStatsResponse,
11243+
)
11244+
```
11245+
11246+
Methods:
11247+
11248+
- <code title="post /accounts/{account_id}/ai-search/namespaces/{name}/instances">client.aisearch.namespaces.instances.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/instances.py">create</a>(name, \*, account_id, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instance_create_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instance_create_response.py">InstanceCreateResponse</a></code>
11249+
- <code title="put /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}">client.aisearch.namespaces.instances.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/instances.py">update</a>(id, \*, account_id, name, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instance_update_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instance_update_response.py">InstanceUpdateResponse</a></code>
11250+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances">client.aisearch.namespaces.instances.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/instances.py">list</a>(name, \*, account_id, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instance_list_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instance_list_response.py">SyncV4PagePaginationArray[InstanceListResponse]</a></code>
11251+
- <code title="delete /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}">client.aisearch.namespaces.instances.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/instances.py">delete</a>(id, \*, account_id, name) -> <a href="./src/cloudflare/types/aisearch/namespaces/instance_delete_response.py">InstanceDeleteResponse</a></code>
11252+
- <code title="post /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/chat/completions">client.aisearch.namespaces.instances.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/instances.py">chat_completions</a>(id, \*, account_id, name, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instance_chat_completions_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instance_chat_completions_response.py">InstanceChatCompletionsResponse</a></code>
11253+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}">client.aisearch.namespaces.instances.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/instances.py">read</a>(id, \*, account_id, name) -> <a href="./src/cloudflare/types/aisearch/namespaces/instance_read_response.py">InstanceReadResponse</a></code>
11254+
- <code title="post /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/search">client.aisearch.namespaces.instances.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/instances.py">search</a>(id, \*, account_id, name, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instance_search_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instance_search_response.py">InstanceSearchResponse</a></code>
11255+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/stats">client.aisearch.namespaces.instances.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/instances.py">stats</a>(id, \*, account_id, name) -> <a href="./src/cloudflare/types/aisearch/namespaces/instance_stats_response.py">InstanceStatsResponse</a></code>
11256+
11257+
#### Jobs
11258+
11259+
Types:
11260+
11261+
```python
11262+
from cloudflare.types.aisearch.namespaces.instances import (
11263+
JobCreateResponse,
11264+
JobUpdateResponse,
11265+
JobListResponse,
11266+
JobGetResponse,
11267+
JobLogsResponse,
11268+
)
11269+
```
11270+
11271+
Methods:
11272+
11273+
- <code title="post /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs">client.aisearch.namespaces.instances.jobs.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/jobs.py">create</a>(id, \*, account_id, name, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instances/job_create_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/job_create_response.py">JobCreateResponse</a></code>
11274+
- <code title="patch /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs/{job_id}">client.aisearch.namespaces.instances.jobs.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/jobs.py">update</a>(job_id, \*, account_id, name, id, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instances/job_update_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/job_update_response.py">JobUpdateResponse</a></code>
11275+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs">client.aisearch.namespaces.instances.jobs.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/jobs.py">list</a>(id, \*, account_id, name, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instances/job_list_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/job_list_response.py">SyncV4PagePaginationArray[JobListResponse]</a></code>
11276+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs/{job_id}">client.aisearch.namespaces.instances.jobs.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/jobs.py">get</a>(job_id, \*, account_id, name, id) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/job_get_response.py">JobGetResponse</a></code>
11277+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs/{job_id}/logs">client.aisearch.namespaces.instances.jobs.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/jobs.py">logs</a>(job_id, \*, account_id, name, id, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instances/job_logs_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/job_logs_response.py">JobLogsResponse</a></code>
11278+
11279+
#### Items
11280+
11281+
Types:
11282+
11283+
```python
11284+
from cloudflare.types.aisearch.namespaces.instances import (
11285+
ItemListResponse,
11286+
ItemDeleteResponse,
11287+
ItemChunksResponse,
11288+
ItemCreateOrUpdateResponse,
11289+
ItemGetResponse,
11290+
ItemLogsResponse,
11291+
ItemSyncResponse,
11292+
ItemUploadResponse,
11293+
)
11294+
```
11295+
11296+
Methods:
11297+
11298+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items">client.aisearch.namespaces.instances.items.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/items.py">list</a>(id, \*, account_id, name, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instances/item_list_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/item_list_response.py">SyncV4PagePaginationArray[ItemListResponse]</a></code>
11299+
- <code title="delete /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}">client.aisearch.namespaces.instances.items.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/items.py">delete</a>(item_id, \*, account_id, name, id) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/item_delete_response.py">ItemDeleteResponse</a></code>
11300+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}/chunks">client.aisearch.namespaces.instances.items.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/items.py">chunks</a>(item_id, \*, account_id, name, id, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instances/item_chunks_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/item_chunks_response.py">ItemChunksResponse</a></code>
11301+
- <code title="put /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items">client.aisearch.namespaces.instances.items.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/items.py">create_or_update</a>(id, \*, account_id, name, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instances/item_create_or_update_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/item_create_or_update_response.py">ItemCreateOrUpdateResponse</a></code>
11302+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}/download">client.aisearch.namespaces.instances.items.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/items.py">download</a>(item_id, \*, account_id, name, id) -> BinaryAPIResponse</code>
11303+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}">client.aisearch.namespaces.instances.items.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/items.py">get</a>(item_id, \*, account_id, name, id) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/item_get_response.py">ItemGetResponse</a></code>
11304+
- <code title="get /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}/logs">client.aisearch.namespaces.instances.items.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/items.py">logs</a>(item_id, \*, account_id, name, id, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instances/item_logs_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/item_logs_response.py">ItemLogsResponse</a></code>
11305+
- <code title="patch /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}">client.aisearch.namespaces.instances.items.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/items.py">sync</a>(item_id, \*, account_id, name, id, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instances/item_sync_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/item_sync_response.py">ItemSyncResponse</a></code>
11306+
- <code title="post /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items">client.aisearch.namespaces.instances.items.<a href="./src/cloudflare/resources/aisearch/namespaces/instances/items.py">upload</a>(id, \*, account_id, name, \*\*<a href="src/cloudflare/types/aisearch/namespaces/instances/item_upload_params.py">params</a>) -> <a href="./src/cloudflare/types/aisearch/namespaces/instances/item_upload_response.py">ItemUploadResponse</a></code>
11307+
1120311308
## Instances
1120411309

1120511310
Types:

src/cloudflare/resources/aisearch/__init__.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,22 @@
2424
InstancesResourceWithStreamingResponse,
2525
AsyncInstancesResourceWithStreamingResponse,
2626
)
27+
from .namespaces import (
28+
NamespacesResource,
29+
AsyncNamespacesResource,
30+
NamespacesResourceWithRawResponse,
31+
AsyncNamespacesResourceWithRawResponse,
32+
NamespacesResourceWithStreamingResponse,
33+
AsyncNamespacesResourceWithStreamingResponse,
34+
)
2735

2836
__all__ = [
37+
"NamespacesResource",
38+
"AsyncNamespacesResource",
39+
"NamespacesResourceWithRawResponse",
40+
"AsyncNamespacesResourceWithRawResponse",
41+
"NamespacesResourceWithStreamingResponse",
42+
"AsyncNamespacesResourceWithStreamingResponse",
2943
"InstancesResource",
3044
"AsyncInstancesResource",
3145
"InstancesResourceWithRawResponse",

src/cloudflare/resources/aisearch/aisearch.py

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,23 @@
2020
InstancesResourceWithStreamingResponse,
2121
AsyncInstancesResourceWithStreamingResponse,
2222
)
23+
from .namespaces.namespaces import (
24+
NamespacesResource,
25+
AsyncNamespacesResource,
26+
NamespacesResourceWithRawResponse,
27+
AsyncNamespacesResourceWithRawResponse,
28+
NamespacesResourceWithStreamingResponse,
29+
AsyncNamespacesResourceWithStreamingResponse,
30+
)
2331

2432
__all__ = ["AISearchResource", "AsyncAISearchResource"]
2533

2634

2735
class AISearchResource(SyncAPIResource):
36+
@cached_property
37+
def namespaces(self) -> NamespacesResource:
38+
return NamespacesResource(self._client)
39+
2840
@cached_property
2941
def instances(self) -> InstancesResource:
3042
return InstancesResource(self._client)
@@ -54,6 +66,10 @@ def with_streaming_response(self) -> AISearchResourceWithStreamingResponse:
5466

5567

5668
class AsyncAISearchResource(AsyncAPIResource):
69+
@cached_property
70+
def namespaces(self) -> AsyncNamespacesResource:
71+
return AsyncNamespacesResource(self._client)
72+
5773
@cached_property
5874
def instances(self) -> AsyncInstancesResource:
5975
return AsyncInstancesResource(self._client)
@@ -86,6 +102,10 @@ class AISearchResourceWithRawResponse:
86102
def __init__(self, aisearch: AISearchResource) -> None:
87103
self._aisearch = aisearch
88104

105+
@cached_property
106+
def namespaces(self) -> NamespacesResourceWithRawResponse:
107+
return NamespacesResourceWithRawResponse(self._aisearch.namespaces)
108+
89109
@cached_property
90110
def instances(self) -> InstancesResourceWithRawResponse:
91111
return InstancesResourceWithRawResponse(self._aisearch.instances)
@@ -99,6 +119,10 @@ class AsyncAISearchResourceWithRawResponse:
99119
def __init__(self, aisearch: AsyncAISearchResource) -> None:
100120
self._aisearch = aisearch
101121

122+
@cached_property
123+
def namespaces(self) -> AsyncNamespacesResourceWithRawResponse:
124+
return AsyncNamespacesResourceWithRawResponse(self._aisearch.namespaces)
125+
102126
@cached_property
103127
def instances(self) -> AsyncInstancesResourceWithRawResponse:
104128
return AsyncInstancesResourceWithRawResponse(self._aisearch.instances)
@@ -112,6 +136,10 @@ class AISearchResourceWithStreamingResponse:
112136
def __init__(self, aisearch: AISearchResource) -> None:
113137
self._aisearch = aisearch
114138

139+
@cached_property
140+
def namespaces(self) -> NamespacesResourceWithStreamingResponse:
141+
return NamespacesResourceWithStreamingResponse(self._aisearch.namespaces)
142+
115143
@cached_property
116144
def instances(self) -> InstancesResourceWithStreamingResponse:
117145
return InstancesResourceWithStreamingResponse(self._aisearch.instances)
@@ -125,6 +153,10 @@ class AsyncAISearchResourceWithStreamingResponse:
125153
def __init__(self, aisearch: AsyncAISearchResource) -> None:
126154
self._aisearch = aisearch
127155

156+
@cached_property
157+
def namespaces(self) -> AsyncNamespacesResourceWithStreamingResponse:
158+
return AsyncNamespacesResourceWithStreamingResponse(self._aisearch.namespaces)
159+
128160
@cached_property
129161
def instances(self) -> AsyncInstancesResourceWithStreamingResponse:
130162
return AsyncInstancesResourceWithStreamingResponse(self._aisearch.instances)
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2+
3+
from .instances import (
4+
InstancesResource,
5+
AsyncInstancesResource,
6+
InstancesResourceWithRawResponse,
7+
AsyncInstancesResourceWithRawResponse,
8+
InstancesResourceWithStreamingResponse,
9+
AsyncInstancesResourceWithStreamingResponse,
10+
)
11+
from .namespaces import (
12+
NamespacesResource,
13+
AsyncNamespacesResource,
14+
NamespacesResourceWithRawResponse,
15+
AsyncNamespacesResourceWithRawResponse,
16+
NamespacesResourceWithStreamingResponse,
17+
AsyncNamespacesResourceWithStreamingResponse,
18+
)
19+
20+
__all__ = [
21+
"InstancesResource",
22+
"AsyncInstancesResource",
23+
"InstancesResourceWithRawResponse",
24+
"AsyncInstancesResourceWithRawResponse",
25+
"InstancesResourceWithStreamingResponse",
26+
"AsyncInstancesResourceWithStreamingResponse",
27+
"NamespacesResource",
28+
"AsyncNamespacesResource",
29+
"NamespacesResourceWithRawResponse",
30+
"AsyncNamespacesResourceWithRawResponse",
31+
"NamespacesResourceWithStreamingResponse",
32+
"AsyncNamespacesResourceWithStreamingResponse",
33+
]

0 commit comments

Comments
 (0)