Skip to main content

nominal_api/conjure/clients/scout/datasource/connection/
connection_service.rs

1use conjure_http::endpoint;
2/// A Connection contains the relevant metadata and information to be used as a data source for runs.
3/// The Connection Service is responsible for creating, updating, and retrieving database connections.
4#[conjure_http::conjure_client(name = "ConnectionService")]
5pub trait ConnectionService<
6    #[response_body]
7    I: Iterator<
8            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
9        >,
10> {
11    /// Creates a new connection.
12    #[endpoint(
13        method = POST,
14        path = "/data-source/connection/v1/connections",
15        name = "createConnection",
16        accept = conjure_http::client::StdResponseDeserializer
17    )]
18    fn create_connection(
19        &self,
20        #[auth]
21        auth_: &conjure_object::BearerToken,
22        #[body(serializer = conjure_http::client::StdRequestSerializer)]
23        create_connection: &super::super::super::super::super::objects::scout::datasource::connection::api::CreateConnection,
24    ) -> Result<
25        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
26        conjure_http::private::Error,
27    >;
28    /// Updates an existing connection.
29    #[endpoint(
30        method = PUT,
31        path = "/data-source/connection/v1/connection/{rid}/details",
32        name = "updateConnection",
33        accept = conjure_http::client::StdResponseDeserializer
34    )]
35    fn update_connection(
36        &self,
37        #[auth]
38        auth_: &conjure_object::BearerToken,
39        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
40        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
41        #[body(serializer = conjure_http::client::StdRequestSerializer)]
42        request: &super::super::super::super::super::objects::scout::datasource::connection::api::UpdateConnectionRequest,
43    ) -> Result<
44        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
45        conjure_http::private::Error,
46    >;
47    /// Updates an existing connection status.
48    #[endpoint(
49        method = PUT,
50        path = "/data-source/connection/v1/connection/{rid}/status",
51        name = "updateConnectionStatus",
52        accept = conjure_http::client::conjure::EmptyResponseDeserializer
53    )]
54    fn update_connection_status(
55        &self,
56        #[auth]
57        auth_: &conjure_object::BearerToken,
58        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
59        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
60        #[body(serializer = conjure_http::client::StdRequestSerializer)]
61        request: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionStatus,
62    ) -> Result<(), conjure_http::private::Error>;
63    /// Adds available tag key/value pairs to the connection. If a tag name already exists, the values will be merged.
64    /// This is primarily an internal endpoint to update tags for external connections as they are periodically
65    /// scraped. This endpoint should only be called by clients for Visual crossing connections. Throws if called for
66    /// Nominal connections which have their tags automatically indexed in the underlying Database.
67    #[endpoint(
68        method = POST,
69        path = "/data-source/connection/v1/connection/{rid}/available-tags",
70        name = "addAvailableTags",
71        accept = conjure_http::client::StdResponseDeserializer
72    )]
73    fn add_available_tags(
74        &self,
75        #[auth]
76        auth_: &conjure_object::BearerToken,
77        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
78        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
79        #[body(serializer = conjure_http::client::StdRequestSerializer)]
80        tags: &std::collections::BTreeMap<
81            super::super::super::super::super::objects::api::TagName,
82            std::collections::BTreeSet<
83                super::super::super::super::super::objects::api::TagValue,
84            >,
85        >,
86    ) -> Result<
87        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
88        conjure_http::private::Error,
89    >;
90    /// Gets a connection by its RID.
91    #[endpoint(
92        method = GET,
93        path = "/data-source/connection/v1/connection/{rid}",
94        name = "getConnection",
95        accept = conjure_http::client::StdResponseDeserializer
96    )]
97    fn get_connection(
98        &self,
99        #[auth]
100        auth_: &conjure_object::BearerToken,
101        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
102        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
103    ) -> Result<
104        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
105        conjure_http::private::Error,
106    >;
107    /// Gets a set of connections by their RIDs.
108    #[endpoint(
109        method = POST,
110        path = "/data-source/connection/v1/connection/multiple",
111        name = "getConnections",
112        accept = conjure_http::client::conjure::CollectionResponseDeserializer
113    )]
114    fn get_connections(
115        &self,
116        #[auth]
117        auth_: &conjure_object::BearerToken,
118        #[body(serializer = conjure_http::client::StdRequestSerializer)]
119        rids: &std::collections::BTreeSet<
120            super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
121        >,
122    ) -> Result<
123        std::collections::BTreeSet<
124            super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
125        >,
126        conjure_http::private::Error,
127    >;
128    /// Lists all connections.
129    #[endpoint(
130        method = GET,
131        path = "/data-source/connection/v1/connections",
132        name = "listConnections",
133        accept = conjure_http::client::conjure::CollectionResponseDeserializer
134    )]
135    fn list_connections(
136        &self,
137        #[auth]
138        auth_: &conjure_object::BearerToken,
139        #[query(
140            name = "includeArchived",
141            encoder = conjure_http::client::conjure::PlainSeqEncoder
142        )]
143        include_archived: Option<bool>,
144        #[query(
145            name = "workspaces",
146            encoder = conjure_http::client::conjure::PlainSeqEncoder
147        )]
148        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
149    ) -> Result<
150        std::collections::BTreeSet<
151            super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
152        >,
153        conjure_http::private::Error,
154    >;
155    /// Lists connections with pagination. Returns connections ordered by creation time descending.
156    #[endpoint(
157        method = GET,
158        path = "/data-source/connection/v2/connections",
159        name = "listConnectionsV2",
160        accept = conjure_http::client::StdResponseDeserializer
161    )]
162    fn list_connections_v2(
163        &self,
164        #[auth]
165        auth_: &conjure_object::BearerToken,
166        #[query(
167            name = "includeArchived",
168            encoder = conjure_http::client::conjure::PlainSeqEncoder
169        )]
170        include_archived: Option<bool>,
171        #[query(
172            name = "workspaces",
173            encoder = conjure_http::client::conjure::PlainSeqEncoder
174        )]
175        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
176        #[query(
177            name = "pageSize",
178            encoder = conjure_http::client::conjure::PlainSeqEncoder
179        )]
180        page_size: Option<i32>,
181        #[query(
182            name = "nextPageToken",
183            encoder = conjure_http::client::conjure::PlainSeqEncoder
184        )]
185        next_page_token: Option<&super::super::super::super::super::objects::api::Token>,
186    ) -> Result<
187        super::super::super::super::super::objects::scout::datasource::connection::api::ListConnectionsResponse,
188        conjure_http::private::Error,
189    >;
190    /// Lists connections that reference the specified Nominal data sources, with pagination.
191    /// Only returns connections within the caller's organization.
192    #[endpoint(
193        method = GET,
194        path = "/data-source/connection/v2/connections/by-datasource",
195        name = "listConnectionsByNominalDataSource",
196        accept = conjure_http::client::StdResponseDeserializer
197    )]
198    fn list_connections_by_nominal_data_source(
199        &self,
200        #[auth]
201        auth_: &conjure_object::BearerToken,
202        #[query(
203            name = "nominalDataSourceRids",
204            encoder = conjure_http::client::conjure::PlainSeqEncoder
205        )]
206        nominal_data_source_rids: &std::collections::BTreeSet<
207            conjure_object::ResourceIdentifier,
208        >,
209        #[query(
210            name = "workspaces",
211            encoder = conjure_http::client::conjure::PlainSeqEncoder
212        )]
213        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
214        #[query(
215            name = "pageSize",
216            encoder = conjure_http::client::conjure::PlainSeqEncoder
217        )]
218        page_size: Option<i32>,
219        #[query(
220            name = "nextPageToken",
221            encoder = conjure_http::client::conjure::PlainSeqEncoder
222        )]
223        next_page_token: Option<&super::super::super::super::super::objects::api::Token>,
224    ) -> Result<
225        super::super::super::super::super::objects::scout::datasource::connection::api::ListConnectionsResponse,
226        conjure_http::private::Error,
227    >;
228    /// Archives a connection, which simply tags the connection for a client to filter.
229    #[endpoint(
230        method = POST,
231        path = "/data-source/connection/v1/connections/{rid}/archive",
232        name = "archiveConnection",
233        accept = conjure_http::client::conjure::EmptyResponseDeserializer
234    )]
235    fn archive_connection(
236        &self,
237        #[auth]
238        auth_: &conjure_object::BearerToken,
239        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
240        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
241    ) -> Result<(), conjure_http::private::Error>;
242    /// Undoes the archiving of a connection.
243    #[endpoint(
244        method = POST,
245        path = "/data-source/connection/v1/connections/{rid}/unarchive",
246        name = "unarchiveConnection",
247        accept = conjure_http::client::conjure::EmptyResponseDeserializer
248    )]
249    fn unarchive_connection(
250        &self,
251        #[auth]
252        auth_: &conjure_object::BearerToken,
253        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
254        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
255    ) -> Result<(), conjure_http::private::Error>;
256}
257/// A Connection contains the relevant metadata and information to be used as a data source for runs.
258/// The Connection Service is responsible for creating, updating, and retrieving database connections.
259#[conjure_http::conjure_client(name = "ConnectionService")]
260pub trait AsyncConnectionService<
261    #[response_body]
262    I: conjure_http::private::Stream<
263            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
264        >,
265> {
266    /// Creates a new connection.
267    #[endpoint(
268        method = POST,
269        path = "/data-source/connection/v1/connections",
270        name = "createConnection",
271        accept = conjure_http::client::StdResponseDeserializer
272    )]
273    async fn create_connection(
274        &self,
275        #[auth]
276        auth_: &conjure_object::BearerToken,
277        #[body(serializer = conjure_http::client::StdRequestSerializer)]
278        create_connection: &super::super::super::super::super::objects::scout::datasource::connection::api::CreateConnection,
279    ) -> Result<
280        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
281        conjure_http::private::Error,
282    >;
283    /// Updates an existing connection.
284    #[endpoint(
285        method = PUT,
286        path = "/data-source/connection/v1/connection/{rid}/details",
287        name = "updateConnection",
288        accept = conjure_http::client::StdResponseDeserializer
289    )]
290    async fn update_connection(
291        &self,
292        #[auth]
293        auth_: &conjure_object::BearerToken,
294        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
295        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
296        #[body(serializer = conjure_http::client::StdRequestSerializer)]
297        request: &super::super::super::super::super::objects::scout::datasource::connection::api::UpdateConnectionRequest,
298    ) -> Result<
299        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
300        conjure_http::private::Error,
301    >;
302    /// Updates an existing connection status.
303    #[endpoint(
304        method = PUT,
305        path = "/data-source/connection/v1/connection/{rid}/status",
306        name = "updateConnectionStatus",
307        accept = conjure_http::client::conjure::EmptyResponseDeserializer
308    )]
309    async fn update_connection_status(
310        &self,
311        #[auth]
312        auth_: &conjure_object::BearerToken,
313        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
314        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
315        #[body(serializer = conjure_http::client::StdRequestSerializer)]
316        request: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionStatus,
317    ) -> Result<(), conjure_http::private::Error>;
318    /// Adds available tag key/value pairs to the connection. If a tag name already exists, the values will be merged.
319    /// This is primarily an internal endpoint to update tags for external connections as they are periodically
320    /// scraped. This endpoint should only be called by clients for Visual crossing connections. Throws if called for
321    /// Nominal connections which have their tags automatically indexed in the underlying Database.
322    #[endpoint(
323        method = POST,
324        path = "/data-source/connection/v1/connection/{rid}/available-tags",
325        name = "addAvailableTags",
326        accept = conjure_http::client::StdResponseDeserializer
327    )]
328    async fn add_available_tags(
329        &self,
330        #[auth]
331        auth_: &conjure_object::BearerToken,
332        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
333        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
334        #[body(serializer = conjure_http::client::StdRequestSerializer)]
335        tags: &std::collections::BTreeMap<
336            super::super::super::super::super::objects::api::TagName,
337            std::collections::BTreeSet<
338                super::super::super::super::super::objects::api::TagValue,
339            >,
340        >,
341    ) -> Result<
342        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
343        conjure_http::private::Error,
344    >;
345    /// Gets a connection by its RID.
346    #[endpoint(
347        method = GET,
348        path = "/data-source/connection/v1/connection/{rid}",
349        name = "getConnection",
350        accept = conjure_http::client::StdResponseDeserializer
351    )]
352    async fn get_connection(
353        &self,
354        #[auth]
355        auth_: &conjure_object::BearerToken,
356        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
357        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
358    ) -> Result<
359        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
360        conjure_http::private::Error,
361    >;
362    /// Gets a set of connections by their RIDs.
363    #[endpoint(
364        method = POST,
365        path = "/data-source/connection/v1/connection/multiple",
366        name = "getConnections",
367        accept = conjure_http::client::conjure::CollectionResponseDeserializer
368    )]
369    async fn get_connections(
370        &self,
371        #[auth]
372        auth_: &conjure_object::BearerToken,
373        #[body(serializer = conjure_http::client::StdRequestSerializer)]
374        rids: &std::collections::BTreeSet<
375            super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
376        >,
377    ) -> Result<
378        std::collections::BTreeSet<
379            super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
380        >,
381        conjure_http::private::Error,
382    >;
383    /// Lists all connections.
384    #[endpoint(
385        method = GET,
386        path = "/data-source/connection/v1/connections",
387        name = "listConnections",
388        accept = conjure_http::client::conjure::CollectionResponseDeserializer
389    )]
390    async fn list_connections(
391        &self,
392        #[auth]
393        auth_: &conjure_object::BearerToken,
394        #[query(
395            name = "includeArchived",
396            encoder = conjure_http::client::conjure::PlainSeqEncoder
397        )]
398        include_archived: Option<bool>,
399        #[query(
400            name = "workspaces",
401            encoder = conjure_http::client::conjure::PlainSeqEncoder
402        )]
403        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
404    ) -> Result<
405        std::collections::BTreeSet<
406            super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
407        >,
408        conjure_http::private::Error,
409    >;
410    /// Lists connections with pagination. Returns connections ordered by creation time descending.
411    #[endpoint(
412        method = GET,
413        path = "/data-source/connection/v2/connections",
414        name = "listConnectionsV2",
415        accept = conjure_http::client::StdResponseDeserializer
416    )]
417    async fn list_connections_v2(
418        &self,
419        #[auth]
420        auth_: &conjure_object::BearerToken,
421        #[query(
422            name = "includeArchived",
423            encoder = conjure_http::client::conjure::PlainSeqEncoder
424        )]
425        include_archived: Option<bool>,
426        #[query(
427            name = "workspaces",
428            encoder = conjure_http::client::conjure::PlainSeqEncoder
429        )]
430        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
431        #[query(
432            name = "pageSize",
433            encoder = conjure_http::client::conjure::PlainSeqEncoder
434        )]
435        page_size: Option<i32>,
436        #[query(
437            name = "nextPageToken",
438            encoder = conjure_http::client::conjure::PlainSeqEncoder
439        )]
440        next_page_token: Option<&super::super::super::super::super::objects::api::Token>,
441    ) -> Result<
442        super::super::super::super::super::objects::scout::datasource::connection::api::ListConnectionsResponse,
443        conjure_http::private::Error,
444    >;
445    /// Lists connections that reference the specified Nominal data sources, with pagination.
446    /// Only returns connections within the caller's organization.
447    #[endpoint(
448        method = GET,
449        path = "/data-source/connection/v2/connections/by-datasource",
450        name = "listConnectionsByNominalDataSource",
451        accept = conjure_http::client::StdResponseDeserializer
452    )]
453    async fn list_connections_by_nominal_data_source(
454        &self,
455        #[auth]
456        auth_: &conjure_object::BearerToken,
457        #[query(
458            name = "nominalDataSourceRids",
459            encoder = conjure_http::client::conjure::PlainSeqEncoder
460        )]
461        nominal_data_source_rids: &std::collections::BTreeSet<
462            conjure_object::ResourceIdentifier,
463        >,
464        #[query(
465            name = "workspaces",
466            encoder = conjure_http::client::conjure::PlainSeqEncoder
467        )]
468        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
469        #[query(
470            name = "pageSize",
471            encoder = conjure_http::client::conjure::PlainSeqEncoder
472        )]
473        page_size: Option<i32>,
474        #[query(
475            name = "nextPageToken",
476            encoder = conjure_http::client::conjure::PlainSeqEncoder
477        )]
478        next_page_token: Option<&super::super::super::super::super::objects::api::Token>,
479    ) -> Result<
480        super::super::super::super::super::objects::scout::datasource::connection::api::ListConnectionsResponse,
481        conjure_http::private::Error,
482    >;
483    /// Archives a connection, which simply tags the connection for a client to filter.
484    #[endpoint(
485        method = POST,
486        path = "/data-source/connection/v1/connections/{rid}/archive",
487        name = "archiveConnection",
488        accept = conjure_http::client::conjure::EmptyResponseDeserializer
489    )]
490    async fn archive_connection(
491        &self,
492        #[auth]
493        auth_: &conjure_object::BearerToken,
494        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
495        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
496    ) -> Result<(), conjure_http::private::Error>;
497    /// Undoes the archiving of a connection.
498    #[endpoint(
499        method = POST,
500        path = "/data-source/connection/v1/connections/{rid}/unarchive",
501        name = "unarchiveConnection",
502        accept = conjure_http::client::conjure::EmptyResponseDeserializer
503    )]
504    async fn unarchive_connection(
505        &self,
506        #[auth]
507        auth_: &conjure_object::BearerToken,
508        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
509        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
510    ) -> Result<(), conjure_http::private::Error>;
511}
512/// A Connection contains the relevant metadata and information to be used as a data source for runs.
513/// The Connection Service is responsible for creating, updating, and retrieving database connections.
514#[conjure_http::conjure_client(name = "ConnectionService", local)]
515pub trait LocalAsyncConnectionService<
516    #[response_body]
517    I: conjure_http::private::Stream<
518            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
519        >,
520> {
521    /// Creates a new connection.
522    #[endpoint(
523        method = POST,
524        path = "/data-source/connection/v1/connections",
525        name = "createConnection",
526        accept = conjure_http::client::StdResponseDeserializer
527    )]
528    async fn create_connection(
529        &self,
530        #[auth]
531        auth_: &conjure_object::BearerToken,
532        #[body(serializer = conjure_http::client::StdRequestSerializer)]
533        create_connection: &super::super::super::super::super::objects::scout::datasource::connection::api::CreateConnection,
534    ) -> Result<
535        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
536        conjure_http::private::Error,
537    >;
538    /// Updates an existing connection.
539    #[endpoint(
540        method = PUT,
541        path = "/data-source/connection/v1/connection/{rid}/details",
542        name = "updateConnection",
543        accept = conjure_http::client::StdResponseDeserializer
544    )]
545    async fn update_connection(
546        &self,
547        #[auth]
548        auth_: &conjure_object::BearerToken,
549        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
550        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
551        #[body(serializer = conjure_http::client::StdRequestSerializer)]
552        request: &super::super::super::super::super::objects::scout::datasource::connection::api::UpdateConnectionRequest,
553    ) -> Result<
554        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
555        conjure_http::private::Error,
556    >;
557    /// Updates an existing connection status.
558    #[endpoint(
559        method = PUT,
560        path = "/data-source/connection/v1/connection/{rid}/status",
561        name = "updateConnectionStatus",
562        accept = conjure_http::client::conjure::EmptyResponseDeserializer
563    )]
564    async fn update_connection_status(
565        &self,
566        #[auth]
567        auth_: &conjure_object::BearerToken,
568        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
569        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
570        #[body(serializer = conjure_http::client::StdRequestSerializer)]
571        request: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionStatus,
572    ) -> Result<(), conjure_http::private::Error>;
573    /// Adds available tag key/value pairs to the connection. If a tag name already exists, the values will be merged.
574    /// This is primarily an internal endpoint to update tags for external connections as they are periodically
575    /// scraped. This endpoint should only be called by clients for Visual crossing connections. Throws if called for
576    /// Nominal connections which have their tags automatically indexed in the underlying Database.
577    #[endpoint(
578        method = POST,
579        path = "/data-source/connection/v1/connection/{rid}/available-tags",
580        name = "addAvailableTags",
581        accept = conjure_http::client::StdResponseDeserializer
582    )]
583    async fn add_available_tags(
584        &self,
585        #[auth]
586        auth_: &conjure_object::BearerToken,
587        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
588        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
589        #[body(serializer = conjure_http::client::StdRequestSerializer)]
590        tags: &std::collections::BTreeMap<
591            super::super::super::super::super::objects::api::TagName,
592            std::collections::BTreeSet<
593                super::super::super::super::super::objects::api::TagValue,
594            >,
595        >,
596    ) -> Result<
597        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
598        conjure_http::private::Error,
599    >;
600    /// Gets a connection by its RID.
601    #[endpoint(
602        method = GET,
603        path = "/data-source/connection/v1/connection/{rid}",
604        name = "getConnection",
605        accept = conjure_http::client::StdResponseDeserializer
606    )]
607    async fn get_connection(
608        &self,
609        #[auth]
610        auth_: &conjure_object::BearerToken,
611        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
612        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
613    ) -> Result<
614        super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
615        conjure_http::private::Error,
616    >;
617    /// Gets a set of connections by their RIDs.
618    #[endpoint(
619        method = POST,
620        path = "/data-source/connection/v1/connection/multiple",
621        name = "getConnections",
622        accept = conjure_http::client::conjure::CollectionResponseDeserializer
623    )]
624    async fn get_connections(
625        &self,
626        #[auth]
627        auth_: &conjure_object::BearerToken,
628        #[body(serializer = conjure_http::client::StdRequestSerializer)]
629        rids: &std::collections::BTreeSet<
630            super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
631        >,
632    ) -> Result<
633        std::collections::BTreeSet<
634            super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
635        >,
636        conjure_http::private::Error,
637    >;
638    /// Lists all connections.
639    #[endpoint(
640        method = GET,
641        path = "/data-source/connection/v1/connections",
642        name = "listConnections",
643        accept = conjure_http::client::conjure::CollectionResponseDeserializer
644    )]
645    async fn list_connections(
646        &self,
647        #[auth]
648        auth_: &conjure_object::BearerToken,
649        #[query(
650            name = "includeArchived",
651            encoder = conjure_http::client::conjure::PlainSeqEncoder
652        )]
653        include_archived: Option<bool>,
654        #[query(
655            name = "workspaces",
656            encoder = conjure_http::client::conjure::PlainSeqEncoder
657        )]
658        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
659    ) -> Result<
660        std::collections::BTreeSet<
661            super::super::super::super::super::objects::scout::datasource::connection::api::Connection,
662        >,
663        conjure_http::private::Error,
664    >;
665    /// Lists connections with pagination. Returns connections ordered by creation time descending.
666    #[endpoint(
667        method = GET,
668        path = "/data-source/connection/v2/connections",
669        name = "listConnectionsV2",
670        accept = conjure_http::client::StdResponseDeserializer
671    )]
672    async fn list_connections_v2(
673        &self,
674        #[auth]
675        auth_: &conjure_object::BearerToken,
676        #[query(
677            name = "includeArchived",
678            encoder = conjure_http::client::conjure::PlainSeqEncoder
679        )]
680        include_archived: Option<bool>,
681        #[query(
682            name = "workspaces",
683            encoder = conjure_http::client::conjure::PlainSeqEncoder
684        )]
685        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
686        #[query(
687            name = "pageSize",
688            encoder = conjure_http::client::conjure::PlainSeqEncoder
689        )]
690        page_size: Option<i32>,
691        #[query(
692            name = "nextPageToken",
693            encoder = conjure_http::client::conjure::PlainSeqEncoder
694        )]
695        next_page_token: Option<&super::super::super::super::super::objects::api::Token>,
696    ) -> Result<
697        super::super::super::super::super::objects::scout::datasource::connection::api::ListConnectionsResponse,
698        conjure_http::private::Error,
699    >;
700    /// Lists connections that reference the specified Nominal data sources, with pagination.
701    /// Only returns connections within the caller's organization.
702    #[endpoint(
703        method = GET,
704        path = "/data-source/connection/v2/connections/by-datasource",
705        name = "listConnectionsByNominalDataSource",
706        accept = conjure_http::client::StdResponseDeserializer
707    )]
708    async fn list_connections_by_nominal_data_source(
709        &self,
710        #[auth]
711        auth_: &conjure_object::BearerToken,
712        #[query(
713            name = "nominalDataSourceRids",
714            encoder = conjure_http::client::conjure::PlainSeqEncoder
715        )]
716        nominal_data_source_rids: &std::collections::BTreeSet<
717            conjure_object::ResourceIdentifier,
718        >,
719        #[query(
720            name = "workspaces",
721            encoder = conjure_http::client::conjure::PlainSeqEncoder
722        )]
723        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
724        #[query(
725            name = "pageSize",
726            encoder = conjure_http::client::conjure::PlainSeqEncoder
727        )]
728        page_size: Option<i32>,
729        #[query(
730            name = "nextPageToken",
731            encoder = conjure_http::client::conjure::PlainSeqEncoder
732        )]
733        next_page_token: Option<&super::super::super::super::super::objects::api::Token>,
734    ) -> Result<
735        super::super::super::super::super::objects::scout::datasource::connection::api::ListConnectionsResponse,
736        conjure_http::private::Error,
737    >;
738    /// Archives a connection, which simply tags the connection for a client to filter.
739    #[endpoint(
740        method = POST,
741        path = "/data-source/connection/v1/connections/{rid}/archive",
742        name = "archiveConnection",
743        accept = conjure_http::client::conjure::EmptyResponseDeserializer
744    )]
745    async fn archive_connection(
746        &self,
747        #[auth]
748        auth_: &conjure_object::BearerToken,
749        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
750        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
751    ) -> Result<(), conjure_http::private::Error>;
752    /// Undoes the archiving of a connection.
753    #[endpoint(
754        method = POST,
755        path = "/data-source/connection/v1/connections/{rid}/unarchive",
756        name = "unarchiveConnection",
757        accept = conjure_http::client::conjure::EmptyResponseDeserializer
758    )]
759    async fn unarchive_connection(
760        &self,
761        #[auth]
762        auth_: &conjure_object::BearerToken,
763        #[path(name = "rid", encoder = conjure_http::client::conjure::PlainEncoder)]
764        rid: &super::super::super::super::super::objects::scout::datasource::connection::api::ConnectionRid,
765    ) -> Result<(), conjure_http::private::Error>;
766}