use runpod_sdk::model::{EndpointCreateInput, EndpointUpdateInput};
use runpod_sdk::service::EndpointsService;
use runpod_sdk::{Result, RunpodClient};
#[tokio::main]
async fn main() -> Result<()> {
let client = RunpodClient::from_env()?;
println!("Creating endpoint...");
let create_input = EndpointCreateInput {
template_id: "your-template-id".to_string(),
name: Some("test-endpoint".to_string()),
workers_min: Some(0),
workers_max: Some(3),
..Default::default()
};
let endpoint = client.create_endpoint(create_input).await?;
println!(
"Created endpoint: {} ({})",
endpoint.name.as_deref().unwrap_or("unnamed"),
endpoint.id
);
println!("\nUpdating endpoint...");
let update_input = EndpointUpdateInput {
name: Some("updated-test-endpoint".to_string()),
workers_max: Some(5),
..Default::default()
};
client.update_endpoint(&endpoint.id, update_input).await?;
println!("Endpoint updated");
println!("\nDeleting endpoint...");
client.delete_endpoint(&endpoint.id).await?;
println!("Endpoint deleted");
Ok(())
}