Welcome to the New BigPanda API Documentation
🚧 Authentication All BigPanda APIs require Bearer Token Authorization in the call headers. This API uses the User API Key type of Authorization token.
❗ Rate limitations To maintain quality of service, the Biggy API is limited to 100 requests per minute. Additional requests will return a 429 response code and the request will need to be retried.
/a2a/biggy-agent endpoint. The method field determines the operation.| Method | Description |
|---|---|
message/send | Send a message and receive the full response synchronously |
message/stream | Send a message and stream the response as server-sent events (SSE). |
tasks/get | Poll the status and result of a previous task |
text parts are supported.| Field | Type | Required | Description |
|---|---|---|---|
params.message.parts | array | Yes | Array of message parts |
params.message.parts[].kind | string | Yes | Must be "text" |
params.message.parts[].text | string | Yes | The text content |
params.thread.threadId | string | No | Thread ID to continue a conversation |
thread or pass "threadId": "". The response will include a generated threadId.threadId from a previous response to carry forward conversation history.| Constraint | Value |
|---|---|
| Max message parts | 10 |
| Max text per part | 5,000 characters |
| Max total query length | 20,000 characters |
| Max thread ID length | 128 characters |
| Code | Description |
|---|---|
| -32600 | Invalid request (missing or wrong jsonrpc version) |
| -32601 | Method not found (unsupported method value) |
| -32602 | Invalid params (validation failure, bad input) |
| -32000 | Server error (unexpected internal failure) |
{
"jsonrpc": "2.0",
"id": "1",
"result": {
"thread": { "threadId": "a1b2c3d4" },
"taskId": "6830f1a2e3b4c5d6e7f80001",
"artifacts": [
{
"parts": [{ "kind": "text", "text": "Based on the historical data..." }]
}
]
}
}text/event-stream with the following event types:| Event | Description |
|---|---|
start | Emitted once at the beginning. Contains thread, taskId, and the JSON-RPC envelope. |
delta | Emitted as chunks arrive. Contains { "text": "..." } with the incremental text. |
final | Emitted once when complete. Contains the full JSON-RPC success response with artifacts. |
error | Emitted if an error occurs. Contains a JSON-RPC error response. |
{
"jsonrpc": "2.0",
"id": "1",
"thread": { "threadId": "a1b2c3d4" },
"taskId": "6830f1a2e3b4c5d6e7f80001"
}{ "text": "Based on the " }{
"jsonrpc": "2.0",
"id": "1",
"result": {
"thread": { "threadId": "a1b2c3d4" },
"taskId": "6830f1a2e3b4c5d6e7f80001",
"artifacts": [
{
"parts": [{ "kind": "text", "text": "Based on the historical data..." }]
}
]
}
}taskId.| Status | Meaning |
|---|---|
running | Task is still in progress |
completed | Task finished successfully (artifacts included) |
failed | Task failed (error details included) |
not_found | No task found with the given ID |
{
"jsonrpc": "2.0",
"id": "1",
"result": {
"taskId": "6830f1a2e3b4c5d6e7f80001",
"status": "completed",
"artifacts": [
{
"parts": [{ "kind": "text", "text": "Based on the historical data..." }]
}
]
}
}{
"jsonrpc": "2.0",
"id": "1",
"result": {
"taskId": "6830f1a2e3b4c5d6e7f80001",
"status": "running"
}
}