DocumentationAPI ReferenceAgents API
API Reference

Agents API

Deploy and configure agents

Agents API

Create, configure, and manage AI agents through the BambooSnow API.

Endpoints

| Method | Endpoint | Description | |--------|----------|-------------| | GET | /v1/agents | List agents | | GET | /v1/agents/:id | Get agent details | | POST | /v1/agents | Create agent | | PATCH | /v1/agents/:id | Update agent | | DELETE | /v1/agents/:id | Delete agent | | POST | /v1/agents/:id/run | Trigger agent run |

List Agents

GET /v1/agents

Query Parameters

| Parameter | Type | Description | |-----------|------|-------------| | repository_id | string | Filter by repository | | template | string | Filter by template | | status | string | Filter by status (active, paused, error) | | page | integer | Page number | | per_page | integer | Items per page |

Response

{
  "data": [
    {
      "id": "agent_abc123",
      "name": "code-reviewer",
      "template": "code-reviewer",
      "repository_id": "repo_xyz",
      "status": "active",
      "created_at": "2024-01-15T10:30:00Z",
      "last_run_at": "2024-01-15T14:30:00Z",
      "runs_count": 45,
      "success_rate": 0.98
    }
  ],
  "meta": {
    "total": 12,
    "page": 1,
    "per_page": 20
  }
}

Get Agent

GET /v1/agents/:id

Response

{
  "id": "agent_abc123",
  "name": "code-reviewer",
  "template": "code-reviewer",
  "repository": {
    "id": "repo_xyz",
    "name": "owner/repo"
  },
  "status": "active",
  "created_at": "2024-01-15T10:30:00Z",
  "updated_at": "2024-01-15T14:30:00Z",
  "triggers": {
    "pull_request": ["opened", "synchronize"]
  },
  "config": {
    "review_style": "balanced",
    "min_severity": "warning",
    "auto_approve": false
  },
  "stats": {
    "total_runs": 45,
    "successful_runs": 44,
    "failed_runs": 1,
    "avg_duration_ms": 32000,
    "issues_found": 156
  },
  "recent_runs": [
    {
      "id": "run_123",
      "status": "success",
      "pr_number": 42,
      "completed_at": "2024-01-15T14:30:00Z"
    }
  ]
}

Create Agent

POST /v1/agents

Request Body

{
  "name": "my-code-reviewer",
  "template": "code-reviewer",
  "repository_id": "repo_xyz",
  "triggers": {
    "pull_request": {
      "types": ["opened", "synchronize"],
      "branches": {
        "include": ["main", "develop"]
      }
    }
  },
  "config": {
    "review_style": "thorough",
    "min_severity": "info",
    "focus_areas": ["security", "performance"],
    "exclude_patterns": ["**/*.test.ts"]
  },
  "approval_workflow": {
    "enabled": true,
    "requires_approval": ["merge_pr"]
  }
}

Response

{
  "id": "agent_abc123",
  "name": "my-code-reviewer",
  "status": "active",
  "message": "Agent created successfully"
}

Update Agent

PATCH /v1/agents/:id

Request Body

{
  "status": "paused",
  "config": {
    "review_style": "quick"
  }
}

Response

{
  "id": "agent_abc123",
  "status": "paused",
  "updated_at": "2024-01-15T15:00:00Z"
}

Delete Agent

DELETE /v1/agents/:id

Query Parameters

| Parameter | Type | Description | |-----------|------|-------------| | keep_history | boolean | Keep run history (default: false) |

Response

{
  "id": "agent_abc123",
  "deleted": true
}

Trigger Agent Run

POST /v1/agents/:id/run

Request Body

{
  "pull_request": 42,
  "branch": "feature/new-feature",
  "commit_sha": "abc123...",
  "options": {
    "full_analysis": true,
    "notify": true
  }
}

Response

{
  "run_id": "run_456",
  "agent_id": "agent_abc123",
  "status": "queued",
  "estimated_start": "2024-01-15T15:01:00Z"
}

Available Templates

GET /v1/agents/templates

Response

{
  "templates": [
    {
      "id": "code-reviewer",
      "name": "Code Reviewer",
      "description": "Automated PR code review",
      "languages": ["typescript", "python", "go"],
      "config_schema": {
        "review_style": {
          "type": "string",
          "enum": ["quick", "balanced", "thorough"],
          "default": "balanced"
        }
      }
    },
    {
      "id": "security-scanner",
      "name": "Security Scanner",
      "description": "Find security vulnerabilities"
    }
  ]
}
BambooSnow - AI Agent Automation Platform