Seller ask lifecycle
Register → submit ask → report capacity → list trades → cancel ask.
use token_gateway_sdk::{
Decimal, RegisterSellerRequest, ReportCapacityRequest, SellerClient, SellerKey, SubmitAskRequest,
};
let mut client = SellerClient::new("http://127.0.0.1:8080", None);
let registered = client
.register(&RegisterSellerRequest {
name: "acme".into(),
endpoint_url: "http://127.0.0.1:9000/infer".into(),
supported_models: vec!["gpt-4".into()],
api_key: "sk-seller".into(),
})
.await?;
client.set_key(SellerKey(registered.api_key.clone()));
let ask = client
.submit_ask(
registered.seller_id,
&SubmitAskRequest {
model_id: "gpt-4".into(),
price: Decimal::from(10),
capacity: 1000,
ttl_seconds: None,
},
)
.await?;
let _ = client
.report_capacity(
registered.seller_id,
&ReportCapacityRequest {
model_id: "gpt-4".into(),
available_tokens: 42,
queued_tokens: 0,
},
)
.await?;
let _ = client.list_trades(registered.seller_id).await?;
client.cancel_ask(registered.seller_id, ask.ask_id).await?;from token_gateway import SellerTokenGateway
gw = SellerTokenGateway("http://127.0.0.1:8080")
seller = gw.register_seller(name="acme", endpoint_url="http://127.0.0.1:9000/infer", supported_models=["gpt-4"], api_key="sk-seller")
ask = gw.submit_ask(seller.seller_id, model_id="gpt-4", price="10", capacity=1000)
gw.report_capacity(seller.seller_id, model_id="gpt-4", available_tokens=42)
gw.list_trades(seller.seller_id)
gw.cancel_ask(seller.seller_id, ask.ask_id)import { SellerClient } from "@ai-token-gateway/sdk";
const seller = new SellerClient({ baseUrl: "http://127.0.0.1:8080" });
const registered = await seller.register({
name: "acme",
endpoint_url: "http://127.0.0.1:9000/infer",
supported_models: ["gpt-4"],
api_key: "sk-seller",
});
seller.setApiKey(registered.api_key);
const ask = await seller.submitAsk(registered.seller_id, { model_id: "gpt-4", price: "10", capacity: 1000 });
await seller.reportCapacity(registered.seller_id, { model_id: "gpt-4", available_tokens: 42, queued_tokens: 0 });
await seller.listTrades(registered.seller_id);
await seller.cancelAsk(registered.seller_id, ask.ask_id);