objectiveai_sdk/swarm/
request.rs1use schemars::JsonSchema;
4use serde::{Deserialize, Serialize};
5
6#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
8#[schemars(rename = "swarm.ListSwarmsRequest")]
9pub struct ListSwarmsRequest {
10 #[serde(skip_serializing_if = "Option::is_none")]
12 #[schemars(extend("omitempty" = true))]
13 pub source: Option<ListSwarmsSource>,
14}
15
16#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
18#[schemars(rename = "swarm.ListSwarmsSource")]
19#[serde(rename_all = "snake_case")]
20pub enum ListSwarmsSource {
21 All,
22 Mock,
23 Filesystem,
24 Objectiveai,
25}
26
27impl ListSwarmsSource {
28 pub fn as_str(&self) -> &str {
29 match self {
30 ListSwarmsSource::All => "all",
31 ListSwarmsSource::Mock => "mock",
32 ListSwarmsSource::Filesystem => "filesystem",
33 ListSwarmsSource::Objectiveai => "objectiveai",
34 }
35 }
36}
37
38pub type GetSwarmRequest = crate::RemotePathCommitOptional;