API Documentation

Build powerful integrations with Ebun's comprehensive REST API. Access donations, projects, and platform management capabilities.

API Overview

RESTful APIs designed for developers building on the Ebun platform

Public APIs

Access project data, fee calculations, and public platform information without authentication.

Authenticated APIs

Secure endpoints for donations, user management, and platform administration with OAuth 2.0.

Webhooks

Real-time notifications for donation events, evidence updates, and platform changes.

Getting Started

Quick start guide to integrate with Ebun APIs

1. Authentication

All authenticated endpoints require a valid API key in the Authorization header.

curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.ebun.io/v1/projects

2. Base URL

All API requests should be made to our production base URL.

https://api.ebun.io/v1

3. Rate Limits

API requests are rate limited to ensure fair usage across all developers.

Public APIs100 requests/minute
Authenticated APIs1000 requests/minute
WebhooksUnlimited

4. Response Format

All API responses are returned in JSON format with standard HTTP status codes.

{
"success": true,
"data": { ... },
"message": "Success"
}

API Endpoints

Comprehensive list of available API endpoints

Public Endpoints

GET/projectsList all published projects
GET/projects/{id}Get project details
GET/fees/previewCalculate platform fees
GET/statusPlatform status

Donor Endpoints

POST/donations/createCreate donation intent
GET/donations/{id}Get donation status
GET/dashboard/overviewUser dashboard data
GET/tax-documents/receiptsDownload tax receipts

Admin Endpoints

POST/admin/projects/{id}/approveApprove project
POST/admin/refunds/{id}Process refund
GET/admin/auditAudit logs
POST/admin/platform-fee/configUpdate fee configuration

Error Handling

Standard error responses and status codes

HTTP Status Codes

200Success
400Bad Request
401Unauthorized
404Not Found
429Rate Limited
500Server Error

Error Response Format

{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Invalid request data",
"details": { ... }
}
}

Ready to Get Started?

Contact our developer team to request API access and get started with your integration.