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<
262            super::super::super::objects::api::rids::WorkspaceRid,
263        >,
264    ) -> Result<
265        super::super::super::objects::scout::template::api::GetAllLabelsAndPropertiesResponse,
266        conjure_http::private::Error,
267    >;
268    /// Duplicates an existing template, copying its content (layout, charts, variables)
269    /// and optionally overriding metadata fields such as title, description, labels,
270    /// and properties. Returns the newly created template.
271    #[endpoint(
272        method = POST,
273        path = "/scout/v1/template/{templateRid}/duplicate",
274        name = "duplicate",
275        accept = conjure_http::client::StdResponseDeserializer
276    )]
277    fn duplicate(
278        &self,
279        #[auth]
280        auth_: &conjure_object::BearerToken,
281        #[path(
282            name = "templateRid",
283            encoder = conjure_http::client::conjure::PlainEncoder
284        )]
285        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
286        #[body(serializer = conjure_http::client::StdRequestSerializer)]
287        request: &super::super::super::objects::scout::template::api::DuplicateTemplateRequest,
288    ) -> Result<
289        super::super::super::objects::scout::template::api::Template,
290        conjure_http::private::Error,
291    >;
292    /// Merges the given branch to the "main" branch.
293    /// Throws if the template or branch doesn't exist.
294    /// Throws if the latest commit doesn't match the provided id.
295    /// Throws if you merge on an archived template.
296    #[endpoint(
297        method = POST,
298        path = "/scout/v1/template/{templateRid}/merge-to-main",
299        name = "mergeToMain",
300        accept = conjure_http::client::StdResponseDeserializer
301    )]
302    fn merge_to_main(
303        &self,
304        #[auth]
305        auth_: &conjure_object::BearerToken,
306        #[path(
307            name = "templateRid",
308            encoder = conjure_http::client::conjure::PlainEncoder
309        )]
310        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
311        #[body(serializer = conjure_http::client::StdRequestSerializer)]
312        request: &super::super::super::objects::scout::template::api::MergeToMainRequest,
313    ) -> Result<
314        super::super::super::objects::scout::template::api::Template,
315        conjure_http::private::Error,
316    >;
317}
318/// TemplateService manages templates, which are workbooks that
319/// can be re-used across runs. Templates are versioned.
320#[conjure_http::conjure_client(name = "TemplateService")]
321pub trait AsyncTemplateService<
322    #[response_body]
323    I: conjure_http::private::Stream<
324            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
325        >,
326> {
327    /// Creates a new template.
328    #[endpoint(
329        method = POST,
330        path = "/scout/v1/template",
331        name = "create",
332        accept = conjure_http::client::StdResponseDeserializer
333    )]
334    async fn create(
335        &self,
336        #[auth]
337        auth_: &conjure_object::BearerToken,
338        #[body(serializer = conjure_http::client::StdRequestSerializer)]
339        request: &super::super::super::objects::scout::template::api::CreateTemplateRequest,
340    ) -> Result<
341        super::super::super::objects::scout::template::api::Template,
342        conjure_http::private::Error,
343    >;
344    /// Must only pass one of (branch, commit). If neither are passed,
345    /// the latest commit on the "main" branch is returned.
346    /// Throws if the template, branch, or commit doesn't exist.
347    #[endpoint(
348        method = GET,
349        path = "/scout/v1/template/{templateRid}",
350        name = "get",
351        accept = conjure_http::client::StdResponseDeserializer
352    )]
353    async fn get(
354        &self,
355        #[auth]
356        auth_: &conjure_object::BearerToken,
357        #[path(
358            name = "templateRid",
359            encoder = conjure_http::client::conjure::PlainEncoder
360        )]
361        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
362        #[query(
363            name = "branch",
364            encoder = conjure_http::client::conjure::PlainSeqEncoder
365        )]
366        branch: Option<
367            &super::super::super::objects::scout::versioning::api::BranchName,
368        >,
369        #[query(
370            name = "commit",
371            encoder = conjure_http::client::conjure::PlainSeqEncoder
372        )]
373        commit: Option<&super::super::super::objects::scout::versioning::api::CommitId>,
374    ) -> Result<
375        super::super::super::objects::scout::template::api::Template,
376        conjure_http::private::Error,
377    >;
378    #[endpoint(
379        method = POST,
380        path = "/scout/v1/template/batch-get-metadata",
381        name = "batchGetMetadata",
382        accept = conjure_http::client::conjure::CollectionResponseDeserializer
383    )]
384    async fn batch_get_metadata(
385        &self,
386        #[auth]
387        auth_: &conjure_object::BearerToken,
388        #[body(serializer = conjure_http::client::StdRequestSerializer)]
389        rids: &std::collections::BTreeSet<
390            super::super::super::objects::scout::rids::api::TemplateRid,
391        >,
392    ) -> Result<
393        std::collections::BTreeSet<
394            super::super::super::objects::scout::template::api::TemplateSummary,
395        >,
396        conjure_http::private::Error,
397    >;
398    /// Creates a commit that may be compacted, e.g cleaned up and not exist anymore.
399    /// Throws if the template or branch doesn't exist.
400    /// Throws if the latest commit doesn't match the provided id.
401    /// Throws if you save to an archived template.
402    #[endpoint(
403        method = POST,
404        path = "/scout/v1/template/{templateRid}/save-working-state",
405        name = "saveWorkingState",
406        accept = conjure_http::client::StdResponseDeserializer
407    )]
408    async fn save_working_state(
409        &self,
410        #[auth]
411        auth_: &conjure_object::BearerToken,
412        #[path(
413            name = "templateRid",
414            encoder = conjure_http::client::conjure::PlainEncoder
415        )]
416        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
417        #[query(
418            name = "branch",
419            encoder = conjure_http::client::conjure::PlainSeqEncoder
420        )]
421        branch: Option<
422            &super::super::super::objects::scout::versioning::api::BranchName,
423        >,
424        #[body(serializer = conjure_http::client::StdRequestSerializer)]
425        request: &super::super::super::objects::scout::template::api::SaveTemplateRequest,
426    ) -> Result<
427        super::super::super::objects::scout::template::api::Template,
428        conjure_http::private::Error,
429    >;
430    /// Returns the set of all ref names used by the template.
431    #[endpoint(
432        method = GET,
433        path = "/scout/v1/template/{templateRid}/ref-names",
434        name = "getUsedRefNames",
435        accept = conjure_http::client::conjure::CollectionResponseDeserializer
436    )]
437    async fn get_used_ref_names(
438        &self,
439        #[auth]
440        auth_: &conjure_object::BearerToken,
441        #[path(
442            name = "templateRid",
443            encoder = conjure_http::client::conjure::PlainEncoder
444        )]
445        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
446        #[query(
447            name = "branch",
448            encoder = conjure_http::client::conjure::PlainSeqEncoder
449        )]
450        branch: Option<
451            &super::super::super::objects::scout::versioning::api::BranchName,
452        >,
453        #[query(
454            name = "commit",
455            encoder = conjure_http::client::conjure::PlainSeqEncoder
456        )]
457        commit: Option<&super::super::super::objects::scout::versioning::api::CommitId>,
458    ) -> Result<
459        std::collections::BTreeSet<
460            super::super::super::objects::scout::api::DataSourceRefName,
461        >,
462        conjure_http::private::Error,
463    >;
464    /// Updates the data source ref names for all variables used in the template.
465    #[endpoint(
466        method = POST,
467        path = "/scout/v1/template/{templateRid}/update-ref-names",
468        name = "updateRefNames",
469        accept = conjure_http::client::StdResponseDeserializer
470    )]
471    async fn update_ref_names(
472        &self,
473        #[auth]
474        auth_: &conjure_object::BearerToken,
475        #[path(
476            name = "templateRid",
477            encoder = conjure_http::client::conjure::PlainEncoder
478        )]
479        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
480        #[query(
481            name = "branch",
482            encoder = conjure_http::client::conjure::PlainSeqEncoder
483        )]
484        branch: Option<
485            &super::super::super::objects::scout::versioning::api::BranchName,
486        >,
487        #[body(serializer = conjure_http::client::StdRequestSerializer)]
488        request: &super::super::super::objects::scout::template::api::UpdateRefNameRequest,
489    ) -> Result<
490        super::super::super::objects::scout::template::api::Template,
491        conjure_http::private::Error,
492    >;
493    /// Creates a commit with a commit message.
494    /// Throws if the template or branch doesn't exist.
495    /// Throws if the latest commit doesn't match the provided id.
496    /// Throws if you commit to an archived template.
497    #[endpoint(
498        method = POST,
499        path = "/scout/v1/template/{templateRid}/commit",
500        name = "commit",
501        accept = conjure_http::client::StdResponseDeserializer
502    )]
503    async fn commit(
504        &self,
505        #[auth]
506        auth_: &conjure_object::BearerToken,
507        #[path(
508            name = "templateRid",
509            encoder = conjure_http::client::conjure::PlainEncoder
510        )]
511        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
512        #[query(
513            name = "branch",
514            encoder = conjure_http::client::conjure::PlainSeqEncoder
515        )]
516        branch: Option<
517            &super::super::super::objects::scout::versioning::api::BranchName,
518        >,
519        #[body(serializer = conjure_http::client::StdRequestSerializer)]
520        request: &super::super::super::objects::scout::template::api::CommitTemplateRequest,
521    ) -> Result<
522        super::super::super::objects::scout::template::api::Template,
523        conjure_http::private::Error,
524    >;
525    /// Throws if the template doesn't exist.
526    #[endpoint(
527        method = POST,
528        path = "/scout/v1/template/{templateRid}/metadata",
529        name = "updateMetadata",
530        accept = conjure_http::client::StdResponseDeserializer
531    )]
532    async fn update_metadata(
533        &self,
534        #[auth]
535        auth_: &conjure_object::BearerToken,
536        #[path(
537            name = "templateRid",
538            encoder = conjure_http::client::conjure::PlainEncoder
539        )]
540        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
541        #[body(serializer = conjure_http::client::StdRequestSerializer)]
542        request: &super::super::super::objects::scout::template::api::UpdateMetadataRequest,
543    ) -> Result<
544        super::super::super::objects::scout::template::api::TemplateMetadata,
545        conjure_http::private::Error,
546    >;
547    #[endpoint(
548        method = POST,
549        path = "/scout/v1/template/search",
550        name = "searchTemplates",
551        accept = conjure_http::client::StdResponseDeserializer
552    )]
553    async fn search_templates(
554        &self,
555        #[auth]
556        auth_: &conjure_object::BearerToken,
557        #[body(serializer = conjure_http::client::StdRequestSerializer)]
558        request: &super::super::super::objects::scout::template::api::SearchTemplatesRequest,
559    ) -> Result<
560        super::super::super::objects::scout::template::api::SearchTemplatesResponse,
561        conjure_http::private::Error,
562    >;
563    #[endpoint(
564        method = GET,
565        path = "/scout/v1/template/get-all-labels-properties",
566        name = "getAllLabelsAndProperties",
567        accept = conjure_http::client::StdResponseDeserializer
568    )]
569    async fn get_all_labels_and_properties(
570        &self,
571        #[auth]
572        auth_: &conjure_object::BearerToken,
573        #[query(
574            name = "workspaces",
575            encoder = conjure_http::client::conjure::PlainSeqEncoder
576        )]
577        workspaces: &std::collections::BTreeSet<
578            super::super::super::objects::api::rids::WorkspaceRid,
579        >,
580    ) -> Result<
581        super::super::super::objects::scout::template::api::GetAllLabelsAndPropertiesResponse,
582        conjure_http::private::Error,
583    >;
584    /// Duplicates an existing template, copying its content (layout, charts, variables)
585    /// and optionally overriding metadata fields such as title, description, labels,
586    /// and properties. Returns the newly created template.
587    #[endpoint(
588        method = POST,
589        path = "/scout/v1/template/{templateRid}/duplicate",
590        name = "duplicate",
591        accept = conjure_http::client::StdResponseDeserializer
592    )]
593    async fn duplicate(
594        &self,
595        #[auth]
596        auth_: &conjure_object::BearerToken,
597        #[path(
598            name = "templateRid",
599            encoder = conjure_http::client::conjure::PlainEncoder
600        )]
601        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
602        #[body(serializer = conjure_http::client::StdRequestSerializer)]
603        request: &super::super::super::objects::scout::template::api::DuplicateTemplateRequest,
604    ) -> Result<
605        super::super::super::objects::scout::template::api::Template,
606        conjure_http::private::Error,
607    >;
608    /// Merges the given branch to the "main" branch.
609    /// Throws if the template or branch doesn't exist.
610    /// Throws if the latest commit doesn't match the provided id.
611    /// Throws if you merge on an archived template.
612    #[endpoint(
613        method = POST,
614        path = "/scout/v1/template/{templateRid}/merge-to-main",
615        name = "mergeToMain",
616        accept = conjure_http::client::StdResponseDeserializer
617    )]
618    async fn merge_to_main(
619        &self,
620        #[auth]
621        auth_: &conjure_object::BearerToken,
622        #[path(
623            name = "templateRid",
624            encoder = conjure_http::client::conjure::PlainEncoder
625        )]
626        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
627        #[body(serializer = conjure_http::client::StdRequestSerializer)]
628        request: &super::super::super::objects::scout::template::api::MergeToMainRequest,
629    ) -> Result<
630        super::super::super::objects::scout::template::api::Template,
631        conjure_http::private::Error,
632    >;
633}
634/// TemplateService manages templates, which are workbooks that
635/// can be re-used across runs. Templates are versioned.
636#[conjure_http::conjure_client(name = "TemplateService", local)]
637pub trait LocalAsyncTemplateService<
638    #[response_body]
639    I: conjure_http::private::Stream<
640            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
641        >,
642> {
643    /// Creates a new template.
644    #[endpoint(
645        method = POST,
646        path = "/scout/v1/template",
647        name = "create",
648        accept = conjure_http::client::StdResponseDeserializer
649    )]
650    async fn create(
651        &self,
652        #[auth]
653        auth_: &conjure_object::BearerToken,
654        #[body(serializer = conjure_http::client::StdRequestSerializer)]
655        request: &super::super::super::objects::scout::template::api::CreateTemplateRequest,
656    ) -> Result<
657        super::super::super::objects::scout::template::api::Template,
658        conjure_http::private::Error,
659    >;
660    /// Must only pass one of (branch, commit). If neither are passed,
661    /// the latest commit on the "main" branch is returned.
662    /// Throws if the template, branch, or commit doesn't exist.
663    #[endpoint(
664        method = GET,
665        path = "/scout/v1/template/{templateRid}",
666        name = "get",
667        accept = conjure_http::client::StdResponseDeserializer
668    )]
669    async fn get(
670        &self,
671        #[auth]
672        auth_: &conjure_object::BearerToken,
673        #[path(
674            name = "templateRid",
675            encoder = conjure_http::client::conjure::PlainEncoder
676        )]
677        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
678        #[query(
679            name = "branch",
680            encoder = conjure_http::client::conjure::PlainSeqEncoder
681        )]
682        branch: Option<
683            &super::super::super::objects::scout::versioning::api::BranchName,
684        >,
685        #[query(
686            name = "commit",
687            encoder = conjure_http::client::conjure::PlainSeqEncoder
688        )]
689        commit: Option<&super::super::super::objects::scout::versioning::api::CommitId>,
690    ) -> Result<
691        super::super::super::objects::scout::template::api::Template,
692        conjure_http::private::Error,
693    >;
694    #[endpoint(
695        method = POST,
696        path = "/scout/v1/template/batch-get-metadata",
697        name = "batchGetMetadata",
698        accept = conjure_http::client::conjure::CollectionResponseDeserializer
699    )]
700    async fn batch_get_metadata(
701        &self,
702        #[auth]
703        auth_: &conjure_object::BearerToken,
704        #[body(serializer = conjure_http::client::StdRequestSerializer)]
705        rids: &std::collections::BTreeSet<
706            super::super::super::objects::scout::rids::api::TemplateRid,
707        >,
708    ) -> Result<
709        std::collections::BTreeSet<
710            super::super::super::objects::scout::template::api::TemplateSummary,
711        >,
712        conjure_http::private::Error,
713    >;
714    /// Creates a commit that may be compacted, e.g cleaned up and not exist anymore.
715    /// Throws if the template or branch doesn't exist.
716    /// Throws if the latest commit doesn't match the provided id.
717    /// Throws if you save to an archived template.
718    #[endpoint(
719        method = POST,
720        path = "/scout/v1/template/{templateRid}/save-working-state",
721        name = "saveWorkingState",
722        accept = conjure_http::client::StdResponseDeserializer
723    )]
724    async fn save_working_state(
725        &self,
726        #[auth]
727        auth_: &conjure_object::BearerToken,
728        #[path(
729            name = "templateRid",
730            encoder = conjure_http::client::conjure::PlainEncoder
731        )]
732        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
733        #[query(
734            name = "branch",
735            encoder = conjure_http::client::conjure::PlainSeqEncoder
736        )]
737        branch: Option<
738            &super::super::super::objects::scout::versioning::api::BranchName,
739        >,
740        #[body(serializer = conjure_http::client::StdRequestSerializer)]
741        request: &super::super::super::objects::scout::template::api::SaveTemplateRequest,
742    ) -> Result<
743        super::super::super::objects::scout::template::api::Template,
744        conjure_http::private::Error,
745    >;
746    /// Returns the set of all ref names used by the template.
747    #[endpoint(
748        method = GET,
749        path = "/scout/v1/template/{templateRid}/ref-names",
750        name = "getUsedRefNames",
751        accept = conjure_http::client::conjure::CollectionResponseDeserializer
752    )]
753    async fn get_used_ref_names(
754        &self,
755        #[auth]
756        auth_: &conjure_object::BearerToken,
757        #[path(
758            name = "templateRid",
759            encoder = conjure_http::client::conjure::PlainEncoder
760        )]
761        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
762        #[query(
763            name = "branch",
764            encoder = conjure_http::client::conjure::PlainSeqEncoder
765        )]
766        branch: Option<
767            &super::super::super::objects::scout::versioning::api::BranchName,
768        >,
769        #[query(
770            name = "commit",
771            encoder = conjure_http::client::conjure::PlainSeqEncoder
772        )]
773        commit: Option<&super::super::super::objects::scout::versioning::api::CommitId>,
774    ) -> Result<
775        std::collections::BTreeSet<
776            super::super::super::objects::scout::api::DataSourceRefName,
777        >,
778        conjure_http::private::Error,
779    >;
780    /// Updates the data source ref names for all variables used in the template.
781    #[endpoint(
782        method = POST,
783        path = "/scout/v1/template/{templateRid}/update-ref-names",
784        name = "updateRefNames",
785        accept = conjure_http::client::StdResponseDeserializer
786    )]
787    async fn update_ref_names(
788        &self,
789        #[auth]
790        auth_: &conjure_object::BearerToken,
791        #[path(
792            name = "templateRid",
793            encoder = conjure_http::client::conjure::PlainEncoder
794        )]
795        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
796        #[query(
797            name = "branch",
798            encoder = conjure_http::client::conjure::PlainSeqEncoder
799        )]
800        branch: Option<
801            &super::super::super::objects::scout::versioning::api::BranchName,
802        >,
803        #[body(serializer = conjure_http::client::StdRequestSerializer)]
804        request: &super::super::super::objects::scout::template::api::UpdateRefNameRequest,
805    ) -> Result<
806        super::super::super::objects::scout::template::api::Template,
807        conjure_http::private::Error,
808    >;
809    /// Creates a commit with a commit message.
810    /// Throws if the template or branch doesn't exist.
811    /// Throws if the latest commit doesn't match the provided id.
812    /// Throws if you commit to an archived template.
813    #[endpoint(
814        method = POST,
815        path = "/scout/v1/template/{templateRid}/commit",
816        name = "commit",
817        accept = conjure_http::client::StdResponseDeserializer
818    )]
819    async fn commit(
820        &self,
821        #[auth]
822        auth_: &conjure_object::BearerToken,
823        #[path(
824            name = "templateRid",
825            encoder = conjure_http::client::conjure::PlainEncoder
826        )]
827        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
828        #[query(
829            name = "branch",
830            encoder = conjure_http::client::conjure::PlainSeqEncoder
831        )]
832        branch: Option<
833            &super::super::super::objects::scout::versioning::api::BranchName,
834        >,
835        #[body(serializer = conjure_http::client::StdRequestSerializer)]
836        request: &super::super::super::objects::scout::template::api::CommitTemplateRequest,
837    ) -> Result<
838        super::super::super::objects::scout::template::api::Template,
839        conjure_http::private::Error,
840    >;
841    /// Throws if the template doesn't exist.
842    #[endpoint(
843        method = POST,
844        path = "/scout/v1/template/{templateRid}/metadata",
845        name = "updateMetadata",
846        accept = conjure_http::client::StdResponseDeserializer
847    )]
848    async fn update_metadata(
849        &self,
850        #[auth]
851        auth_: &conjure_object::BearerToken,
852        #[path(
853            name = "templateRid",
854            encoder = conjure_http::client::conjure::PlainEncoder
855        )]
856        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
857        #[body(serializer = conjure_http::client::StdRequestSerializer)]
858        request: &super::super::super::objects::scout::template::api::UpdateMetadataRequest,
859    ) -> Result<
860        super::super::super::objects::scout::template::api::TemplateMetadata,
861        conjure_http::private::Error,
862    >;
863    #[endpoint(
864        method = POST,
865        path = "/scout/v1/template/search",
866        name = "searchTemplates",
867        accept = conjure_http::client::StdResponseDeserializer
868    )]
869    async fn search_templates(
870        &self,
871        #[auth]
872        auth_: &conjure_object::BearerToken,
873        #[body(serializer = conjure_http::client::StdRequestSerializer)]
874        request: &super::super::super::objects::scout::template::api::SearchTemplatesRequest,
875    ) -> Result<
876        super::super::super::objects::scout::template::api::SearchTemplatesResponse,
877        conjure_http::private::Error,
878    >;
879    #[endpoint(
880        method = GET,
881        path = "/scout/v1/template/get-all-labels-properties",
882        name = "getAllLabelsAndProperties",
883        accept = conjure_http::client::StdResponseDeserializer
884    )]
885    async fn get_all_labels_and_properties(
886        &self,
887        #[auth]
888        auth_: &conjure_object::BearerToken,
889        #[query(
890            name = "workspaces",
891            encoder = conjure_http::client::conjure::PlainSeqEncoder
892        )]
893        workspaces: &std::collections::BTreeSet<
894            super::super::super::objects::api::rids::WorkspaceRid,
895        >,
896    ) -> Result<
897        super::super::super::objects::scout::template::api::GetAllLabelsAndPropertiesResponse,
898        conjure_http::private::Error,
899    >;
900    /// Duplicates an existing template, copying its content (layout, charts, variables)
901    /// and optionally overriding metadata fields such as title, description, labels,
902    /// and properties. Returns the newly created template.
903    #[endpoint(
904        method = POST,
905        path = "/scout/v1/template/{templateRid}/duplicate",
906        name = "duplicate",
907        accept = conjure_http::client::StdResponseDeserializer
908    )]
909    async fn duplicate(
910        &self,
911        #[auth]
912        auth_: &conjure_object::BearerToken,
913        #[path(
914            name = "templateRid",
915            encoder = conjure_http::client::conjure::PlainEncoder
916        )]
917        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
918        #[body(serializer = conjure_http::client::StdRequestSerializer)]
919        request: &super::super::super::objects::scout::template::api::DuplicateTemplateRequest,
920    ) -> Result<
921        super::super::super::objects::scout::template::api::Template,
922        conjure_http::private::Error,
923    >;
924    /// Merges the given branch to the "main" branch.
925    /// Throws if the template or branch doesn't exist.
926    /// Throws if the latest commit doesn't match the provided id.
927    /// Throws if you merge on an archived template.
928    #[endpoint(
929        method = POST,
930        path = "/scout/v1/template/{templateRid}/merge-to-main",
931        name = "mergeToMain",
932        accept = conjure_http::client::StdResponseDeserializer
933    )]
934    async fn merge_to_main(
935        &self,
936        #[auth]
937        auth_: &conjure_object::BearerToken,
938        #[path(
939            name = "templateRid",
940            encoder = conjure_http::client::conjure::PlainEncoder
941        )]
942        template_rid: &super::super::super::objects::scout::rids::api::TemplateRid,
943        #[body(serializer = conjure_http::client::StdRequestSerializer)]
944        request: &super::super::super::objects::scout::template::api::MergeToMainRequest,
945    ) -> Result<
946        super::super::super::objects::scout::template::api::Template,
947        conjure_http::private::Error,
948    >;
949}