Skip to main content

nominal_api/conjure/clients/scout/
template_service.rs

1use conjure_http::endpoint;
2/// TemplateService manages templates, which are workbooks that
3/// can be re-used across runs. Templates are versioned.
4#[conjure_http::conjure_client(name = "TemplateService")]
5pub trait TemplateService<
6    #[response_body]
7    I: Iterator<
8            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
9        >,
10> {
11    /// Creates a new template.
12    #[endpoint(
13        method = POST,
14        path = "/scout/v1/template",
15        name = "create",
16        accept = conjure_http::client::StdResponseDeserializer
17    )]
18    fn create(
19        &self,
20        #[auth]
21        auth_: &conjure_object::BearerToken,
22        #[body(serializer = conjure_http::client::StdRequestSerializer)]
23        request: &super::super::super::objects::scout::template::api::CreateTemplateRequest,
24    ) -> Result<
25        super::super::super::objects::scout::template::api::Template,
26        conjure_http::private::Error,
27    >;
28    /// Must only pass one of (branch, commit). If neither are passed,
29    /// the latest commit on the "main" branch is returned.
30    /// Throws if the template, branch, or commit doesn't exist.
31    #[endpoint(
32        method = GET,
33        path = "/scout/v1/template/{templateRid}",
34        name = "get",
35        accept = conjure_http::client::StdResponseDeserializer
36    )]
37    fn get(
38        &self,
39        #[auth]
40        auth_: &conjure_object::BearerToken,
41        #[path(
42            name = "templateRid",
43            encoder = conjure_http::client::conjure::PlainEncoder
44        )]
45        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
46        #[query(
47            name = "branch",
48            encoder = conjure_http::client::conjure::PlainSeqEncoder
49        )]
50        branch: Option<
51            &super::super::super::objects::scout::versioning::api::BranchName,
52        >,
53        #[query(
54            name = "commit",
55            encoder = conjure_http::client::conjure::PlainSeqEncoder
56        )]
57        commit: Option<&super::super::super::objects::scout::versioning::api::CommitId>,
58    ) -> Result<
59        super::super::super::objects::scout::template::api::Template,
60        conjure_http::private::Error,
61    >;
62    #[endpoint(
63        method = POST,
64        path = "/scout/v1/template/batch-get-metadata",
65        name = "batchGetMetadata",
66        accept = conjure_http::client::conjure::CollectionResponseDeserializer
67    )]
68    fn batch_get_metadata(
69        &self,
70        #[auth]
71        auth_: &conjure_object::BearerToken,
72        #[body(serializer = conjure_http::client::StdRequestSerializer)]
73        rids: &std::collections::BTreeSet<
74            super::super::super::objects::scout::rids::api::TemplateRid,
75        >,
76    ) -> Result<
77        std::collections::BTreeSet<
78            super::super::super::objects::scout::template::api::TemplateSummary,
79        >,
80        conjure_http::private::Error,
81    >;
82    /// Creates a commit that may be compacted, e.g cleaned up and not exist anymore.
83    /// Throws if the template or branch doesn't exist.
84    /// Throws if the latest commit doesn't match the provided id.
85    /// Throws if you save to an archived template.
86    #[endpoint(
87        method = POST,
88        path = "/scout/v1/template/{templateRid}/save-working-state",
89        name = "saveWorkingState",
90        accept = conjure_http::client::StdResponseDeserializer
91    )]
92    fn save_working_state(
93        &self,
94        #[auth]
95        auth_: &conjure_object::BearerToken,
96        #[path(
97            name = "templateRid",
98            encoder = conjure_http::client::conjure::PlainEncoder
99        )]
100        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
101        #[query(
102            name = "branch",
103            encoder = conjure_http::client::conjure::PlainSeqEncoder
104        )]
105        branch: Option<
106            &super::super::super::objects::scout::versioning::api::BranchName,
107        >,
108        #[body(serializer = conjure_http::client::StdRequestSerializer)]
109        request: &super::super::super::objects::scout::template::api::SaveTemplateRequest,
110    ) -> Result<
111        super::super::super::objects::scout::template::api::Template,
112        conjure_http::private::Error,
113    >;
114    /// Returns the set of all ref names used by the template.
115    #[endpoint(
116        method = GET,
117        path = "/scout/v1/template/{templateRid}/ref-names",
118        name = "getUsedRefNames",
119        accept = conjure_http::client::conjure::CollectionResponseDeserializer
120    )]
121    fn get_used_ref_names(
122        &self,
123        #[auth]
124        auth_: &conjure_object::BearerToken,
125        #[path(
126            name = "templateRid",
127            encoder = conjure_http::client::conjure::PlainEncoder
128        )]
129        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
130        #[query(
131            name = "branch",
132            encoder = conjure_http::client::conjure::PlainSeqEncoder
133        )]
134        branch: Option<
135            &super::super::super::objects::scout::versioning::api::BranchName,
136        >,
137        #[query(
138            name = "commit",
139            encoder = conjure_http::client::conjure::PlainSeqEncoder
140        )]
141        commit: Option<&super::super::super::objects::scout::versioning::api::CommitId>,
142    ) -> Result<
143        std::collections::BTreeSet<
144            super::super::super::objects::scout::api::DataSourceRefName,
145        >,
146        conjure_http::private::Error,
147    >;
148    /// Updates the data source ref names for all variables used in the template.
149    #[endpoint(
150        method = POST,
151        path = "/scout/v1/template/{templateRid}/update-ref-names",
152        name = "updateRefNames",
153        accept = conjure_http::client::StdResponseDeserializer
154    )]
155    fn update_ref_names(
156        &self,
157        #[auth]
158        auth_: &conjure_object::BearerToken,
159        #[path(
160            name = "templateRid",
161            encoder = conjure_http::client::conjure::PlainEncoder
162        )]
163        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
164        #[query(
165            name = "branch",
166            encoder = conjure_http::client::conjure::PlainSeqEncoder
167        )]
168        branch: Option<
169            &super::super::super::objects::scout::versioning::api::BranchName,
170        >,
171        #[body(serializer = conjure_http::client::StdRequestSerializer)]
172        request: &super::super::super::objects::scout::template::api::UpdateRefNameRequest,
173    ) -> Result<
174        super::super::super::objects::scout::template::api::Template,
175        conjure_http::private::Error,
176    >;
177    /// Creates a commit with a commit message.
178    /// Throws if the template or branch doesn't exist.
179    /// Throws if the latest commit doesn't match the provided id.
180    /// Throws if you commit to an archived template.
181    #[endpoint(
182        method = POST,
183        path = "/scout/v1/template/{templateRid}/commit",
184        name = "commit",
185        accept = conjure_http::client::StdResponseDeserializer
186    )]
187    fn commit(
188        &self,
189        #[auth]
190        auth_: &conjure_object::BearerToken,
191        #[path(
192            name = "templateRid",
193            encoder = conjure_http::client::conjure::PlainEncoder
194        )]
195        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
196        #[query(
197            name = "branch",
198            encoder = conjure_http::client::conjure::PlainSeqEncoder
199        )]
200        branch: Option<
201            &super::super::super::objects::scout::versioning::api::BranchName,
202        >,
203        #[body(serializer = conjure_http::client::StdRequestSerializer)]
204        request: &super::super::super::objects::scout::template::api::CommitTemplateRequest,
205    ) -> Result<
206        super::super::super::objects::scout::template::api::Template,
207        conjure_http::private::Error,
208    >;
209    /// Throws if the template doesn't exist.
210    #[endpoint(
211        method = POST,
212        path = "/scout/v1/template/{templateRid}/metadata",
213        name = "updateMetadata",
214        accept = conjure_http::client::StdResponseDeserializer
215    )]
216    fn update_metadata(
217        &self,
218        #[auth]
219        auth_: &conjure_object::BearerToken,
220        #[path(
221            name = "templateRid",
222            encoder = conjure_http::client::conjure::PlainEncoder
223        )]
224        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
225        #[body(serializer = conjure_http::client::StdRequestSerializer)]
226        request: &super::super::super::objects::scout::template::api::UpdateMetadataRequest,
227    ) -> Result<
228        super::super::super::objects::scout::template::api::TemplateMetadata,
229        conjure_http::private::Error,
230    >;
231    #[endpoint(
232        method = POST,
233        path = "/scout/v1/template/search",
234        name = "searchTemplates",
235        accept = conjure_http::client::StdResponseDeserializer
236    )]
237    fn search_templates(
238        &self,
239        #[auth]
240        auth_: &conjure_object::BearerToken,
241        #[body(serializer = conjure_http::client::StdRequestSerializer)]
242        request: &super::super::super::objects::scout::template::api::SearchTemplatesRequest,
243    ) -> Result<
244        super::super::super::objects::scout::template::api::SearchTemplatesResponse,
245        conjure_http::private::Error,
246    >;
247    #[endpoint(
248        method = GET,
249        path = "/scout/v1/template/get-all-labels-properties",
250        name = "getAllLabelsAndProperties",
251        accept = conjure_http::client::StdResponseDeserializer
252    )]
253    fn get_all_labels_and_properties(
254        &self,
255        #[auth]
256        auth_: &conjure_object::BearerToken,
257        #[query(
258            name = "workspaces",
259            encoder = conjure_http::client::conjure::PlainSeqEncoder
260        )]
261        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
262    ) -> Result<
263        super::super::super::objects::scout::template::api::GetAllLabelsAndPropertiesResponse,
264        conjure_http::private::Error,
265    >;
266    /// Duplicates an existing template, copying its content (layout, charts, variables)
267    /// and optionally overriding metadata fields such as title, description, labels,
268    /// and properties. Returns the newly created template.
269    #[endpoint(
270        method = POST,
271        path = "/scout/v1/template/{templateRid}/duplicate",
272        name = "duplicate",
273        accept = conjure_http::client::StdResponseDeserializer
274    )]
275    fn duplicate(
276        &self,
277        #[auth]
278        auth_: &conjure_object::BearerToken,
279        #[path(
280            name = "templateRid",
281            encoder = conjure_http::client::conjure::PlainEncoder
282        )]
283        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
284        #[body(serializer = conjure_http::client::StdRequestSerializer)]
285        request: &super::super::super::objects::scout::template::api::DuplicateTemplateRequest,
286    ) -> Result<
287        super::super::super::objects::scout::template::api::Template,
288        conjure_http::private::Error,
289    >;
290    /// Merges the given branch to the "main" branch.
291    /// Throws if the template or branch doesn't exist.
292    /// Throws if the latest commit doesn't match the provided id.
293    /// Throws if you merge on an archived template.
294    #[endpoint(
295        method = POST,
296        path = "/scout/v1/template/{templateRid}/merge-to-main",
297        name = "mergeToMain",
298        accept = conjure_http::client::StdResponseDeserializer
299    )]
300    fn merge_to_main(
301        &self,
302        #[auth]
303        auth_: &conjure_object::BearerToken,
304        #[path(
305            name = "templateRid",
306            encoder = conjure_http::client::conjure::PlainEncoder
307        )]
308        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
309        #[body(serializer = conjure_http::client::StdRequestSerializer)]
310        request: &super::super::super::objects::scout::template::api::MergeToMainRequest,
311    ) -> Result<
312        super::super::super::objects::scout::template::api::Template,
313        conjure_http::private::Error,
314    >;
315}
316/// TemplateService manages templates, which are workbooks that
317/// can be re-used across runs. Templates are versioned.
318#[conjure_http::conjure_client(name = "TemplateService")]
319pub trait AsyncTemplateService<
320    #[response_body]
321    I: conjure_http::private::Stream<
322            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
323        >,
324> {
325    /// Creates a new template.
326    #[endpoint(
327        method = POST,
328        path = "/scout/v1/template",
329        name = "create",
330        accept = conjure_http::client::StdResponseDeserializer
331    )]
332    async fn create(
333        &self,
334        #[auth]
335        auth_: &conjure_object::BearerToken,
336        #[body(serializer = conjure_http::client::StdRequestSerializer)]
337        request: &super::super::super::objects::scout::template::api::CreateTemplateRequest,
338    ) -> Result<
339        super::super::super::objects::scout::template::api::Template,
340        conjure_http::private::Error,
341    >;
342    /// Must only pass one of (branch, commit). If neither are passed,
343    /// the latest commit on the "main" branch is returned.
344    /// Throws if the template, branch, or commit doesn't exist.
345    #[endpoint(
346        method = GET,
347        path = "/scout/v1/template/{templateRid}",
348        name = "get",
349        accept = conjure_http::client::StdResponseDeserializer
350    )]
351    async fn get(
352        &self,
353        #[auth]
354        auth_: &conjure_object::BearerToken,
355        #[path(
356            name = "templateRid",
357            encoder = conjure_http::client::conjure::PlainEncoder
358        )]
359        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
360        #[query(
361            name = "branch",
362            encoder = conjure_http::client::conjure::PlainSeqEncoder
363        )]
364        branch: Option<
365            &super::super::super::objects::scout::versioning::api::BranchName,
366        >,
367        #[query(
368            name = "commit",
369            encoder = conjure_http::client::conjure::PlainSeqEncoder
370        )]
371        commit: Option<&super::super::super::objects::scout::versioning::api::CommitId>,
372    ) -> Result<
373        super::super::super::objects::scout::template::api::Template,
374        conjure_http::private::Error,
375    >;
376    #[endpoint(
377        method = POST,
378        path = "/scout/v1/template/batch-get-metadata",
379        name = "batchGetMetadata",
380        accept = conjure_http::client::conjure::CollectionResponseDeserializer
381    )]
382    async fn batch_get_metadata(
383        &self,
384        #[auth]
385        auth_: &conjure_object::BearerToken,
386        #[body(serializer = conjure_http::client::StdRequestSerializer)]
387        rids: &std::collections::BTreeSet<
388            super::super::super::objects::scout::rids::api::TemplateRid,
389        >,
390    ) -> Result<
391        std::collections::BTreeSet<
392            super::super::super::objects::scout::template::api::TemplateSummary,
393        >,
394        conjure_http::private::Error,
395    >;
396    /// Creates a commit that may be compacted, e.g cleaned up and not exist anymore.
397    /// Throws if the template or branch doesn't exist.
398    /// Throws if the latest commit doesn't match the provided id.
399    /// Throws if you save to an archived template.
400    #[endpoint(
401        method = POST,
402        path = "/scout/v1/template/{templateRid}/save-working-state",
403        name = "saveWorkingState",
404        accept = conjure_http::client::StdResponseDeserializer
405    )]
406    async fn save_working_state(
407        &self,
408        #[auth]
409        auth_: &conjure_object::BearerToken,
410        #[path(
411            name = "templateRid",
412            encoder = conjure_http::client::conjure::PlainEncoder
413        )]
414        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
415        #[query(
416            name = "branch",
417            encoder = conjure_http::client::conjure::PlainSeqEncoder
418        )]
419        branch: Option<
420            &super::super::super::objects::scout::versioning::api::BranchName,
421        >,
422        #[body(serializer = conjure_http::client::StdRequestSerializer)]
423        request: &super::super::super::objects::scout::template::api::SaveTemplateRequest,
424    ) -> Result<
425        super::super::super::objects::scout::template::api::Template,
426        conjure_http::private::Error,
427    >;
428    /// Returns the set of all ref names used by the template.
429    #[endpoint(
430        method = GET,
431        path = "/scout/v1/template/{templateRid}/ref-names",
432        name = "getUsedRefNames",
433        accept = conjure_http::client::conjure::CollectionResponseDeserializer
434    )]
435    async fn get_used_ref_names(
436        &self,
437        #[auth]
438        auth_: &conjure_object::BearerToken,
439        #[path(
440            name = "templateRid",
441            encoder = conjure_http::client::conjure::PlainEncoder
442        )]
443        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
444        #[query(
445            name = "branch",
446            encoder = conjure_http::client::conjure::PlainSeqEncoder
447        )]
448        branch: Option<
449            &super::super::super::objects::scout::versioning::api::BranchName,
450        >,
451        #[query(
452            name = "commit",
453            encoder = conjure_http::client::conjure::PlainSeqEncoder
454        )]
455        commit: Option<&super::super::super::objects::scout::versioning::api::CommitId>,
456    ) -> Result<
457        std::collections::BTreeSet<
458            super::super::super::objects::scout::api::DataSourceRefName,
459        >,
460        conjure_http::private::Error,
461    >;
462    /// Updates the data source ref names for all variables used in the template.
463    #[endpoint(
464        method = POST,
465        path = "/scout/v1/template/{templateRid}/update-ref-names",
466        name = "updateRefNames",
467        accept = conjure_http::client::StdResponseDeserializer
468    )]
469    async fn update_ref_names(
470        &self,
471        #[auth]
472        auth_: &conjure_object::BearerToken,
473        #[path(
474            name = "templateRid",
475            encoder = conjure_http::client::conjure::PlainEncoder
476        )]
477        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
478        #[query(
479            name = "branch",
480            encoder = conjure_http::client::conjure::PlainSeqEncoder
481        )]
482        branch: Option<
483            &super::super::super::objects::scout::versioning::api::BranchName,
484        >,
485        #[body(serializer = conjure_http::client::StdRequestSerializer)]
486        request: &super::super::super::objects::scout::template::api::UpdateRefNameRequest,
487    ) -> Result<
488        super::super::super::objects::scout::template::api::Template,
489        conjure_http::private::Error,
490    >;
491    /// Creates a commit with a commit message.
492    /// Throws if the template or branch doesn't exist.
493    /// Throws if the latest commit doesn't match the provided id.
494    /// Throws if you commit to an archived template.
495    #[endpoint(
496        method = POST,
497        path = "/scout/v1/template/{templateRid}/commit",
498        name = "commit",
499        accept = conjure_http::client::StdResponseDeserializer
500    )]
501    async fn commit(
502        &self,
503        #[auth]
504        auth_: &conjure_object::BearerToken,
505        #[path(
506            name = "templateRid",
507            encoder = conjure_http::client::conjure::PlainEncoder
508        )]
509        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
510        #[query(
511            name = "branch",
512            encoder = conjure_http::client::conjure::PlainSeqEncoder
513        )]
514        branch: Option<
515            &super::super::super::objects::scout::versioning::api::BranchName,
516        >,
517        #[body(serializer = conjure_http::client::StdRequestSerializer)]
518        request: &super::super::super::objects::scout::template::api::CommitTemplateRequest,
519    ) -> Result<
520        super::super::super::objects::scout::template::api::Template,
521        conjure_http::private::Error,
522    >;
523    /// Throws if the template doesn't exist.
524    #[endpoint(
525        method = POST,
526        path = "/scout/v1/template/{templateRid}/metadata",
527        name = "updateMetadata",
528        accept = conjure_http::client::StdResponseDeserializer
529    )]
530    async fn update_metadata(
531        &self,
532        #[auth]
533        auth_: &conjure_object::BearerToken,
534        #[path(
535            name = "templateRid",
536            encoder = conjure_http::client::conjure::PlainEncoder
537        )]
538        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
539        #[body(serializer = conjure_http::client::StdRequestSerializer)]
540        request: &super::super::super::objects::scout::template::api::UpdateMetadataRequest,
541    ) -> Result<
542        super::super::super::objects::scout::template::api::TemplateMetadata,
543        conjure_http::private::Error,
544    >;
545    #[endpoint(
546        method = POST,
547        path = "/scout/v1/template/search",
548        name = "searchTemplates",
549        accept = conjure_http::client::StdResponseDeserializer
550    )]
551    async fn search_templates(
552        &self,
553        #[auth]
554        auth_: &conjure_object::BearerToken,
555        #[body(serializer = conjure_http::client::StdRequestSerializer)]
556        request: &super::super::super::objects::scout::template::api::SearchTemplatesRequest,
557    ) -> Result<
558        super::super::super::objects::scout::template::api::SearchTemplatesResponse,
559        conjure_http::private::Error,
560    >;
561    #[endpoint(
562        method = GET,
563        path = "/scout/v1/template/get-all-labels-properties",
564        name = "getAllLabelsAndProperties",
565        accept = conjure_http::client::StdResponseDeserializer
566    )]
567    async fn get_all_labels_and_properties(
568        &self,
569        #[auth]
570        auth_: &conjure_object::BearerToken,
571        #[query(
572            name = "workspaces",
573            encoder = conjure_http::client::conjure::PlainSeqEncoder
574        )]
575        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
576    ) -> Result<
577        super::super::super::objects::scout::template::api::GetAllLabelsAndPropertiesResponse,
578        conjure_http::private::Error,
579    >;
580    /// Duplicates an existing template, copying its content (layout, charts, variables)
581    /// and optionally overriding metadata fields such as title, description, labels,
582    /// and properties. Returns the newly created template.
583    #[endpoint(
584        method = POST,
585        path = "/scout/v1/template/{templateRid}/duplicate",
586        name = "duplicate",
587        accept = conjure_http::client::StdResponseDeserializer
588    )]
589    async fn duplicate(
590        &self,
591        #[auth]
592        auth_: &conjure_object::BearerToken,
593        #[path(
594            name = "templateRid",
595            encoder = conjure_http::client::conjure::PlainEncoder
596        )]
597        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
598        #[body(serializer = conjure_http::client::StdRequestSerializer)]
599        request: &super::super::super::objects::scout::template::api::DuplicateTemplateRequest,
600    ) -> Result<
601        super::super::super::objects::scout::template::api::Template,
602        conjure_http::private::Error,
603    >;
604    /// Merges the given branch to the "main" branch.
605    /// Throws if the template or branch doesn't exist.
606    /// Throws if the latest commit doesn't match the provided id.
607    /// Throws if you merge on an archived template.
608    #[endpoint(
609        method = POST,
610        path = "/scout/v1/template/{templateRid}/merge-to-main",
611        name = "mergeToMain",
612        accept = conjure_http::client::StdResponseDeserializer
613    )]
614    async fn merge_to_main(
615        &self,
616        #[auth]
617        auth_: &conjure_object::BearerToken,
618        #[path(
619            name = "templateRid",
620            encoder = conjure_http::client::conjure::PlainEncoder
621        )]
622        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
623        #[body(serializer = conjure_http::client::StdRequestSerializer)]
624        request: &super::super::super::objects::scout::template::api::MergeToMainRequest,
625    ) -> Result<
626        super::super::super::objects::scout::template::api::Template,
627        conjure_http::private::Error,
628    >;
629}
630/// TemplateService manages templates, which are workbooks that
631/// can be re-used across runs. Templates are versioned.
632#[conjure_http::conjure_client(name = "TemplateService", local)]
633pub trait LocalAsyncTemplateService<
634    #[response_body]
635    I: conjure_http::private::Stream<
636            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
637        >,
638> {
639    /// Creates a new template.
640    #[endpoint(
641        method = POST,
642        path = "/scout/v1/template",
643        name = "create",
644        accept = conjure_http::client::StdResponseDeserializer
645    )]
646    async fn create(
647        &self,
648        #[auth]
649        auth_: &conjure_object::BearerToken,
650        #[body(serializer = conjure_http::client::StdRequestSerializer)]
651        request: &super::super::super::objects::scout::template::api::CreateTemplateRequest,
652    ) -> Result<
653        super::super::super::objects::scout::template::api::Template,
654        conjure_http::private::Error,
655    >;
656    /// Must only pass one of (branch, commit). If neither are passed,
657    /// the latest commit on the "main" branch is returned.
658    /// Throws if the template, branch, or commit doesn't exist.
659    #[endpoint(
660        method = GET,
661        path = "/scout/v1/template/{templateRid}",
662        name = "get",
663        accept = conjure_http::client::StdResponseDeserializer
664    )]
665    async fn get(
666        &self,
667        #[auth]
668        auth_: &conjure_object::BearerToken,
669        #[path(
670            name = "templateRid",
671            encoder = conjure_http::client::conjure::PlainEncoder
672        )]
673        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
674        #[query(
675            name = "branch",
676            encoder = conjure_http::client::conjure::PlainSeqEncoder
677        )]
678        branch: Option<
679            &super::super::super::objects::scout::versioning::api::BranchName,
680        >,
681        #[query(
682            name = "commit",
683            encoder = conjure_http::client::conjure::PlainSeqEncoder
684        )]
685        commit: Option<&super::super::super::objects::scout::versioning::api::CommitId>,
686    ) -> Result<
687        super::super::super::objects::scout::template::api::Template,
688        conjure_http::private::Error,
689    >;
690    #[endpoint(
691        method = POST,
692        path = "/scout/v1/template/batch-get-metadata",
693        name = "batchGetMetadata",
694        accept = conjure_http::client::conjure::CollectionResponseDeserializer
695    )]
696    async fn batch_get_metadata(
697        &self,
698        #[auth]
699        auth_: &conjure_object::BearerToken,
700        #[body(serializer = conjure_http::client::StdRequestSerializer)]
701        rids: &std::collections::BTreeSet<
702            super::super::super::objects::scout::rids::api::TemplateRid,
703        >,
704    ) -> Result<
705        std::collections::BTreeSet<
706            super::super::super::objects::scout::template::api::TemplateSummary,
707        >,
708        conjure_http::private::Error,
709    >;
710    /// Creates a commit that may be compacted, e.g cleaned up and not exist anymore.
711    /// Throws if the template or branch doesn't exist.
712    /// Throws if the latest commit doesn't match the provided id.
713    /// Throws if you save to an archived template.
714    #[endpoint(
715        method = POST,
716        path = "/scout/v1/template/{templateRid}/save-working-state",
717        name = "saveWorkingState",
718        accept = conjure_http::client::StdResponseDeserializer
719    )]
720    async fn save_working_state(
721        &self,
722        #[auth]
723        auth_: &conjure_object::BearerToken,
724        #[path(
725            name = "templateRid",
726            encoder = conjure_http::client::conjure::PlainEncoder
727        )]
728        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
729        #[query(
730            name = "branch",
731            encoder = conjure_http::client::conjure::PlainSeqEncoder
732        )]
733        branch: Option<
734            &super::super::super::objects::scout::versioning::api::BranchName,
735        >,
736        #[body(serializer = conjure_http::client::StdRequestSerializer)]
737        request: &super::super::super::objects::scout::template::api::SaveTemplateRequest,
738    ) -> Result<
739        super::super::super::objects::scout::template::api::Template,
740        conjure_http::private::Error,
741    >;
742    /// Returns the set of all ref names used by the template.
743    #[endpoint(
744        method = GET,
745        path = "/scout/v1/template/{templateRid}/ref-names",
746        name = "getUsedRefNames",
747        accept = conjure_http::client::conjure::CollectionResponseDeserializer
748    )]
749    async fn get_used_ref_names(
750        &self,
751        #[auth]
752        auth_: &conjure_object::BearerToken,
753        #[path(
754            name = "templateRid",
755            encoder = conjure_http::client::conjure::PlainEncoder
756        )]
757        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
758        #[query(
759            name = "branch",
760            encoder = conjure_http::client::conjure::PlainSeqEncoder
761        )]
762        branch: Option<
763            &super::super::super::objects::scout::versioning::api::BranchName,
764        >,
765        #[query(
766            name = "commit",
767            encoder = conjure_http::client::conjure::PlainSeqEncoder
768        )]
769        commit: Option<&super::super::super::objects::scout::versioning::api::CommitId>,
770    ) -> Result<
771        std::collections::BTreeSet<
772            super::super::super::objects::scout::api::DataSourceRefName,
773        >,
774        conjure_http::private::Error,
775    >;
776    /// Updates the data source ref names for all variables used in the template.
777    #[endpoint(
778        method = POST,
779        path = "/scout/v1/template/{templateRid}/update-ref-names",
780        name = "updateRefNames",
781        accept = conjure_http::client::StdResponseDeserializer
782    )]
783    async fn update_ref_names(
784        &self,
785        #[auth]
786        auth_: &conjure_object::BearerToken,
787        #[path(
788            name = "templateRid",
789            encoder = conjure_http::client::conjure::PlainEncoder
790        )]
791        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
792        #[query(
793            name = "branch",
794            encoder = conjure_http::client::conjure::PlainSeqEncoder
795        )]
796        branch: Option<
797            &super::super::super::objects::scout::versioning::api::BranchName,
798        >,
799        #[body(serializer = conjure_http::client::StdRequestSerializer)]
800        request: &super::super::super::objects::scout::template::api::UpdateRefNameRequest,
801    ) -> Result<
802        super::super::super::objects::scout::template::api::Template,
803        conjure_http::private::Error,
804    >;
805    /// Creates a commit with a commit message.
806    /// Throws if the template or branch doesn't exist.
807    /// Throws if the latest commit doesn't match the provided id.
808    /// Throws if you commit to an archived template.
809    #[endpoint(
810        method = POST,
811        path = "/scout/v1/template/{templateRid}/commit",
812        name = "commit",
813        accept = conjure_http::client::StdResponseDeserializer
814    )]
815    async fn commit(
816        &self,
817        #[auth]
818        auth_: &conjure_object::BearerToken,
819        #[path(
820            name = "templateRid",
821            encoder = conjure_http::client::conjure::PlainEncoder
822        )]
823        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
824        #[query(
825            name = "branch",
826            encoder = conjure_http::client::conjure::PlainSeqEncoder
827        )]
828        branch: Option<
829            &super::super::super::objects::scout::versioning::api::BranchName,
830        >,
831        #[body(serializer = conjure_http::client::StdRequestSerializer)]
832        request: &super::super::super::objects::scout::template::api::CommitTemplateRequest,
833    ) -> Result<
834        super::super::super::objects::scout::template::api::Template,
835        conjure_http::private::Error,
836    >;
837    /// Throws if the template doesn't exist.
838    #[endpoint(
839        method = POST,
840        path = "/scout/v1/template/{templateRid}/metadata",
841        name = "updateMetadata",
842        accept = conjure_http::client::StdResponseDeserializer
843    )]
844    async fn update_metadata(
845        &self,
846        #[auth]
847        auth_: &conjure_object::BearerToken,
848        #[path(
849            name = "templateRid",
850            encoder = conjure_http::client::conjure::PlainEncoder
851        )]
852        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
853        #[body(serializer = conjure_http::client::StdRequestSerializer)]
854        request: &super::super::super::objects::scout::template::api::UpdateMetadataRequest,
855    ) -> Result<
856        super::super::super::objects::scout::template::api::TemplateMetadata,
857        conjure_http::private::Error,
858    >;
859    #[endpoint(
860        method = POST,
861        path = "/scout/v1/template/search",
862        name = "searchTemplates",
863        accept = conjure_http::client::StdResponseDeserializer
864    )]
865    async fn search_templates(
866        &self,
867        #[auth]
868        auth_: &conjure_object::BearerToken,
869        #[body(serializer = conjure_http::client::StdRequestSerializer)]
870        request: &super::super::super::objects::scout::template::api::SearchTemplatesRequest,
871    ) -> Result<
872        super::super::super::objects::scout::template::api::SearchTemplatesResponse,
873        conjure_http::private::Error,
874    >;
875    #[endpoint(
876        method = GET,
877        path = "/scout/v1/template/get-all-labels-properties",
878        name = "getAllLabelsAndProperties",
879        accept = conjure_http::client::StdResponseDeserializer
880    )]
881    async fn get_all_labels_and_properties(
882        &self,
883        #[auth]
884        auth_: &conjure_object::BearerToken,
885        #[query(
886            name = "workspaces",
887            encoder = conjure_http::client::conjure::PlainSeqEncoder
888        )]
889        workspaces: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
890    ) -> Result<
891        super::super::super::objects::scout::template::api::GetAllLabelsAndPropertiesResponse,
892        conjure_http::private::Error,
893    >;
894    /// Duplicates an existing template, copying its content (layout, charts, variables)
895    /// and optionally overriding metadata fields such as title, description, labels,
896    /// and properties. Returns the newly created template.
897    #[endpoint(
898        method = POST,
899        path = "/scout/v1/template/{templateRid}/duplicate",
900        name = "duplicate",
901        accept = conjure_http::client::StdResponseDeserializer
902    )]
903    async fn duplicate(
904        &self,
905        #[auth]
906        auth_: &conjure_object::BearerToken,
907        #[path(
908            name = "templateRid",
909            encoder = conjure_http::client::conjure::PlainEncoder
910        )]
911        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
912        #[body(serializer = conjure_http::client::StdRequestSerializer)]
913        request: &super::super::super::objects::scout::template::api::DuplicateTemplateRequest,
914    ) -> Result<
915        super::super::super::objects::scout::template::api::Template,
916        conjure_http::private::Error,
917    >;
918    /// Merges the given branch to the "main" branch.
919    /// Throws if the template or branch doesn't exist.
920    /// Throws if the latest commit doesn't match the provided id.
921    /// Throws if you merge on an archived template.
922    #[endpoint(
923        method = POST,
924        path = "/scout/v1/template/{templateRid}/merge-to-main",
925        name = "mergeToMain",
926        accept = conjure_http::client::StdResponseDeserializer
927    )]
928    async fn merge_to_main(
929        &self,
930        #[auth]
931        auth_: &conjure_object::BearerToken,
932        #[path(
933            name = "templateRid",
934            encoder = conjure_http::client::conjure::PlainEncoder
935        )]
936        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
937        #[body(serializer = conjure_http::client::StdRequestSerializer)]
938        request: &super::super::super::objects::scout::template::api::MergeToMainRequest,
939    ) -> Result<
940        super::super::super::objects::scout::template::api::Template,
941        conjure_http::private::Error,
942    >;
943}