Midway@ API Documentation
Integrate fair travel time meetup planning into your applications. Our RESTful API helps you build features that find perfect meeting spots where everyone has balanced commutes.
🚀 Quick Start
Get started with the Midway@ API in minutes. Perfect for developers building group coordination features, event planning apps, or workplace tools that need smart meeting location suggestions.
// Create a new meetup session
const response = await fetch('https://www.midway.at/api/sessions', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
hostName: 'Alice',
hostAddress: '123 Main St, New York, NY',
venueQuery: 'coffee shop with wifi',
participants: [
{ name: 'Bob', address: '456 Oak Ave, Brooklyn, NY' },
{ name: 'Carol', address: '789 Pine St, Queens, NY' }
]
})
})
const session = await response.json()
console.log('Session created:', session.shareUrl)
🔌 Core API Endpoints
Create Session
/api/sessions
Creates a new meetup planning session with participants and venue preferences. Returns recommendations for venues with fair travel times for all participants.
Request Body:
{ "hostName": "string", "hostEmail": "string (optional)", "hostAddress": "string", "hostTransport": "driving|walking|transit|bicycling", "venueQuery": "string", "participants": [ { "name": "string", "email": "string (optional)", "address": "string", "transportMode": "driving|walking|transit|bicycling" } ] }
Response:
{ "sessionId": "string", "shareToken": "string", "shareUrl": "string", "venues": [ { "id": "string", "name": "string", "address": "string", "rating": number, "priceLevel": number, "fairnessScore": number, "maxTravelTime": number, "aiDescription": "string", "travelTimes": { "participantId": { "duration": number, "distance": number, "mode": "string" } } } ] }
Get Session Details
/api/sessions/join/{shareToken}
Retrieves session details including all participants, venue recommendations, and current voting status. Use this endpoint to build collaborative interfaces where participants can view and vote on venues.
Example Response:
{ "sessionId": "string", "hostName": "string", "venueQuery": "string", "status": "active|completed", "participants": [...], "venues": [...], "votes": { "venueId": { "count": number, "voters": ["participantName1", "participantName2"] } } }
Vote on Venues
/api/sessions/{sessionId}/vote
Allows participants to vote for their preferred venues. Supports both single votes and ranked preferences. Essential for building collaborative decision-making features.
Request Body:
{ "token": "shareToken", "participantName": "string", "venueId": "string", "action": "upvote|downvote|remove" }
⚡ Advanced Features
🧠 AI-Powered Descriptions
Every venue recommendation includes AI-generated descriptions that explain why it's a good fit for your specific group and venue requirements.
"aiDescription": "Perfect for your coffee meeting - spacious seating, reliable WiFi, and quiet atmosphere ideal for conversation."
⚖️ Fairness Scoring
Proprietary algorithm that balances travel times across all participants, not just geographic distance. Ensures no one gets stuck with an unfair commute.
"fairnessScore": 0.92, // Higher = more fair "maxTravelTime": 18 // Minutes for furthest participant
🚇 Multi-Modal Transport
Supports driving, walking, public transit, and cycling. Calculates real-time travel times using live traffic and transit data.
"transportMode": "transit", "duration": 23, // Live travel time in minutes "distance": 3.2 // Distance in kilometers
🔗 Share Links
Generate shareable links that work without requiring participants to install apps or create accounts. Perfect for quick group coordination.
"shareUrl": "https://www.midway.at/join/abc123", // No sign-up required for participants
💡 Common Use Cases
Event Planning Apps
- • Add fair meetup planning to event platforms
- • Integrate with calendar applications
- • Build group coordination features
- • Optimize corporate event locations
Workplace Tools
- • Team meeting location optimization
- • Client meeting venue selection
- • Company retreat planning
- • Remote team coordination
Social Apps
- • Dating app meetup suggestions
- • Friend group coordination
- • Community event planning
- • Study group location finder
Travel & Navigation
- • Multi-person route optimization
- • Tourist group coordination
- • Public transit integration
- • Accessibility-aware planning
🔒 Authentication & Limits
Rate Limits
- • Free Tier: 100 requests/hour
- • Sessions: 50 active sessions
- • Participants: 20 per session
- • Venues: 15 recommendations per query
Authentication
- • API Key: Contact us for access
- • Session Tokens: Temporary, secure
- • CORS: Configurable origins
- • HTTPS: Required for all requests
Contact Us
Contact us for API access and integration support. We're here to help you build amazing group coordination features. Reach out to us at kapil@midway.at.