Skip to content

Installs & Reviews

Installs

Manage agent installations. Installing a marketplace listing deploys the agent to your account.

GET /agents/marketplace/installs

List all agent installations for the authenticated user.

Authentication: JWT Bearer token + active entitlement Rate limit: 60 requests/min

Request

Response

Code Examples

bash
curl "https://api.chainabit.com/api/v1/agents/marketplace/installs?limit=10" \
  -H "Authorization: Bearer $TOKEN"
javascript
const response = await fetch(`${BASE_URL}/agents/marketplace/installs?limit=10`, {
  headers: {
    Authorization: `Bearer ${TOKEN}`,
  },
});
const data = await response.json();
python
import requests

response = requests.get(
    f"{BASE_URL}/agents/marketplace/installs",
    params={"limit": 10},
    headers={"Authorization": f"Bearer {TOKEN}"},
)
data = response.json()

POST /agents/marketplace/installs

Install a marketplace listing, deploying it as an agent on the authenticated user's account.

Authentication: JWT Bearer token + active entitlement Rate limit: 10 requests/min

Request

FieldTypeRequiredConstraintsDescription
listingIdstringYesValid listing IDMarketplace listing ID to install
payloadobjectNoListing-specific fieldsOptional listing installer payload

Use the id of the listing you want to install (from Listings or its detail response) as $LISTING_ID.

Response

Code Examples

bash
curl -X POST "https://api.chainabit.com/api/v1/agents/marketplace/installs" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "listingId": "'"$LISTING_ID"'",
    "payload": {
      "mode": "default"
    }
  }'
javascript
const response = await fetch(`${BASE_URL}/agents/marketplace/installs`, {
  method: "POST",
  headers: {
    Authorization: `Bearer ${TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    listingId: LISTING_ID, // from a listing lookup
    payload: {
      mode: "default",
    },
  }),
});
const data = await response.json();
python
import requests

response = requests.post(
    f"{BASE_URL}/agents/marketplace/installs",
    headers={
        "Authorization": f"Bearer {TOKEN}",
        "Content-Type": "application/json",
    },
    json={"listingId": LISTING_ID, "payload": {"mode": "default"}},  # from a listing lookup
)
data = response.json()

PATCH /agents/marketplace/installs/:id

Update an installed listing with a small payload patch.

Authentication: JWT Bearer token + active entitlement Rate limit: 30 requests/min

Request

FieldTypeRequiredConstraintsDescription
payloadobjectNoListing-specific fieldsOptional patch payload for the install

Use the id of the install record you're updating (from GET /agents/marketplace/installs above) as $INSTALL_ID.

Response

Code Examples

bash
curl -X PATCH "https://api.chainabit.com/api/v1/agents/marketplace/installs/$INSTALL_ID" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "payload": {
      "mode": "default"
    }
  }'
javascript
const response = await fetch(`${BASE_URL}/agents/marketplace/installs/${INSTALL_ID}`, {
  method: "PATCH",
  headers: {
    Authorization: `Bearer ${TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    payload: {
      mode: "default",
    },
  }),
});
const data = await response.json();
python
import requests

response = requests.patch(
    f"{BASE_URL}/agents/marketplace/installs/{INSTALL_ID}",
    headers={
        "Authorization": f"Bearer {TOKEN}",
        "Content-Type": "application/json",
    },
    json={"payload": {"mode": "default"}},
)
data = response.json()

Built with purpose.