Bruno API collection for the DoDays platform. This repository contains all API endpoint definitions for testing and development, organised by resource type.
Bruno is a modern API client similar to Postman or Insomnia. Unlike cloud-based alternatives, Bruno stores API collections as .bru files in your git repository, making them easy to version control and share with your team.
- Bruno installed on your machine
- Access to DoDays API environments (local, staging, or production)
- Launch Bruno
- Click "Open Collection"
- Select this repository's root directory
Choose your target environment from the environment dropdown:
- Local -
https://api.dodays.test(requires local API setup) - Staging -
https://api.dodays-staging.co.uk - Production -
https://api.dodays.co.uk
- Navigate to
auth/token.bru - Update the request body with valid credentials (or use test data):
{ "email": "customer@dodays.test", "password": "password" } - Send the request
- The bearer token will automatically be saved to your environment as
{{token}} - All subsequent authenticated requests will use this token
The collection is organised by API resource (not by endpoint type):
auth/ - Authentication (login, register, password reset)
account/ - User account management
bookings/ - Booking creation, payment, and management
booking-sessions/ - Session management within bookings
classes/ - Class scheduling and information
students/ - Student profile management
providers/ - Service provider information
venues/ - Venue data
catch-ups/ - Makeup/catch-up session management
subscriptions/ - Recurring subscription management
payments/ - Payment history and management
payment-intents/ - Stripe payment intent handling
vouchers/ - Voucher/discount code management
environments/ - Bruno environment configurations
Each environment uses these variables:
{{protocol}}- HTTP protocol (https){{host}}- API host domain{{version}}- API version (e.g., v1){{token}}- Bearer token for authentication (auto-saved after login){{payment_intent}}- Stripe payment intent ID (auto-saved during payment flows)
- Create a payment intent via
payment-intents/create.bru - The payment intent ID is automatically saved to
{{payment_intent}} - Use a test payment method ID (e.g.,
pm_123456) when creating bookings/subscriptions - Submit the booking/subscription request
Most resources support standard CRUD operations:
- List resources (GET collection)
- Get single resource (GET by ID or handle)
- Create resource (POST)
- Update resource (PUT/PATCH)
- Delete resource (DELETE)
Resources can be identified by:
- Numeric IDs:
class_id: 1,student_id: 1 - String handles:
providers/dodays-demo
Each .bru file contains:
meta {
name: Request Name
type: http
seq: 1
}
get {
url: {{protocol}}://{{host}}/{{version}}/endpoint
}
auth:bearer {
token: {{token}}
}
body:json {
{
"key": "value"
}
}
script:post-response {
// JavaScript to run after response
bru.setEnvVar("token", res.body.token);
}
When adding new endpoints:
- Place the
.brufile in the appropriate resource directory - Use environment variables for URLs (
{{protocol}},{{host}},{{version}}) - Include authentication where required
- Add post-response scripts for variables that should be saved (tokens, IDs, etc.)
- Use descriptive names and include example request bodies
For issues with the DoDays API, contact the development team. For issues with Bruno, visit Bruno's documentation.