curl --request GET \
--url https://api.example.com/api/routes/:slug{
"success": true,
"data": {
"id": "<string>",
"name": "<string>",
"slug": "<string>",
"image": "<string>",
"approximateDistance": "<string>",
"description": "<string>",
"gpxFileUrl": {},
"mapEmbedUrl": {},
"level": [
{}
],
"averageRating": 123,
"createdAt": "<string>",
"updatedAt": "<string>",
"reviews": [
{
"id": "<string>",
"routeId": "<string>",
"userId": "<string>",
"rating": 123,
"comment": {},
"createdAt": "<string>",
"updatedAt": "<string>",
"user": {
"id": "<string>",
"name": {},
"imageUrl": {}
}
}
],
"photos": [
{
"id": "<string>",
"context": "<string>",
"routeId": "<string>",
"routeCallId": {},
"userId": "<string>",
"imageUrl": "<string>",
"caption": {},
"status": "<string>",
"createdAt": "<string>",
"updatedAt": "<string>"
}
],
"reviewsPagination": {
"page": 123,
"limit": 123,
"totalCount": 123,
"totalPages": 123,
"hasNextPage": true,
"hasPreviousPage": true
},
"_count": {
"favorites": 123,
"routeCalls": 123,
"reviews": 123,
"photos": 123
}
}
}Get detailed information about a specific route including reviews and photos
curl --request GET \
--url https://api.example.com/api/routes/:slug{
"success": true,
"data": {
"id": "<string>",
"name": "<string>",
"slug": "<string>",
"image": "<string>",
"approximateDistance": "<string>",
"description": "<string>",
"gpxFileUrl": {},
"mapEmbedUrl": {},
"level": [
{}
],
"averageRating": 123,
"createdAt": "<string>",
"updatedAt": "<string>",
"reviews": [
{
"id": "<string>",
"routeId": "<string>",
"userId": "<string>",
"rating": 123,
"comment": {},
"createdAt": "<string>",
"updatedAt": "<string>",
"user": {
"id": "<string>",
"name": {},
"imageUrl": {}
}
}
],
"photos": [
{
"id": "<string>",
"context": "<string>",
"routeId": "<string>",
"routeCallId": {},
"userId": "<string>",
"imageUrl": "<string>",
"caption": {},
"status": "<string>",
"createdAt": "<string>",
"updatedAt": "<string>"
}
],
"reviewsPagination": {
"page": 123,
"limit": 123,
"totalCount": 123,
"totalPages": 123,
"hasNextPage": true,
"hasPreviousPage": true
},
"_count": {
"favorites": 123,
"routeCalls": 123,
"reviews": 123,
"photos": 123
}
}
}curl "https://api.losinmaduros.com/api/routes/casa-de-campo-loop?reviewsPage=1&reviewsLimit=10&photosLimit=5"
Show Route Data
BEGINNER, INTERMEDIATE, ADVANCED, EXPERTShow Review Object
Show Photo Object
Show Pagination Object
{
"success": true,
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Casa de Campo Loop",
"slug": "casa-de-campo-loop",
"image": "https://example.com/routes/casa-de-campo.jpg",
"approximateDistance": "12 km",
"description": "A beautiful loop through Casa de Campo park with scenic views and varied terrain. Perfect for beginners and intermediate skaters.",
"gpxFileUrl": "https://example.com/gpx/casa-de-campo.gpx",
"mapEmbedUrl": "https://maps.google.com/embed/casa-de-campo",
"level": ["BEGINNER", "INTERMEDIATE"],
"averageRating": 4.5,
"createdAt": "2024-01-15T10:30:00.000Z",
"updatedAt": "2024-02-20T14:22:00.000Z",
"reviews": [
{
"id": "rev-001",
"routeId": "550e8400-e29b-41d4-a716-446655440000",
"userId": "user-123",
"rating": 5,
"comment": "Amazing route! Great for a weekend morning skate.",
"createdAt": "2024-02-15T09:30:00.000Z",
"updatedAt": "2024-02-15T09:30:00.000Z",
"user": {
"id": "user-123",
"name": "Maria Garcia",
"imageUrl": "https://example.com/users/maria.jpg"
}
},
{
"id": "rev-002",
"routeId": "550e8400-e29b-41d4-a716-446655440000",
"userId": "user-456",
"rating": 4,
"comment": "Good route but can be crowded on weekends.",
"createdAt": "2024-02-10T11:15:00.000Z",
"updatedAt": "2024-02-10T11:15:00.000Z",
"user": {
"id": "user-456",
"name": "Carlos Lopez",
"imageUrl": "https://example.com/users/carlos.jpg"
}
}
],
"photos": [
{
"id": "photo-001",
"context": "ROUTE_GALLERY",
"routeId": "550e8400-e29b-41d4-a716-446655440000",
"routeCallId": null,
"userId": "user-789",
"imageUrl": "https://example.com/photos/route-photo-1.jpg",
"caption": "Beautiful sunset view from the trail",
"status": "ACTIVE",
"createdAt": "2024-02-18T18:45:00.000Z",
"updatedAt": "2024-02-18T18:45:00.000Z"
}
],
"reviewsPagination": {
"page": 1,
"limit": 10,
"totalCount": 42,
"totalPages": 5,
"hasNextPage": true,
"hasPreviousPage": false
},
"_count": {
"favorites": 127,
"routeCalls": 18,
"reviews": 42,
"photos": 89
}
}
}
{
"success": false,
"error": "Route not found"
}