API Documentation
Welcome to the BountyBot API documentation. This API is automatically generated by PayloadCMS and provides programmatic access to bounties, issues, and payments. We welcome developers to use this API to enhance their experience with our platform.
Authentication
This API uses cookie-based authentication. You must be logged in to access authenticated endpoints. Some endpoints are publicly accessible.
To authenticate:
- Log in through the web interface
- Your browser will receive authentication cookies
- Use these cookies in your API requests
For programmatic access, you can also use API keys:
bash
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.bountybot.dev/api/bounties
Rate Limiting
API requests are rate limited to ensure fair usage. The current limits are:
- 100 requests per minute for authenticated users
- 10 requests per minute for unauthenticated requests
Available Collections
Users
GET /api/users/me
- Get current userPATCH /api/users/me
- Update current user
Quests
GET /api/quests
- List all questsGET /api/quests/:id
- Get a specific quest
Payment Events
GET /api/payment-events
- List accessible payment eventsPOST /api/payment-events
- Create a payment event
Payment Accounts
GET /api/payment-accounts
- List your payment accountsGET /api/payment-accounts/:id
- Get a specific payment account
Response Format
All responses follow the PayloadCMS format:
json
{
"docs": [{
"id": "123",
"createdAt": "2024-01-15T00:00:00Z",
"updatedAt": "2024-01-15T00:00:00Z",
...fields
}],
"totalDocs": 50,
"page": 1,
"totalPages": 5,
"hasNextPage": true,
"hasPrevPage": false
}
Error Handling
Errors follow the PayloadCMS format:
json
{
"errors": [{
"message": "Not authorized",
"field": "email"
}]
}
For detailed information about specific collections, please refer to their respective documentation pages.