openapi: 3.1.0 info: title: AOPAY Technology API version: '2026-10-15' description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-15: 30 operation(s) read from 6 public documentation page(s) (each operation names its page in x-source). This is not the provider''s published contract; AOPAY Technology has published no machine-readable contract that the pipeline could find. Engine: local.' x-evidence-tiers: code-example: 1 documentation: 29 pages-with-code: 1 pages-read: 6 x-generated-from: documentation x-provenance: generated x-authored-by: API Evangelist x-generated: '2026-10-15' x-generator: generate-contract-from-docs.py x-engine: local x-sources: - https://aopay.in/bus-api - https://aopay.in/fd-rd-api - https://aopay.in/hotel-api - https://aopay.in/train-api - https://aopay.in/flight-api - https://aopay.in/wallet-payment-api servers: - url: https://api.aopay.in/v2 paths: /ancillaries: post: operationId: post_ancillaries tags: - Ancillaries summary: Baggage & meals add‑on x-source: https://aopay.in/flight-api responses: '201': description: Success (status as documented) x-evidence: kind: documentation /api/v1/deposit/rates: get: operationId: get_api_v1_deposit_rates tags: - Api summary: Fixed & Recurring Deposit API for Digital Investment Management Solution x-source: https://aopay.in/fd-rd-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /api/v1/investment/portfolio: get: operationId: get_api_v1_investment_portfolio tags: - Api summary: Fixed & Recurring Deposit API for Digital Investment Management Solution x-source: https://aopay.in/fd-rd-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /api/v1/recurring-deposit/setup: post: operationId: post_api_v1_recurring_deposit_setup tags: - Api summary: Fixed & Recurring Deposit API for Digital Investment Management Solution x-source: https://aopay.in/fd-rd-api responses: '201': description: Success (status as documented) x-evidence: kind: documentation /api/v1/wallet/{walletid}: post: operationId: post_api_v1_wallet_walletid tags: - Api summary: Fast & Easy E-Wallet API Integration for Developers x-source: https://aopay.in/wallet-payment-api parameters: - name: walletid in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiV1WalletWalletidRequest' responses: '201': description: Success (status as documented) x-evidence: kind: documentation collapsed_from: 4 example path(s) differing only at walletId /api/v1/wallet/{walletId}/balance: get: operationId: get_api_v1_wallet_walletId_balance tags: - Api summary: Fast & Easy E-Wallet API Integration for Developers x-source: https://aopay.in/wallet-payment-api parameters: - name: walletId in: path required: true schema: type: string responses: '200': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/GetApiV1WalletWalletidBalanceResponse' x-evidence: kind: documentation /api/v1/{v1id}/create: post: operationId: post_api_v1_v1id_create tags: - Api summary: Fixed & Recurring Deposit API for Digital Investment Management Solution x-source: https://aopay.in/fd-rd-api parameters: - name: v1id in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiV1V1IdCreateRequest' responses: '201': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/PostApiV1V1IdCreateResponse' x-evidence: kind: documentation collapsed_from: 2 example path(s) differing only at v1Id /bookings/cancel: delete: operationId: delete_bookings_cancel tags: - Bookings summary: Cancellation & refund x-source: https://aopay.in/train-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /bookings/pnr/{pnr}: get: operationId: get_bookings_pnr_pnr tags: - Bookings summary: PNR status x-source: https://aopay.in/train-api parameters: - name: pnr in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /bookings/{bookingid}: post: operationId: post_bookings_bookingid tags: - Bookings summary: Ticket booking x-source: https://aopay.in/train-api parameters: - name: bookingid in: path required: true schema: type: string responses: '201': description: Success (status as documented) x-evidence: kind: documentation collapsed_from: 4 example path(s) differing only at bookingId /bookings/{pnr}: get: operationId: get_bookings_pnr tags: - Bookings summary: PNR retrieval x-source: https://aopay.in/flight-api parameters: - name: pnr in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /brand/templates: get: operationId: get_brand_templates tags: - Brand summary: GET /brand/templates x-source: https://aopay.in/bus-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /bus/refund/status: get: operationId: get_bus_refund_status tags: - Bus summary: Cancellation & Refund API x-source: https://aopay.in/bus-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /bus/seat/lock: post: operationId: post_bus_seat_lock tags: - Bus summary: Lock selected seats on a bus x-source: https://aopay.in/bus-api responses: '201': description: Success (status as documented) x-evidence: kind: documentation /bus/{buid}: get: operationId: get_bus_buid tags: - Bus summary: Get fare information for a bus x-source: https://aopay.in/bus-api parameters: - name: buid in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation collapsed_from: 7 example path(s) differing only at buId post: operationId: post_bus_buid tags: - Bus summary: Book a bus ticket x-source: https://aopay.in/bus-api parameters: - name: buid in: path required: true schema: type: string responses: '201': description: Success (status as documented) x-evidence: kind: documentation collapsed_from: 5 example path(s) differing only at buId /flights/reprice: post: operationId: post_flights_reprice tags: - Flights summary: Live fare repricing x-source: https://aopay.in/flight-api responses: '201': description: Success (status as documented) x-evidence: kind: documentation /flights/status/{pnr}: get: operationId: get_flights_status_pnr tags: - Flights summary: Live flight status x-source: https://aopay.in/flight-api parameters: - name: pnr in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /flights/{flightid}: get: operationId: get_flights_flightid tags: - Flights summary: Live seat availability x-source: https://aopay.in/flight-api parameters: - name: flightid in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation collapsed_from: 3 example path(s) differing only at flightId /payment/status: get: operationId: get_payment_status tags: - Payment summary: Check payment status x-source: https://aopay.in/bus-api responses: '200': description: Success (status as documented) x-evidence: kind: documentation /payment/{paymentid}: post: operationId: post_payment_paymentid tags: - Payment summary: Initiate payment for a bus booking x-source: https://aopay.in/bus-api parameters: - name: paymentid in: path required: true schema: type: string responses: '201': description: Success (status as documented) x-evidence: kind: documentation collapsed_from: 2 example path(s) differing only at paymentId /reports/{reportid}: get: operationId: get_reports_reportid tags: - Reports summary: GET /reports/{reportid} x-source: https://aopay.in/bus-api parameters: - name: reportid in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation collapsed_from: 5 example path(s) differing only at reportId /seats/map: post: operationId: post_seats_map tags: - Seats summary: Seat map & selection x-source: https://aopay.in/flight-api responses: '201': description: Success (status as documented) x-evidence: kind: documentation /tickets/download/{pnr}: get: operationId: get_tickets_download_pnr tags: - Tickets summary: E-ticket PDF x-source: https://aopay.in/train-api parameters: - name: pnr in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /trains/schedule/{trainNo}: get: operationId: get_trains_schedule_trainNo tags: - Trains summary: Train timetable x-source: https://aopay.in/train-api parameters: - name: trainNo in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /trains/{trainid}: get: operationId: get_trains_trainid tags: - Trains summary: Live seat availability x-source: https://aopay.in/train-api parameters: - name: trainid in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation collapsed_from: 4 example path(s) differing only at trainId /v1/hotel/search: post: operationId: post_v1_hotel_search tags: - Hotel summary: Real-time hotel search API x-source: https://aopay.in/hotel-api requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostV1HotelSearchRequest' responses: '201': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/PostV1HotelSearchResponse' x-evidence: kind: documentation /v2/{v2id}/search: post: operationId: post_v2_v2id_search tags: - Search summary: POST /v2/bus/search x-source: https://aopay.in/bus-api parameters: - name: v2id in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostV2V2IdSearchRequest' responses: '201': description: Success (shape read from the example response on the page) content: application/json: schema: $ref: '#/components/schemas/PostV2V2IdSearchResponse' x-evidence: kind: code-example language: javascript snippet: "fetch('https://api.aopay.in/v2/bus/search', { \n method: 'POST', \n headers: { \n 'X-API-Key': 'your_api_key_here', \n 'Content-Type':\ \ 'application/json' \n }, \n body: JSON.stringify({ \n origin: 'BLR', \n destination: 'HYD', \n date: '2025-08-15', \n passengers:\ \ 2 \n })" collapsed_from: 2 example path(s) differing only at v2Id /webhook/register: post: operationId: post_webhook_register tags: - Webhook summary: Webhook & Callback Support x-source: https://aopay.in/bus-api responses: '201': description: Success (status as documented) x-evidence: kind: documentation /whitelabel/configure: post: operationId: post_whitelabel_configure tags: - Whitelabel summary: POST /whitelabel/configure x-source: https://aopay.in/bus-api responses: '201': description: Success (status as documented) x-evidence: kind: documentation components: schemas: PostApiV1WalletWalletidRequest: type: object properties: user_id: type: string currency: type: string wallet_type: type: string initial_balance: type: number required: - user_id - currency - wallet_type - initial_balance GetApiV1WalletWalletidBalanceResponse: type: object properties: balance: type: number description: Current wallet balance transaction_history: type: array description: List of recent transactions PostApiV1V1IdCreateRequest: type: object properties: customer_id: type: string deposit_amount: type: string tenure_months: type: string interest_rate: type: string deposit_type: type: string maturity_instruction: type: string nominee_details: type: string required: - customer_id - deposit_amount - tenure_months - interest_rate - deposit_type - maturity_instruction PostApiV1V1IdCreateResponse: type: object properties: fd_id: type: string certificate_number: type: string maturity_date: type: string maturity_amount: type: string status: type: string created_at: type: string PostV1HotelSearchRequest: type: object properties: destination: type: string description: Destination name, e.g., "Goa, India" checkIn: type: string description: Check‑in date in YYYY‑MM‑DD format checkOut: type: string description: Check‑out date in YYYY‑MM‑DD format rooms: type: integer description: Number of rooms adults: type: integer description: Number of adult guests starRating: type: array description: Array of desired star ratings, e.g., [4,5] currency: type: string description: Currency code for pricing, e.g., "INR" required: - destination - checkIn - checkOut - rooms - adults PostV1HotelSearchResponse: type: object properties: totalResults: type: integer description: Total number of properties found lowestRate: type: string description: Lowest rate string, e.g., "₹4,200 / night" gdsConnected: type: boolean description: Indicates if GDS connectivity is available PostV2V2IdSearchRequest: type: object properties: origin: type: string destination: type: string date: type: string format: date passengers: type: integer PostV2V2IdSearchResponse: type: object properties: status: type: string buses: type: integer operators: type: array items: type: string seats_available: type: integer lowest_fare: type: string securitySchemes: apiKey: type: apiKey in: header name: X-API-Key security: - apiKey: [] tags: - name: Ancillaries - name: Api - name: Bookings - name: Brand - name: Bus - name: Flights - name: Hotel - name: Payment - name: Reports - name: Search - name: Seats - name: Tickets - name: Trains - name: Webhook - name: Whitelabel