Skip to main content

nominal_api/conjure/clients/scout/metadata/
resource_metadata_service.rs

1use conjure_http::endpoint;
2/// The Resource Metadata Service provides common metadata about resources.
3#[conjure_http::conjure_client(name = "ResourceMetadataService")]
4pub trait ResourceMetadataService<
5    #[response_body]
6    I: Iterator<
7            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
8        >,
9> {
10    /// Returns all existing properties (key value pairs) and labels, which can be used to organize resources
11    /// such as runs and videos.
12    #[endpoint(
13        method = POST,
14        path = "/scout/v1/metadata/list-properties-labels",
15        name = "listPropertiesAndLabels",
16        accept = conjure_http::client::StdResponseDeserializer
17    )]
18    fn list_properties_and_labels(
19        &self,
20        #[auth]
21        auth_: &conjure_object::BearerToken,
22        #[body(serializer = conjure_http::client::StdRequestSerializer)]
23        request: &super::super::super::super::objects::scout::metadata::ListPropertiesAndLabelsRequest,
24    ) -> Result<
25        super::super::super::super::objects::scout::metadata::ListPropertiesAndLabelsResponse,
26        conjure_http::private::Error,
27    >;
28    /// Returns the count of resources that use a given label or property. The query can
29    /// match by label, property name (key only), or a full property key+value pair.
30    /// Counts are scoped to the caller's accessible workspaces unless specific workspaces
31    /// are provided.
32    #[endpoint(
33        method = POST,
34        path = "/scout/v1/metadata/usage-count",
35        name = "getMetadataUsageCount",
36        accept = conjure_http::client::StdResponseDeserializer
37    )]
38    fn get_metadata_usage_count(
39        &self,
40        #[auth]
41        auth_: &conjure_object::BearerToken,
42        #[body(serializer = conjure_http::client::StdRequestSerializer)]
43        request: &super::super::super::super::objects::scout::metadata::GetMetadataUsageCountRequest,
44    ) -> Result<
45        super::super::super::super::objects::scout::metadata::GetMetadataUsageCountResponse,
46        conjure_http::private::Error,
47    >;
48    /// Given a set of labels, finds similar labels across the specified workspaces and resource types.
49    /// Includes document count. Useful for detecting unintentional duplicate labels.
50    #[endpoint(
51        method = POST,
52        path = "/scout/v1/metadata/label/find-similar",
53        name = "findSimilarLabelMatches",
54        accept = conjure_http::client::StdResponseDeserializer
55    )]
56    fn find_similar_label_matches(
57        &self,
58        #[auth]
59        auth_: &conjure_object::BearerToken,
60        #[body(serializer = conjure_http::client::StdRequestSerializer)]
61        request: &super::super::super::super::objects::scout::metadata::FindSimilarLabelMatchesRequest,
62    ) -> Result<
63        super::super::super::super::objects::scout::metadata::FindSimilarLabelMatchesResponse,
64        conjure_http::private::Error,
65    >;
66    /// Given a set of property keys, finds similar property keys across the specified workspaces and resource types.
67    /// Includes document count. Useful for detecting unintentional duplicate property keys.
68    #[endpoint(
69        method = POST,
70        path = "/scout/v1/metadata/property/find-similar",
71        name = "findSimilarPropertyKeyMatches",
72        accept = conjure_http::client::StdResponseDeserializer
73    )]
74    fn find_similar_property_key_matches(
75        &self,
76        #[auth]
77        auth_: &conjure_object::BearerToken,
78        #[body(serializer = conjure_http::client::StdRequestSerializer)]
79        request: &super::super::super::super::objects::scout::metadata::FindSimilarPropertyKeyMatchesRequest,
80    ) -> Result<
81        super::super::super::super::objects::scout::metadata::FindSimilarPropertyKeyMatchesResponse,
82        conjure_http::private::Error,
83    >;
84    /// Returns a paginated list of labels with document usage counts, filterable by
85    /// resource type, workspace, and search text.
86    #[endpoint(
87        method = POST,
88        path = "/scout/v1/metadata/search-labels",
89        name = "searchLabels",
90        accept = conjure_http::client::StdResponseDeserializer
91    )]
92    fn search_labels(
93        &self,
94        #[auth]
95        auth_: &conjure_object::BearerToken,
96        #[body(serializer = conjure_http::client::StdRequestSerializer)]
97        request: &super::super::super::super::objects::scout::metadata::SearchMetadataRequest,
98    ) -> Result<
99        super::super::super::super::objects::scout::metadata::SearchLabelsResponse,
100        conjure_http::private::Error,
101    >;
102    /// Returns a paginated list of property keys with document usage counts, filterable
103    /// by resource type, workspace, and search text.
104    #[endpoint(
105        method = POST,
106        path = "/scout/v1/metadata/search-property-keys",
107        name = "searchPropertyKeys",
108        accept = conjure_http::client::StdResponseDeserializer
109    )]
110    fn search_property_keys(
111        &self,
112        #[auth]
113        auth_: &conjure_object::BearerToken,
114        #[body(serializer = conjure_http::client::StdRequestSerializer)]
115        request: &super::super::super::super::objects::scout::metadata::SearchMetadataRequest,
116    ) -> Result<
117        super::super::super::super::objects::scout::metadata::SearchPropertyKeysResponse,
118        conjure_http::private::Error,
119    >;
120    /// Returns a paginated list of property values for a given property key with document
121    /// usage counts, filterable by resource type, workspace, and search text.
122    #[endpoint(
123        method = POST,
124        path = "/scout/v1/metadata/search-property-values",
125        name = "searchPropertyValues",
126        accept = conjure_http::client::StdResponseDeserializer
127    )]
128    fn search_property_values(
129        &self,
130        #[auth]
131        auth_: &conjure_object::BearerToken,
132        #[body(serializer = conjure_http::client::StdRequestSerializer)]
133        request: &super::super::super::super::objects::scout::metadata::SearchPropertyValuesRequest,
134    ) -> Result<
135        super::super::super::super::objects::scout::metadata::SearchPropertyValuesResponse,
136        conjure_http::private::Error,
137    >;
138}
139/// The Resource Metadata Service provides common metadata about resources.
140#[conjure_http::conjure_client(name = "ResourceMetadataService")]
141pub trait AsyncResourceMetadataService<
142    #[response_body]
143    I: conjure_http::private::Stream<
144            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
145        >,
146> {
147    /// Returns all existing properties (key value pairs) and labels, which can be used to organize resources
148    /// such as runs and videos.
149    #[endpoint(
150        method = POST,
151        path = "/scout/v1/metadata/list-properties-labels",
152        name = "listPropertiesAndLabels",
153        accept = conjure_http::client::StdResponseDeserializer
154    )]
155    async fn list_properties_and_labels(
156        &self,
157        #[auth]
158        auth_: &conjure_object::BearerToken,
159        #[body(serializer = conjure_http::client::StdRequestSerializer)]
160        request: &super::super::super::super::objects::scout::metadata::ListPropertiesAndLabelsRequest,
161    ) -> Result<
162        super::super::super::super::objects::scout::metadata::ListPropertiesAndLabelsResponse,
163        conjure_http::private::Error,
164    >;
165    /// Returns the count of resources that use a given label or property. The query can
166    /// match by label, property name (key only), or a full property key+value pair.
167    /// Counts are scoped to the caller's accessible workspaces unless specific workspaces
168    /// are provided.
169    #[endpoint(
170        method = POST,
171        path = "/scout/v1/metadata/usage-count",
172        name = "getMetadataUsageCount",
173        accept = conjure_http::client::StdResponseDeserializer
174    )]
175    async fn get_metadata_usage_count(
176        &self,
177        #[auth]
178        auth_: &conjure_object::BearerToken,
179        #[body(serializer = conjure_http::client::StdRequestSerializer)]
180        request: &super::super::super::super::objects::scout::metadata::GetMetadataUsageCountRequest,
181    ) -> Result<
182        super::super::super::super::objects::scout::metadata::GetMetadataUsageCountResponse,
183        conjure_http::private::Error,
184    >;
185    /// Given a set of labels, finds similar labels across the specified workspaces and resource types.
186    /// Includes document count. Useful for detecting unintentional duplicate labels.
187    #[endpoint(
188        method = POST,
189        path = "/scout/v1/metadata/label/find-similar",
190        name = "findSimilarLabelMatches",
191        accept = conjure_http::client::StdResponseDeserializer
192    )]
193    async fn find_similar_label_matches(
194        &self,
195        #[auth]
196        auth_: &conjure_object::BearerToken,
197        #[body(serializer = conjure_http::client::StdRequestSerializer)]
198        request: &super::super::super::super::objects::scout::metadata::FindSimilarLabelMatchesRequest,
199    ) -> Result<
200        super::super::super::super::objects::scout::metadata::FindSimilarLabelMatchesResponse,
201        conjure_http::private::Error,
202    >;
203    /// Given a set of property keys, finds similar property keys across the specified workspaces and resource types.
204    /// Includes document count. Useful for detecting unintentional duplicate property keys.
205    #[endpoint(
206        method = POST,
207        path = "/scout/v1/metadata/property/find-similar",
208        name = "findSimilarPropertyKeyMatches",
209        accept = conjure_http::client::StdResponseDeserializer
210    )]
211    async fn find_similar_property_key_matches(
212        &self,
213        #[auth]
214        auth_: &conjure_object::BearerToken,
215        #[body(serializer = conjure_http::client::StdRequestSerializer)]
216        request: &super::super::super::super::objects::scout::metadata::FindSimilarPropertyKeyMatchesRequest,
217    ) -> Result<
218        super::super::super::super::objects::scout::metadata::FindSimilarPropertyKeyMatchesResponse,
219        conjure_http::private::Error,
220    >;
221    /// Returns a paginated list of labels with document usage counts, filterable by
222    /// resource type, workspace, and search text.
223    #[endpoint(
224        method = POST,
225        path = "/scout/v1/metadata/search-labels",
226        name = "searchLabels",
227        accept = conjure_http::client::StdResponseDeserializer
228    )]
229    async fn search_labels(
230        &self,
231        #[auth]
232        auth_: &conjure_object::BearerToken,
233        #[body(serializer = conjure_http::client::StdRequestSerializer)]
234        request: &super::super::super::super::objects::scout::metadata::SearchMetadataRequest,
235    ) -> Result<
236        super::super::super::super::objects::scout::metadata::SearchLabelsResponse,
237        conjure_http::private::Error,
238    >;
239    /// Returns a paginated list of property keys with document usage counts, filterable
240    /// by resource type, workspace, and search text.
241    #[endpoint(
242        method = POST,
243        path = "/scout/v1/metadata/search-property-keys",
244        name = "searchPropertyKeys",
245        accept = conjure_http::client::StdResponseDeserializer
246    )]
247    async fn search_property_keys(
248        &self,
249        #[auth]
250        auth_: &conjure_object::BearerToken,
251        #[body(serializer = conjure_http::client::StdRequestSerializer)]
252        request: &super::super::super::super::objects::scout::metadata::SearchMetadataRequest,
253    ) -> Result<
254        super::super::super::super::objects::scout::metadata::SearchPropertyKeysResponse,
255        conjure_http::private::Error,
256    >;
257    /// Returns a paginated list of property values for a given property key with document
258    /// usage counts, filterable by resource type, workspace, and search text.
259    #[endpoint(
260        method = POST,
261        path = "/scout/v1/metadata/search-property-values",
262        name = "searchPropertyValues",
263        accept = conjure_http::client::StdResponseDeserializer
264    )]
265    async fn search_property_values(
266        &self,
267        #[auth]
268        auth_: &conjure_object::BearerToken,
269        #[body(serializer = conjure_http::client::StdRequestSerializer)]
270        request: &super::super::super::super::objects::scout::metadata::SearchPropertyValuesRequest,
271    ) -> Result<
272        super::super::super::super::objects::scout::metadata::SearchPropertyValuesResponse,
273        conjure_http::private::Error,
274    >;
275}
276/// The Resource Metadata Service provides common metadata about resources.
277#[conjure_http::conjure_client(name = "ResourceMetadataService", local)]
278pub trait LocalAsyncResourceMetadataService<
279    #[response_body]
280    I: conjure_http::private::Stream<
281            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
282        >,
283> {
284    /// Returns all existing properties (key value pairs) and labels, which can be used to organize resources
285    /// such as runs and videos.
286    #[endpoint(
287        method = POST,
288        path = "/scout/v1/metadata/list-properties-labels",
289        name = "listPropertiesAndLabels",
290        accept = conjure_http::client::StdResponseDeserializer
291    )]
292    async fn list_properties_and_labels(
293        &self,
294        #[auth]
295        auth_: &conjure_object::BearerToken,
296        #[body(serializer = conjure_http::client::StdRequestSerializer)]
297        request: &super::super::super::super::objects::scout::metadata::ListPropertiesAndLabelsRequest,
298    ) -> Result<
299        super::super::super::super::objects::scout::metadata::ListPropertiesAndLabelsResponse,
300        conjure_http::private::Error,
301    >;
302    /// Returns the count of resources that use a given label or property. The query can
303    /// match by label, property name (key only), or a full property key+value pair.
304    /// Counts are scoped to the caller's accessible workspaces unless specific workspaces
305    /// are provided.
306    #[endpoint(
307        method = POST,
308        path = "/scout/v1/metadata/usage-count",
309        name = "getMetadataUsageCount",
310        accept = conjure_http::client::StdResponseDeserializer
311    )]
312    async fn get_metadata_usage_count(
313        &self,
314        #[auth]
315        auth_: &conjure_object::BearerToken,
316        #[body(serializer = conjure_http::client::StdRequestSerializer)]
317        request: &super::super::super::super::objects::scout::metadata::GetMetadataUsageCountRequest,
318    ) -> Result<
319        super::super::super::super::objects::scout::metadata::GetMetadataUsageCountResponse,
320        conjure_http::private::Error,
321    >;
322    /// Given a set of labels, finds similar labels across the specified workspaces and resource types.
323    /// Includes document count. Useful for detecting unintentional duplicate labels.
324    #[endpoint(
325        method = POST,
326        path = "/scout/v1/metadata/label/find-similar",
327        name = "findSimilarLabelMatches",
328        accept = conjure_http::client::StdResponseDeserializer
329    )]
330    async fn find_similar_label_matches(
331        &self,
332        #[auth]
333        auth_: &conjure_object::BearerToken,
334        #[body(serializer = conjure_http::client::StdRequestSerializer)]
335        request: &super::super::super::super::objects::scout::metadata::FindSimilarLabelMatchesRequest,
336    ) -> Result<
337        super::super::super::super::objects::scout::metadata::FindSimilarLabelMatchesResponse,
338        conjure_http::private::Error,
339    >;
340    /// Given a set of property keys, finds similar property keys across the specified workspaces and resource types.
341    /// Includes document count. Useful for detecting unintentional duplicate property keys.
342    #[endpoint(
343        method = POST,
344        path = "/scout/v1/metadata/property/find-similar",
345        name = "findSimilarPropertyKeyMatches",
346        accept = conjure_http::client::StdResponseDeserializer
347    )]
348    async fn find_similar_property_key_matches(
349        &self,
350        #[auth]
351        auth_: &conjure_object::BearerToken,
352        #[body(serializer = conjure_http::client::StdRequestSerializer)]
353        request: &super::super::super::super::objects::scout::metadata::FindSimilarPropertyKeyMatchesRequest,
354    ) -> Result<
355        super::super::super::super::objects::scout::metadata::FindSimilarPropertyKeyMatchesResponse,
356        conjure_http::private::Error,
357    >;
358    /// Returns a paginated list of labels with document usage counts, filterable by
359    /// resource type, workspace, and search text.
360    #[endpoint(
361        method = POST,
362        path = "/scout/v1/metadata/search-labels",
363        name = "searchLabels",
364        accept = conjure_http::client::StdResponseDeserializer
365    )]
366    async fn search_labels(
367        &self,
368        #[auth]
369        auth_: &conjure_object::BearerToken,
370        #[body(serializer = conjure_http::client::StdRequestSerializer)]
371        request: &super::super::super::super::objects::scout::metadata::SearchMetadataRequest,
372    ) -> Result<
373        super::super::super::super::objects::scout::metadata::SearchLabelsResponse,
374        conjure_http::private::Error,
375    >;
376    /// Returns a paginated list of property keys with document usage counts, filterable
377    /// by resource type, workspace, and search text.
378    #[endpoint(
379        method = POST,
380        path = "/scout/v1/metadata/search-property-keys",
381        name = "searchPropertyKeys",
382        accept = conjure_http::client::StdResponseDeserializer
383    )]
384    async fn search_property_keys(
385        &self,
386        #[auth]
387        auth_: &conjure_object::BearerToken,
388        #[body(serializer = conjure_http::client::StdRequestSerializer)]
389        request: &super::super::super::super::objects::scout::metadata::SearchMetadataRequest,
390    ) -> Result<
391        super::super::super::super::objects::scout::metadata::SearchPropertyKeysResponse,
392        conjure_http::private::Error,
393    >;
394    /// Returns a paginated list of property values for a given property key with document
395    /// usage counts, filterable by resource type, workspace, and search text.
396    #[endpoint(
397        method = POST,
398        path = "/scout/v1/metadata/search-property-values",
399        name = "searchPropertyValues",
400        accept = conjure_http::client::StdResponseDeserializer
401    )]
402    async fn search_property_values(
403        &self,
404        #[auth]
405        auth_: &conjure_object::BearerToken,
406        #[body(serializer = conjure_http::client::StdRequestSerializer)]
407        request: &super::super::super::super::objects::scout::metadata::SearchPropertyValuesRequest,
408    ) -> Result<
409        super::super::super::super::objects::scout::metadata::SearchPropertyValuesResponse,
410        conjure_http::private::Error,
411    >;
412}