API Documentation
Complete API reference for the FishingLog Backend.
Overview
The FishingLog API is a RESTful API built with ASP.NET Core 9.0. It provides endpoints for:
- Fishing Logs: Track fishing sessions, catches, and personal bests
- Social Features: Posts, comments, likes, friends, and circles
- Tournaments: Registration, leaderboards, and results
- Gear Management: Rods, reels, boats, and gear setups
- Spots & Reports: Fishing locations, ratings, and conditions
- Charters: Charter listings and bookings
- Clubs & Events: Fishing clubs, events, and memberships
- Regulations: Location-based fishing regulations
- Admin Panel: Content moderation, user management, and analytics
- Advertising: Ad campaigns, targeting, and serving
Quick Links
- API Endpoints - Complete endpoint reference
- Authentication - Authentication and authorization
- Admin API - Admin panel endpoints
- Admin Roles & Permissions - Role-based access control
Base URL
- Local Development:
https://localhost:5100(HTTPS) orhttp://localhost:5101(HTTP) - Staging:
https://api-staging.reelog.app - Production:
https://api.reelog.app
API Versioning
Currently using unversioned API. All endpoints are under /api/ prefix.
Authentication
Most endpoints require JWT Bearer token authentication via AWS Cognito.
See Authentication Guide for details.
Interactive Documentation
Swagger UI
When running locally, access interactive API documentation at:
https://localhost:5100/swagger
Insomnia Workspace
A complete Insomnia workspace is available for API testing:
- Location:
insomnia/FishingLog API-*.yaml - Setup Guide: Testing with Insomnia
Response Format
Success Response
{
"id": "guid",
"name": "string",
"createdAt": "2025-12-10T00:00:00Z"
}
Error Response
{
"error": "Error message",
"details": "Additional error details"
}
Pagination
Paginated endpoints return:
{
"items": [...],
"pageNumber": 1,
"pageSize": 20,
"totalCount": 100,
"totalPages": 5
}
HTTP Status Codes
200 OK- Request successful201 Created- Resource created successfully400 Bad Request- Invalid request data401 Unauthorized- Authentication required403 Forbidden- Insufficient permissions404 Not Found- Resource not found500 Internal Server Error- Server error
Rate Limiting
Currently no rate limiting implemented. Rate limiting will be added in future releases.
Support
For API questions or issues:
- Check the Endpoints Documentation
- Review Authentication Guide
- See Testing Guide for examples