MIM
SDKs
Rust, TypeScript and HTTP for MIM.
Every operation on MIM is reachable from every shipped SDK plus the raw HTTP wire.
Rust
use map_sdk::Client;
use serde_json::json;
let client = Client::from_env()?;
let resp = client
.dispatch(
"MIM",
"v1.0.0",
"message_send",
json!({
"to": "mailbox://example",
"body": {
"hello": "world"
},
"qos": "AtLeastOnce"
}),
)
.await?;
println!("{:#?}", resp);TypeScript
import { MapClient } from '@l1fe/map';
const map = new MapClient({
apiKey: process.env.MAP_API_KEY!,
agentDid: process.env.MAP_AGENT_DID!,
tenantId: 'org_acme'
});
const resp = await map.dispatch({
protocol: 'MIM',
version: 'v1.0.0',
operation: 'message_send',
input: {
"to": "mailbox://example",
"body": {
"hello": "world"
},
"qos": "AtLeastOnce"
}
});HTTP wire
POST /v1/dispatch HTTP/2
Host: api.multiagentic.dev
Authorization: Bearer $MAP_API_KEY
X-Agent-Did: $MAP_AGENT_DID
X-Tenant-Id: org_acme
Content-Type: application/json
{
"protocol": "MIM",
"version": "v1.0.0",
"operation": "message_send",
"input": {
"to": "mailbox://example",
"body": {
"hello": "world"
},
"qos": "AtLeastOnce"
},
"tenant_id": "org_acme"
}All operations
map.dispatch(...)with operation"message_send"— Send a message to an addressable mailbox; QoS (AtMostOnce/AtLeastOnce/ExactlyOnce), optional encryption/signature.map.dispatch(...)with operation"message_receive"— Receive messages from a mailbox; supports polling and streaming.map.dispatch(...)with operation"queuing"— Queue management: declare, bind, purge, delete.map.dispatch(...)with operation"dedup_check"— Idempotency / dedup check for ExactlyOnce delivery.
See SDKs for client construction, retry, trace propagation.