Overview
The Guide Profiles API manages detailed profile information for guide users. Each guide profile contains professional information including expertise areas, certifications, service rates, locations, and tour preferences.
Guide Profile Object
The Guide Profile object represents a professional tour guide profile:
References the user account (primary key)
Short professional summary
Detailed background story and experience
Current availability status text
Currency code (e.g., USD, MXN, EUR)
Average rating from reviews
Total number of reviews received
Primary location or region
Experience level (e.g., Expert, Intermediate, Beginner)
Preferred or maximum group size
Transportation options provided
Photography services or style offered
Additional information or notes
URL to profile avatar image
URL to profile cover image
Featured post text content
URL to featured post image
Caption for featured post
Timestamp when post was published
Create Guide Profile
curl -X POST http://localhost:8080/api/guide_profiles \
-H "Content-Type: application/json" \
-d '{
"userId": 2,
"summary": "Expert cultural and historical guide with 10+ years experience",
"story": "Born and raised in Mexico City, I have been sharing the rich history and vibrant culture of my city with travelers from around the world for over a decade. My passion for archaeology and anthropology brings ancient civilizations to life.",
"statusText": "Available for bookings",
"hourlyRate": 45.00,
"currency": "USD",
"ratingAvg": 4.9,
"reviewsCount": 127,
"locationLabel": "Mexico City & surroundings",
"experienceLevel": "Expert",
"style": "Interactive & Educational",
"groupSize": "Up to 12 people",
"tourIntensity": "Moderate",
"transportOffered": "Private vehicle available",
"photoStyle": "Professional photos included",
"additionalNotes": "Specialized in pre-Hispanic history and archaeology",
"avatarUrl": "https://example.com/avatars/carlos.jpg",
"coverUrl": "https://example.com/covers/carlos-teotihuacan.jpg"
}'
User ID to create profile for (must reference existing user with GUIDE role)
Detailed background story
Average rating (typically auto-calculated)
Reviews count (typically auto-calculated)
Post publication timestamp
Response
{
"userId": 2,
"summary": "Expert cultural and historical guide with 10+ years experience",
"story": "Born and raised in Mexico City, I have been sharing the rich history and vibrant culture of my city with travelers from around the world for over a decade. My passion for archaeology and anthropology brings ancient civilizations to life.",
"statusText": "Available for bookings",
"hourlyRate": 45.00,
"currency": "USD",
"ratingAvg": 4.9,
"reviewsCount": 127,
"locationLabel": "Mexico City & surroundings",
"experienceLevel": "Expert",
"style": "Interactive & Educational",
"groupSize": "Up to 12 people",
"tourIntensity": "Moderate",
"transportOffered": "Private vehicle available",
"photoStyle": "Professional photos included",
"additionalNotes": "Specialized in pre-Hispanic history and archaeology",
"avatarUrl": "https://example.com/avatars/carlos.jpg",
"coverUrl": "https://example.com/covers/carlos-teotihuacan.jpg",
"postText": null,
"postImageUrl": null,
"postCaption": null,
"postPublishedAt": null,
"updatedAt": "2024-03-11T11:00:00Z"
}
Get All Guide Profiles
curl -X GET http://localhost:8080/api/guide_profiles
Retrieves all guide profiles in the system.
Response
[
{
"userId": 2,
"summary": "Expert cultural and historical guide with 10+ years experience",
"hourlyRate": 45.00,
"currency": "USD",
"ratingAvg": 4.9,
"reviewsCount": 127,
"locationLabel": "Mexico City & surroundings",
"experienceLevel": "Expert",
"avatarUrl": "https://example.com/avatars/carlos.jpg"
}
]
Get Guide Profile by ID
curl -X GET http://localhost:8080/api/guide_profiles/2
Retrieves a specific guide profile by user ID.
Response
{
"userId": 2,
"summary": "Expert cultural and historical guide with 10+ years experience",
"story": "Born and raised in Mexico City, I have been sharing the rich history and vibrant culture of my city with travelers from around the world for over a decade. My passion for archaeology and anthropology brings ancient civilizations to life.",
"statusText": "Available for bookings",
"hourlyRate": 45.00,
"currency": "USD",
"ratingAvg": 4.9,
"reviewsCount": 127,
"locationLabel": "Mexico City & surroundings",
"experienceLevel": "Expert",
"style": "Interactive & Educational",
"groupSize": "Up to 12 people",
"tourIntensity": "Moderate",
"transportOffered": "Private vehicle available",
"photoStyle": "Professional photos included",
"additionalNotes": "Specialized in pre-Hispanic history and archaeology",
"avatarUrl": "https://example.com/avatars/carlos.jpg",
"coverUrl": "https://example.com/covers/carlos-teotihuacan.jpg",
"postText": null,
"postImageUrl": null,
"postCaption": null,
"postPublishedAt": null,
"updatedAt": "2024-03-11T11:00:00Z"
}
Update Guide Profile
curl -X PUT http://localhost:8080/api/guide_profiles/2 \
-H "Content-Type: application/json" \
-d '{
"userId": 2,
"summary": "Award-winning cultural guide specializing in pre-Hispanic civilizations",
"hourlyRate": 50.00,
"statusText": "Booking fast - limited availability",
"ratingAvg": 4.95,
"reviewsCount": 142,
"updatedAt": "2024-03-15T16:30:00Z"
}'
Updates an existing guide profile.
Response
{
"userId": 2,
"summary": "Award-winning cultural guide specializing in pre-Hispanic civilizations",
"story": "Born and raised in Mexico City, I have been sharing the rich history and vibrant culture of my city with travelers from around the world for over a decade. My passion for archaeology and anthropology brings ancient civilizations to life.",
"statusText": "Booking fast - limited availability",
"hourlyRate": 50.00,
"currency": "USD",
"ratingAvg": 4.95,
"reviewsCount": 142,
"locationLabel": "Mexico City & surroundings",
"experienceLevel": "Expert",
"style": "Interactive & Educational",
"groupSize": "Up to 12 people",
"tourIntensity": "Moderate",
"transportOffered": "Private vehicle available",
"photoStyle": "Professional photos included",
"additionalNotes": "Specialized in pre-Hispanic history and archaeology",
"avatarUrl": "https://example.com/avatars/carlos.jpg",
"coverUrl": "https://example.com/covers/carlos-teotihuacan.jpg",
"postText": null,
"postImageUrl": null,
"postCaption": null,
"postPublishedAt": null,
"updatedAt": "2024-03-15T16:30:00Z"
}
Delete Guide Profile
curl -X DELETE http://localhost:8080/api/guide_profiles/2
Deletes a guide profile from the system.
Response
{
"message": "Guide profile deleted successfully"
}