Build with the
Pointify API
Integrate flight search, booking, and fare monitoring into your apps. Real-time streaming results, typed SDKs, and production-ready endpoints.
Quick Start
Get your API key
Sign up for a Business plan to get API access. Your key starts with pt_live_.
POINTIFY_API_KEY=pt_live_your_key_hereSearch flights
POST to /api/search with your route and dates. Results stream back via Server-Sent Events as each carrier responds.
const res = await fetch(
'https://api.pointifytravels.dev/api/search',
{
method: 'POST',
headers: {
'Authorization': 'Bearer pt_live_...',
'Content-Type': 'application/json',
},
body: JSON.stringify({
origin: 'JFK',
destination: 'NRT',
departure_date: '2026-05-15',
passengers: 1,
cabin_class: 'business',
search_type: 'both', // cash + points
}),
}
);Stream results
Read the SSE stream. Each event has a type (result, progress, complete) and a JSON data payload.
const reader = res.body.getReader();
const decoder = new TextDecoder();
while (true) {
const { done, value } = await reader.read();
if (done) break;
const lines = decoder.decode(value).split('\n');
for (const line of lines) {
if (line.startsWith('data: ')) {
const event = JSON.parse(line.slice(6));
if (event.type === 'result') {
console.log(event.data);
// { price, carrier, route, ... }
}
}
}
}API Endpoints
Base URL: https://api.pointifytravels.dev
/api/search/api/hotels/search/api/cars/search/api/booking/create-offer/api/book/api/booking/:id/api/booking/:id/cancel/api/alerts/api/alerts/api/alerts/:id/api/stats/trending/api/stats/public/healthConnect via MCP
Our Model Context Protocol server lets AI assistants like Claude and ChatGPT search flights, check prices, and create bookings on behalf of users. Connect once and get access to all 5 travel tools.
- ✓Works with Claude Desktop, Claude Code, and ChatGPT
- ✓5 tools: flight search, calendar, fare prediction, points optimizer, hidden city
- ✓Structured responses with pricing data
- ✓Auth via API key from your developer dashboard
{
"mcpServers": {
"pointify-travel": {
"command": "npx",
"args": [
"@pointify/mcp-server"
],
"env": {
"POINTIFY_API_KEY": "pt_live_..."
}
}
}
}Setup Instructions
Claude Desktop
Open Settings > Developer > Edit Config in Claude Desktop and add the Pointify server to your claude_desktop_config.json:
{
"mcpServers": {
"pointify-travel": {
"command": "npx",
"args": ["@pointify/mcp-server"],
"env": {
"POINTIFY_API_KEY": "pt_live_your_key_here"
}
}
}
}Claude Code (CLI)
Add the MCP server to your project via the CLI:
claude mcp add pointify-travel -- npx @pointify/mcp-serverThen set the environment variable in your shell or .env file:
export POINTIFY_API_KEY=pt_live_your_key_hereRemote HTTP MCP (Streamable HTTP)
For server-side integrations or custom MCP clients, connect directly to the hosted endpoint:
Server URL: https://api.pointifytravels.dev/mcp
Auth Header: Authorization: Bearer pt_live_your_key_here
Transport: Streamable HTTP (POST/GET/DELETE)Available MCP Tools
All tools accept JSON over HTTP. Authentication: Authorization: Bearer pt_your_key
search_flightsSearch for flight deals between two airports on a given date. Returns cash fares and/or award availability from multiple sources (Duffel, Google Flights scraper, Seats.aero).
Input Schema
{ origin: string, destination: string, date: string (YYYY-MM-DD), returnDate?: string, cabinClass?: "economy"|"premium_economy"|"business"|"first", searchType?: "cash"|"points"|"all" }Response
{ results: FlightResult[], source: string, count: number }Example (curl)
curl -X POST https://api.pointifytravels.dev/mcp/search_flights \
-H "Authorization: Bearer pt_your_key" \
-H "Content-Type: application/json" \
-d '{"origin":"JFK","destination":"LHR","date":"2025-06-15","cabinClass":"economy"}'search_calendarFind the cheapest travel dates around a target date. Shows a calendar view of minimum prices for flexible date travelers.
Input Schema
{ origin: string, destination: string, targetDate: string (YYYY-MM-DD), daysBefore?: number (default 7), daysAfter?: number (default 7) }Response
{ calendar: { date: string, minPrice: number, currency: string }[] }Example (curl)
curl -X POST https://api.pointifytravels.dev/mcp/search_calendar \
-H "Authorization: Bearer pt_your_key" \
-H "Content-Type: application/json" \
-d '{"origin":"BOS","destination":"CDG","targetDate":"2025-07-01","daysBefore":5,"daysAfter":5}'get_predictionGet a buy/wait/neutral recommendation for a flight fare based on historical patterns and time-based signals.
Input Schema
{ origin: string, destination: string, departureDate: string (YYYY-MM-DD), currentPrice: number }Response
{ recommendation: "buy"|"wait"|"neutral", confidence: number, reason: string }Example (curl)
curl -X POST https://api.pointifytravels.dev/mcp/get_prediction \
-H "Authorization: Bearer pt_your_key" \
-H "Content-Type: application/json" \
-d '{"origin":"LAX","destination":"NRT","departureDate":"2025-08-20","currentPrice":850}'optimize_pointsCompare points redemption options for a flight and rank them by cents-per-point (CPP) value. Helps decide whether to pay cash or use loyalty points.
Input Schema
{ cashPrice: number, pointsOptions: { program: string, pointsRequired: number }[] }Response
{ ranked: { program: string, cpp: number, verdict: "excellent"|"good"|"poor" }[] }Example (curl)
curl -X POST https://api.pointifytravels.dev/mcp/optimize_points \
-H "Authorization: Bearer pt_your_key" \
-H "Content-Type: application/json" \
-d '{"cashPrice":1200,"pointsOptions":[{"program":"Chase UR","pointsRequired":60000},{"program":"Amex MR","pointsRequired":75000}]}'check_hidden_cityCheck for hidden city ticketing opportunities where booking through your destination is cheaper than booking directly. Includes risk disclaimers.
Input Schema
{ origin: string, destination: string, departureDate: string (YYYY-MM-DD) }Response
{ opportunities: { via: string, price: number, savings: number }[], disclaimer: string }Example (curl)
curl -X POST https://api.pointifytravels.dev/mcp/check_hidden_city \
-H "Authorization: Bearer pt_your_key" \
-H "Content-Type: application/json" \
-d '{"origin":"ORD","destination":"DEN","departureDate":"2025-09-10"}'Webhooks
Get notified in real-time when events happen in your account.
booking.createdA new booking was created
booking.confirmedBooking was confirmed and ticketed
booking.canceledA booking was canceled
alert.triggeredA fare alert matched a price drop
alert.mistake_fareA mistake fare was detected
payment.completedPayment was successfully processed
SDKs & Libraries
Official client libraries for your language of choice.
TypeScript / tRPC
Available@pointify/clientType-safe client with full tRPC integration. Auto-generated types.
Python
Coming Soonpointify-pythonAsync client with SSE streaming support. pip installable.
MCP Server
Available@pointify/mcp-serverModel Context Protocol server for Claude and ChatGPT.
Ready to integrate?
Get API access with a Business plan. Need custom volume or enterprise features?
Ready to find your best fare?
Join travel professionals who never overpay for flights. Free account in 30 seconds.
Create Free Account