# API and Clients Komodo Core exposes an RPC-like HTTP API to read data, write configuration, and execute actions. There are typesafe clients available in [**Rust**](/docs/api#rust-client) and [**Typescript**](/docs/api#typescript-client). The full API documentation is [**available here**](https://docs.rs/komodo_client/latest/komodo_client/api/index.html). ## Rust Client The Rust client is published to crates.io at [komodo_client](https://crates.io/crates/komodo_client). ```rust let komodo = KomodoClient::new("https://demo.komo.do", "your_key", "your_secret") .with_healthcheck() .await?; let stacks = komodo.read(ListStacks::default()).await?; let update = komodo .execute(DeployStack { stack: stacks[0].name.clone(), stop_time: None }) .await?; ``` ## Typescript Client The Typescript client is published to NPM at [komodo_client](https://www.npmjs.com/package/komodo_client). ```ts import { KomodoClient, Types } from "komodo_client"; const komodo = KomodoClient("https://demo.komo.do", { type: "api-key", params: { api_key: "your_key", secret: "your secret", }, }); // Inferred as Types.StackListItem[] const stacks = await komodo.read("ListStacks", {}); // Inferred as Types.Update const update = await komodo.execute("DeployStack", { stack: stacks[0].name, }); ```