aimo_client/types/
providers.rs

1use aimo_core::provider::ProviderMetadata;
2use serde::{Deserialize, Serialize};
3
4use crate::types::models::ProviderModelMetadata;
5
6/// **DEPRECATED**: `register` is replaced by `connect` endpoint, use `ConnectProviderRequest` instead.
7#[derive(Debug, Clone, Serialize, Deserialize)]
8pub struct RegisterProviderRequest {
9    pub metadata: ProviderMetadata,
10    pub signature: String,
11}
12
13/// **DEPRECATED**: `register` is replaced by `connect` endpoint, use `ConnectProviderResponse` instead.
14#[derive(Debug, Clone, Serialize, Deserialize)]
15pub struct RegisterProviderResponse {
16    pub success: bool,
17    pub message: String,
18}
19
20#[derive(Debug, Clone, Serialize, Deserialize)]
21pub struct ConnectProviderRequest {
22    pub models: Vec<ProviderModelMetadata>,
23}
24
25#[derive(Debug, Clone, Serialize, Deserialize)]
26pub struct ConnectProviderResponse {
27    pub success: bool,
28    pub message: String,
29}
30
31#[derive(Debug, Clone, Serialize, Deserialize)]
32pub struct ProviderConnectionStatus {
33    pub connected: bool,
34    pub timestamp: i64,
35    pub timestamp_ui: String,
36    #[serde(default)]
37    pub models: Vec<ProviderModelMetadata>,
38}