iTrip v2 API

GraphQL API for Trip Insurance (Co-op)

API Endpoint

GraphQL: /api/graphql

Available Queries

Health Check

query {
  health
}

Calculate Trip Insurance Premium

query {
  calculateTripInsurancePremium(
    input: {
      policyHolders: [{ dateOfBirth: "2006-01-22" }]
      countries: ["South Korea"]
      policyStartDate: "2026-01-22"
      policyEndDate: "2026-01-28"
      isCovid: false
    }
  ) {
    ageRange
    count
    premiumPerPersonUSD
    premiumPerPersonMNT
  }
}

Mutations

Create Trip Insurance (auto-verify)

mutation {
  createTripInsurance(
    input: {
      policyHolder: {
        firstName: "John"
        lastName: "Doe"
        foreignPassportNumber: "AB123456"
        nationality: "Mongolian"
        dateOfBirth: "2006-01-22"
        phoneNumber: "99112233"
        email: "john@example.com"
      }
      countries: ["South Korea"]
      policyStartDate: "2026-01-22"
      policyEndDate: "2026-01-28"
      isCovid: false
      isVerified: true
    }
  ) {
    id
    premium { MNT USD }
    isVerified
    verifiedAt
    createdAt
  }
}

Create and Verify Group Trip Insurance

mutation {
  createAndVerifyGroupTripInsurance(
    input: {
      policyHolders: [
        {
          firstName: "John"
          lastName: "Doe"
          foreignPassportNumber: "AB123456"
          nationality: "Mongolian"
          dateOfBirth: "1990-05-15"
          phoneNumber: "99112233"
          email: "john@example.com"
        }
        {
          firstName: "Jane"
          lastName: "Smith"
          foreignPassportNumber: "CD789012"
          nationality: "Mongolian"
          dateOfBirth: "1985-03-20"
          phoneNumber: "99223344"
          email: "jane@example.com"
        }
        {
          firstName: "Bob"
          lastName: "Johnson"
          foreignPassportNumber: "EF345678"
          nationality: "Mongolian"
          dateOfBirth: "2000-08-10"
          phoneNumber: "99335566"
          email: "bob@example.com"
        }
      ]
      countries: ["Japan", "South Korea"]
      policyStartDate: "2026-02-01"
      policyEndDate: "2026-02-15"
      isCovid: false
    }
  ) {
    id
    premium { MNT USD }
    isVerified
    verifiedAt
    createdAt
    policyHolder {
      firstName
      lastName
      email
    }
  }
}