API Documentation

B2B Web Check-in
API Documentation

Complete integration guide for our secure and automated web check-in API. Enable seamless passenger check-in experiences across 500+ airlines globally.

Contact Support

1Overview

The B2B Web Check-in API enables third-party partners to integrate secure and automated web check-in functionality into their systems. It provides endpoints for authentication, check-in initiation, status tracking, and webhook notifications.

2Base URL

All API requests should be made to:

Base URLtext
https://api.flyo.ai/core/v1/b2b/checkin

3Authentication Flow

1. Generate Access Token

Endpoint: POST /auth

POST /authjson
{
  "api_key": "your_api_key_here",
  "api_secret": "your_api_secret_here"
}

Successful Response:

200 OKjson
{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "token_type": "Bearer",
  "expires_in": 3600,
  "expires_at": "2024-01-15T10:30:00Z"
}

2. Use the Access Token

Include the token in the Authorization header:

Authorization Headertext
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

4API Endpoints

1. Initiate Web Check-in

Endpoint: POST /checkin

POST /checkinjson
{
  "pnr": "ABC123",
  "contact_email": "[email protected]",
  "contact_phone": "+14155552671",
  "passengers": [
    {
      "first_name": "John",
      "last_name": "Smith",
      "date_of_birth": "1990-05-15",
      "passport": {
        "number": "A12345678",
        "expiry": "2030-12-31",
        "nationality": "US"
      }
    }
  ]
}

Successful Response:

200 OKjson
{
  "checkin_id": "chk_1234567890abcdef",
  "status": "PENDING",
  "message": "Check-in request received and is being processed"
}

2. Get Check-in Status

Endpoint: GET /checkin/{checkin_id}/status

Status Values

PENDINGRequest received and awaiting processing
IN_PROGRESSCheck-in is currently being processed
COMPLETEDCheck-in completed successfully
FAILEDCheck-in failed (see message for details)

5Webhook Notifications

Receive automatic POST notifications when check-in status changes.

Webhook Payloadjson
{
  "event": "checkin.completed",
  "checkin_id": "chk_1234567890abcdef",
  "status": "COMPLETED",
  "timestamp": "2024-01-15T10:33:45Z"
}

6Error Handling

Error Response Formatjson
{
  "error": "ERROR_CODE",
  "message": "Human readable error message",
  "details": {
    "field": "Additional error details"
  }
}

Common Error Codes

UNAUTHORIZEDInvalid or expired access token
RATE_LIMIT_EXCEEDEDToo many requests sent in a short time
INVALID_REQUESTMissing or invalid request data
CHECKIN_NOT_AVAILABLECheck-in not available for this flight

7Support

Need Help with Integration?

Our B2B Support Team is here to help you implement the API successfully.

99.9% Uptime SLA

Reliable service with enterprise-grade infrastructure.

24/7 Support

Round-the-clock technical support for all questions.