Skip to main content

Official Python client for the Pointify Travel API.

Project description

Pointify Travel — Python Client

Official Python SDK for the Pointify Travel API. Typed, async-friendly, pydantic-validated.

Install

pip install pointify

Requires Python 3.10+.

Quickstart

from pointify import PointifyClient

client = PointifyClient(api_key="pt_live_...")

results = client.search_flights(
    origin="LAX",
    destination="NRT",
    departure_date="2026-10-15",
    cabin_class="business",
)

for deal in results.deals:
    first = deal.segments[0]
    print(f"{first.carrier} {first.flight_number}: ${deal.price_cash}")

Async

import asyncio
from pointify import AsyncPointifyClient

async def main():
    async with AsyncPointifyClient(api_key="pt_live_...") as client:
        return await client.optimize_points(
            origin="JFK",
            destination="LHR",
            departure_date="2026-10-15",
            programs=["chase_ur", "amex_mr"],
        )

print(asyncio.run(main()))

Endpoints

Method Purpose
search_flights Aggregated flight search (Duffel + scraper + awards)
search_calendar Lowest fares across a date range
get_prediction Buy / wait / neutral signal
get_hidden_city Hidden-city ticketing opportunities
get_geo_pricing Compare fares across geographic markets
optimize_points Best transfer-partner routing
create_api_key / list_api_keys / revoke_api_key Key management

Errors

Every non-2xx response raises pointify.PointifyApiError:

from pointify import PointifyClient, PointifyApiError

try:
    client.search_flights(origin="XYZ", destination="NRT", departure_date="2026-10-15")
except PointifyApiError as err:
    print(err.status, err.body)

Get an API key

Sign in at pointifytravels.com/developers and generate a live key. Free tier: 1,000 requests/day.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pointify-0.1.0.tar.gz (7.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pointify-0.1.0-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file pointify-0.1.0.tar.gz.

File metadata

  • Download URL: pointify-0.1.0.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for pointify-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0f55b2f38f4c16ab3dcb89f4982adf3297367590133378576d1719167a768e71
MD5 01d6f48a3079be22b676d93ec63b330d
BLAKE2b-256 892cbd5b5e2f19c2c95dbd6208015cd83e3982ac967e8393aaf35fa509f33fe6

See more details on using hashes here.

File details

Details for the file pointify-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pointify-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for pointify-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 50d4a333345446949d6b0489e01812c3be84d7f3794e5f4f5019f09e228db4a4
MD5 7bcfcfbfd5458669e2becaf7e997d510
BLAKE2b-256 5b4434a3db7eb71fd76fd383180242127124fbbc9ed14f48d4b502a88561fdc9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page