API Documentation
Complete reference for tRPC endpoints and usage examples
Getting Started
Installation
npm install @trpc/client @trpc/react-queryBasic Usage
import { trpc } from '@/lib/trpc';
// Query
const { data } = trpc.system.getSessions.useQuery();
// Mutation
const mutation = trpc.system.createSession.useMutation();
mutation.mutate({ ... });Endpoints
POSTCreate Session
/trpc/agent.createSession
Description
Create a new agent session
Parameters
sessionName: string
systemPrompt: string
temperature: number
model: string
maxSteps: number
Example
const result = await trpc.system.createSession.mutate({
sessionName: "My Session",
systemPrompt: "You are a helpful assistant",
temperature: 70,
model: "gpt-4-turbo",
maxSteps: 50
});GETGet Sessions
/trpc/agent.getSessions
Description
Retrieve all user sessions
Example
const { data: sessions } = trpc.system.getSessions.useQuery();POSTAdd Message
/trpc/messages.addMessage
Description
Add a message to a session
Parameters
sessionId: number
role: user | assistant
content: string
Example
await trpc.messages.addMessage.mutate({
sessionId: 1,
role: "user",
content: "Hello, how are you?"
});POSTClone Agent
/trpc/agentCloning.cloneAgent
Description
Clone an existing agent with configuration
Parameters
sourceAgentId: number
newName: string
includeHistory: boolean
Example
const cloned = await trpc.integrations.agentCloning.cloneAgent.mutate({
sourceAgentId: 1,
newName: "Cloned Agent",
includeHistory: true
});GETGet Usage Quotas
/trpc/usageQuotas.getQuotas
Description
Retrieve current usage quotas
Example
const { data: quotas } = trpc.admin.usageQuotas.getQuotas.useQuery();POSTSend Collaboration Invite
/trpc/collaborationInvites.sendInvite
Description
Send a collaboration invite to another user
Parameters
sessionId: number
inviteeEmail: string
permissionLevel: view | edit | admin
Example
await trpc.integrations.collaborationInvites.sendInvite.mutate({
sessionId: 1,
inviteeEmail: "[email protected]",
permissionLevel: "edit"
});Error Handling
const mutation = trpc.system.createSession.useMutation({
onSuccess: (data) => {
console.log("Session created:", data);
},
onError: (error) => {
console.error("Error:", error.message);
},
});Authentication
All endpoints require authentication via Manus OAuth
Authentication is handled automatically by the tRPC client. Your session cookie is sent with each request.
// Check authentication status
const { data: user } = trpc.auth.me.useQuery();
// Logout
const logout = trpc.auth.logout.useMutation();