'build_failed' or 'update_failed' indicate deployment errors
Poll at reasonable intervals (10-30 seconds) to avoid rate limits
4. Manage Projects
When to use
User wants to list and organize Render projects
Tool sequence
:
RENDER_LIST_PROJECTS
- List all projects [Required]
Key parameters
:
limit
Maximum results per page (max 100)
cursor
Pagination cursor from previous response
Pitfalls
:
Projects group related services together
Pagination uses cursor-based approach
Project IDs are used for organizational purposes
Not all services may be assigned to a project
Common Patterns
ID Resolution
Service name -> Service ID
:
1. Call RENDER_LIST_SERVICES with name=service_name
2. Find service by name in results
3. Extract id (format: 'srv-xxxxxxxxxxxx')
Deployment lookup
:
1. Store deployId from RENDER_TRIGGER_DEPLOY response
2. Call RENDER_RETRIEVE_DEPLOY with serviceId and deployId
3. Check status for completion
Deploy and Monitor Pattern
1. RENDER_LIST_SERVICES -> find service by name -> get serviceId
2. RENDER_TRIGGER_DEPLOY with serviceId -> get deployId
3. Loop: RENDER_RETRIEVE_DEPLOY with serviceId + deployId
4. Check status: 'live' = success, 'build_failed'/'update_failed' = error
5. Continue polling until terminal state reached
Pagination
Use
cursor
from response for next page
Continue until
cursor
is absent or results are empty
Both LIST_SERVICES and LIST_PROJECTS use cursor-based pagination
Set
limit
to max (100) for fewer pagination rounds
Known Pitfalls
Service IDs
:
Always prefixed with 'srv-' (e.g., 'srv-abcd1234efgh')
Deploy IDs prefixed with 'dep-' (e.g., 'dep-d2mqkf9r0fns73bham1g')
Always resolve service names to IDs via LIST_SERVICES
Service Types
:
Must use exact enum values when filtering
Available types: web_service, static_site, private_service, background_worker, cron_job
Different service types have different deployment behaviors
Deployment Behavior
:
Deployments are asynchronous; always poll for completion
Clear cache deploys take longer but resolve stale cache issues
Failed deploys do not roll back automatically; the previous version stays live
Concurrent deploy triggers may be queued
Rate Limits
:
Render API has rate limits
Avoid rapid polling; use 10-30 second intervals
Bulk operations should be throttled
Response Parsing
:
Response data may be nested under
data
key
Timestamps use ISO 8601 format
Parse defensively with fallbacks for optional fields
Quick Reference
Task
Tool Slug
Key Params
List services
RENDER_LIST_SERVICES
name, type, limit, cursor
Trigger deploy
RENDER_TRIGGER_DEPLOY
serviceId, clearCache
Get deploy status
RENDER_RETRIEVE_DEPLOY
serviceId, deployId
List projects
RENDER_LIST_PROJECTS
limit, cursor
Powered by
Composio