Skip to content

Environments

Project Expedition provides two API environments: Staging for development and testing, and Production for live applications.

Environment URLs

EnvironmentBase URLUse Case
Staginghttps://apistage.projectexpedition.com/v1Development & Testing
Productionhttps://api.projectexpedition.com/v1Live Applications

Staging Environment

The staging environment is designed for development and testing:

  • No IP whitelisting required - Connect from any location
  • Full API access - All endpoints available
  • Real data - Same products and content as production
  • Lower rate limits - 2,000 calls per day
  • Test bookings - Create test bookings without charges

Staging Best Practices

  1. Use staging for all development work
  2. Test the complete booking flow: search → availability → booking → cancellation
  3. Verify error handling with edge cases
  4. Test date ranges near availability boundaries

Production Environment

The production environment is for live, customer-facing applications:

  • IP whitelisting required - Must register your IP addresses
  • Higher rate limits - 5,000 calls per day (can be increased)
  • Live bookings - Real charges and confirmations
  • Priority support - Faster response times

IP Whitelisting

Before using production:

  1. Identify your server’s outbound IP address(es)
  2. Email partners@projectexpedition.com with your IP list
  3. Wait for confirmation (usually within 24 hours)
Terminal window
# Find your server's outbound IP
curl ifconfig.me

Environment Switching

Use environment variables to switch between environments:

// JavaScript
const BASE_URL = process.env.NODE_ENV === 'production'
? 'https://api.projectexpedition.com/v1'
: 'https://apistage.projectexpedition.com/v1';
const response = await fetch(`${BASE_URL}/return_tours?country=ireland`, {
headers: {
'access-token': process.env.PE_API_TOKEN
}
});
<?php
// PHP
$baseUrl = getenv('APP_ENV') === 'production'
? 'https://api.projectexpedition.com/v1'
: 'https://apistage.projectexpedition.com/v1';
$url = "$baseUrl/return_tours?country=ireland";

Data Consistency

Both environments share the same:

  • Product catalog and content
  • Pricing and availability data
  • Geographic data (countries, regions, towns)

Testing Checklist

Before moving to production, verify:

  • Tour search returns expected results
  • Availability checks work for various date ranges
  • Booking creation succeeds with valid data
  • Error responses are handled gracefully
  • Rate limiting is respected
  • IP addresses are whitelisted

Support

For environment-related questions:

Email: partners@projectexpedition.com