{
  "openapi": "3.0.1",
  "info": {
    "title": "Ryanair Fare Finder",
    "description": "Find Ryanair fares by city, flexible dates, total price, route airports, booking link, and monthly fare deal signal.",
    "version": "0.1",
    "x-build-id": "mlecKvFjNDhPupCBD"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/trovevault~ryanair-fare-finder/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-trovevault-ryanair-fare-finder",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/trovevault~ryanair-fare-finder/runs": {
      "post": {
        "operationId": "runs-sync-trovevault-ryanair-fare-finder",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/trovevault~ryanair-fare-finder/run-sync": {
      "post": {
        "operationId": "run-sync-trovevault-ryanair-fare-finder",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "required": [
          "originCity",
          "destinationCity",
          "departureDate"
        ],
        "properties": {
          "originCity": {
            "title": "Origin City",
            "enum": [
              "Aarhus, Denmark",
              "Aberdeen, United Kingdom",
              "Agadir, Morocco",
              "Alghero, Italy",
              "Alicante, Spain",
              "Almeria, Spain",
              "Amman, Jordan",
              "Amsterdam, Netherlands",
              "Ancona, Italy",
              "Athens, Greece",
              "Banja Luka, Bosnia & Herzegovina",
              "Barcelona, Spain",
              "Bari, Italy",
              "Basel, Switzerland",
              "Belfast, United Kingdom",
              "Beni Mellal, Morocco",
              "Bergamo, Italy",
              "Bergerac, France",
              "Berlin, Germany",
              "Beziers, France",
              "Biarritz, France",
              "Birmingham, United Kingdom",
              "Bodrum, Turkey",
              "Bologna, Italy",
              "Bournemouth, United Kingdom",
              "Bratislava, Slovakia",
              "Bremen, Germany",
              "Brindisi, Italy",
              "Bristol, United Kingdom",
              "Brive, France",
              "Brno, Czech Republic",
              "Brussels, Belgium",
              "Bucharest, Romania",
              "Budapest, Hungary",
              "Burgas, Bulgaria",
              "Bydgoszcz, Poland",
              "Cagliari, Italy",
              "Carcassonne, France",
              "Cardiff, United Kingdom",
              "Castellon, Spain",
              "Catania, Italy",
              "Chania, Greece",
              "Charleroi, Belgium",
              "Cluj, Romania",
              "Cologne, Germany",
              "Copenhagen, Denmark",
              "Corfu, Greece",
              "Cork, Ireland",
              "Crotone, Italy",
              "Cuneo, Italy",
              "Dakhla, Morocco",
              "Dalaman, Turkey",
              "Derry, United Kingdom",
              "Dole, France",
              "Dublin, Ireland",
              "Dubrovnik, Croatia",
              "Dusseldorf, Germany",
              "East Midlands, United Kingdom",
              "Edinburgh, United Kingdom",
              "Eindhoven, Netherlands",
              "Errachidia, Morocco",
              "Essaouira, Morocco",
              "Exeter, United Kingdom",
              "Faro, Portugal",
              "Fez, Morocco",
              "Figari, France",
              "Frankfurt, Germany",
              "Friedrichshafen, Germany",
              "Fuerteventura, Spain",
              "Funchal, Portugal",
              "Gdansk, Poland",
              "Genoa, Italy",
              "Girona, Spain",
              "Glasgow, United Kingdom",
              "Gothenburg, Sweden",
              "Gran Canaria, Spain",
              "Grenoble, France",
              "Hamburg, Germany",
              "Helsinki, Finland",
              "Heraklion, Greece",
              "IASI, Romania",
              "Ibiza, Spain",
              "Kalamata, Greece",
              "Karlsruhe, Germany",
              "Katowice, Poland",
              "Kaunas, Lithuania",
              "Kefalonia, Greece",
              "Kerry, Ireland",
              "Klagenfurt, Austria",
              "Knock, Ireland",
              "Kos, Greece",
              "Kosice, Slovakia",
              "Krakow, Poland",
              "La Rochelle, France",
              "Lamezia, Italy",
              "Lanzarote, Spain",
              "Larnaca, Cyprus",
              "Leeds, United Kingdom",
              "Lemnos, Greece",
              "Lille, France",
              "Limoges, France",
              "Linz, Austria",
              "Lisbon, Portugal",
              "Liverpool, United Kingdom",
              "Lodz, Poland",
              "London, United Kingdom",
              "Lourdes, France",
              "Lublin, Poland",
              "Luxembourg, Luxembourg",
              "Madrid, Spain",
              "Malaga, Spain",
              "Malmo, Sweden",
              "Malta, Malta",
              "Manchester, United Kingdom",
              "Marrakesh, Morocco",
              "Marseille, France",
              "Memmingen, Germany",
              "Menorca, Spain",
              "Milan, Italy",
              "Münster, Germany",
              "Murcia, Spain",
              "Mykonos, Greece",
              "Nador, Morocco",
              "Nantes, France",
              "Naples, Italy",
              "Newcastle, United Kingdom",
              "Newquay, United Kingdom",
              "Nice, France",
              "Nimes, France",
              "Nis, Serbia",
              "Norwich, United Kingdom",
              "Nuremberg, Germany",
              "Olbia, Italy",
              "Olsztyn, Poland",
              "Osijek, Croatia",
              "Oslo, Norway",
              "Ostrava, Czech Republic",
              "Ouarzazate, Morocco",
              "Oujda, Morocco",
              "Paderborn, Germany",
              "Palanga, Lithuania",
              "Palermo, Italy",
              "Palma, Spain",
              "Paphos, Cyprus",
              "Pardubice, Czech Republic",
              "Paris, France",
              "Parma, Italy",
              "Perpignan, France",
              "Perugia, Italy",
              "Pescara, Italy",
              "Pisa, Italy",
              "Plovdiv, Bulgaria",
              "Podgorica, Montenegro",
              "Poitiers, France",
              "Porto, Portugal",
              "Poznan, Poland",
              "Prague, Czech Republic",
              "Preveza, Greece",
              "Pula, Croatia",
              "Rabat, Morocco",
              "Reggio Calabria, Italy",
              "Reus, Spain",
              "Rhodes, Greece",
              "Riga, Latvia",
              "Rijeka, Croatia",
              "Rimini, Italy",
              "Rodez, France",
              "Rome, Italy",
              "Rovaniemi, Finland",
              "Rzeszow, Poland",
              "Saarbrücken, Germany",
              "Salerno , Italy",
              "Salzburg, Austria",
              "Sandefjord, Norway",
              "Santander, Spain",
              "Santiago, Spain",
              "Santorini, Greece",
              "Sarajevo, Bosnia & Herzegovina",
              "Seville, Spain",
              "Shannon, Ireland",
              "Skelleftea, Sweden",
              "Skiathos, Greece",
              "Sofia, Bulgaria",
              "Split, Croatia",
              "Stockholm, Sweden",
              "Szczecin, Poland",
              "Tallinn, Estonia",
              "Tangier, Morocco",
              "Tenerife, Spain",
              "Tétouan, Morocco",
              "Thessaloniki, Greece",
              "Tirana, Albania",
              "Toulouse, France",
              "Tours, France",
              "Trapani, Italy",
              "Trieste, Italy",
              "Turin, Italy",
              "Valencia, Spain",
              "Varna, Bulgaria",
              "Växjö, Sweden",
              "Venice, Italy",
              "Verona, Italy",
              "Vienna, Austria",
              "Vilnius, Lithuania",
              "Vitoria-Gasteiz, Spain",
              "Volos, Greece",
              "Warsaw, Poland",
              "Wroclaw, Poland",
              "Zadar, Croatia",
              "Zagreb, Croatia",
              "Zakynthos, Greece",
              "Zaragoza, Spain"
            ],
            "type": "string",
            "description": "Ryanair city to depart from. The dropdown is generated from currently active Ryanair airport cities (212 cities).",
            "default": "Lisbon, Portugal"
          },
          "destinationCity": {
            "title": "Destination City",
            "enum": [
              "Aarhus, Denmark",
              "Aberdeen, United Kingdom",
              "Agadir, Morocco",
              "Alghero, Italy",
              "Alicante, Spain",
              "Almeria, Spain",
              "Amman, Jordan",
              "Amsterdam, Netherlands",
              "Ancona, Italy",
              "Athens, Greece",
              "Banja Luka, Bosnia & Herzegovina",
              "Barcelona, Spain",
              "Bari, Italy",
              "Basel, Switzerland",
              "Belfast, United Kingdom",
              "Beni Mellal, Morocco",
              "Bergamo, Italy",
              "Bergerac, France",
              "Berlin, Germany",
              "Beziers, France",
              "Biarritz, France",
              "Birmingham, United Kingdom",
              "Bodrum, Turkey",
              "Bologna, Italy",
              "Bournemouth, United Kingdom",
              "Bratislava, Slovakia",
              "Bremen, Germany",
              "Brindisi, Italy",
              "Bristol, United Kingdom",
              "Brive, France",
              "Brno, Czech Republic",
              "Brussels, Belgium",
              "Bucharest, Romania",
              "Budapest, Hungary",
              "Burgas, Bulgaria",
              "Bydgoszcz, Poland",
              "Cagliari, Italy",
              "Carcassonne, France",
              "Cardiff, United Kingdom",
              "Castellon, Spain",
              "Catania, Italy",
              "Chania, Greece",
              "Charleroi, Belgium",
              "Cluj, Romania",
              "Cologne, Germany",
              "Copenhagen, Denmark",
              "Corfu, Greece",
              "Cork, Ireland",
              "Crotone, Italy",
              "Cuneo, Italy",
              "Dakhla, Morocco",
              "Dalaman, Turkey",
              "Derry, United Kingdom",
              "Dole, France",
              "Dublin, Ireland",
              "Dubrovnik, Croatia",
              "Dusseldorf, Germany",
              "East Midlands, United Kingdom",
              "Edinburgh, United Kingdom",
              "Eindhoven, Netherlands",
              "Errachidia, Morocco",
              "Essaouira, Morocco",
              "Exeter, United Kingdom",
              "Faro, Portugal",
              "Fez, Morocco",
              "Figari, France",
              "Frankfurt, Germany",
              "Friedrichshafen, Germany",
              "Fuerteventura, Spain",
              "Funchal, Portugal",
              "Gdansk, Poland",
              "Genoa, Italy",
              "Girona, Spain",
              "Glasgow, United Kingdom",
              "Gothenburg, Sweden",
              "Gran Canaria, Spain",
              "Grenoble, France",
              "Hamburg, Germany",
              "Helsinki, Finland",
              "Heraklion, Greece",
              "IASI, Romania",
              "Ibiza, Spain",
              "Kalamata, Greece",
              "Karlsruhe, Germany",
              "Katowice, Poland",
              "Kaunas, Lithuania",
              "Kefalonia, Greece",
              "Kerry, Ireland",
              "Klagenfurt, Austria",
              "Knock, Ireland",
              "Kos, Greece",
              "Kosice, Slovakia",
              "Krakow, Poland",
              "La Rochelle, France",
              "Lamezia, Italy",
              "Lanzarote, Spain",
              "Larnaca, Cyprus",
              "Leeds, United Kingdom",
              "Lemnos, Greece",
              "Lille, France",
              "Limoges, France",
              "Linz, Austria",
              "Lisbon, Portugal",
              "Liverpool, United Kingdom",
              "Lodz, Poland",
              "London, United Kingdom",
              "Lourdes, France",
              "Lublin, Poland",
              "Luxembourg, Luxembourg",
              "Madrid, Spain",
              "Malaga, Spain",
              "Malmo, Sweden",
              "Malta, Malta",
              "Manchester, United Kingdom",
              "Marrakesh, Morocco",
              "Marseille, France",
              "Memmingen, Germany",
              "Menorca, Spain",
              "Milan, Italy",
              "Münster, Germany",
              "Murcia, Spain",
              "Mykonos, Greece",
              "Nador, Morocco",
              "Nantes, France",
              "Naples, Italy",
              "Newcastle, United Kingdom",
              "Newquay, United Kingdom",
              "Nice, France",
              "Nimes, France",
              "Nis, Serbia",
              "Norwich, United Kingdom",
              "Nuremberg, Germany",
              "Olbia, Italy",
              "Olsztyn, Poland",
              "Osijek, Croatia",
              "Oslo, Norway",
              "Ostrava, Czech Republic",
              "Ouarzazate, Morocco",
              "Oujda, Morocco",
              "Paderborn, Germany",
              "Palanga, Lithuania",
              "Palermo, Italy",
              "Palma, Spain",
              "Paphos, Cyprus",
              "Pardubice, Czech Republic",
              "Paris, France",
              "Parma, Italy",
              "Perpignan, France",
              "Perugia, Italy",
              "Pescara, Italy",
              "Pisa, Italy",
              "Plovdiv, Bulgaria",
              "Podgorica, Montenegro",
              "Poitiers, France",
              "Porto, Portugal",
              "Poznan, Poland",
              "Prague, Czech Republic",
              "Preveza, Greece",
              "Pula, Croatia",
              "Rabat, Morocco",
              "Reggio Calabria, Italy",
              "Reus, Spain",
              "Rhodes, Greece",
              "Riga, Latvia",
              "Rijeka, Croatia",
              "Rimini, Italy",
              "Rodez, France",
              "Rome, Italy",
              "Rovaniemi, Finland",
              "Rzeszow, Poland",
              "Saarbrücken, Germany",
              "Salerno , Italy",
              "Salzburg, Austria",
              "Sandefjord, Norway",
              "Santander, Spain",
              "Santiago, Spain",
              "Santorini, Greece",
              "Sarajevo, Bosnia & Herzegovina",
              "Seville, Spain",
              "Shannon, Ireland",
              "Skelleftea, Sweden",
              "Skiathos, Greece",
              "Sofia, Bulgaria",
              "Split, Croatia",
              "Stockholm, Sweden",
              "Szczecin, Poland",
              "Tallinn, Estonia",
              "Tangier, Morocco",
              "Tenerife, Spain",
              "Tétouan, Morocco",
              "Thessaloniki, Greece",
              "Tirana, Albania",
              "Toulouse, France",
              "Tours, France",
              "Trapani, Italy",
              "Trieste, Italy",
              "Turin, Italy",
              "Valencia, Spain",
              "Varna, Bulgaria",
              "Växjö, Sweden",
              "Venice, Italy",
              "Verona, Italy",
              "Vienna, Austria",
              "Vilnius, Lithuania",
              "Vitoria-Gasteiz, Spain",
              "Volos, Greece",
              "Warsaw, Poland",
              "Wroclaw, Poland",
              "Zadar, Croatia",
              "Zagreb, Croatia",
              "Zakynthos, Greece",
              "Zaragoza, Spain"
            ],
            "type": "string",
            "description": "Ryanair destination city. The dropdown is generated from currently active Ryanair airport cities (212 cities). The actor checks whether a direct Ryanair route exists from the selected origin.",
            "default": "London, United Kingdom"
          },
          "departureDate": {
            "title": "Departure Date",
            "type": "string",
            "description": "Preferred outbound date in YYYY-MM-DD format. If the default date becomes past, the actor automatically uses a future test date.",
            "default": "2026-09-12"
          },
          "returnDate": {
            "title": "Return Date (optional)",
            "type": "string",
            "description": "Optional return date in YYYY-MM-DD format. Leave blank for one-way fare results.",
            "default": ""
          },
          "passengers": {
            "title": "Passengers",
            "minimum": 1,
            "maximum": 9,
            "type": "integer",
            "description": "Number of adult passengers used to calculate total fare from the per-passenger Ryanair fare shown in the calendar.",
            "default": 1
          },
          "dateFlexibilityDays": {
            "title": "Date Flexibility",
            "minimum": 0,
            "maximum": 15,
            "type": "integer",
            "description": "Number of days before and after the selected dates to compare. Larger windows can reveal cheaper nearby dates but produce more combinations.",
            "default": 1
          },
          "currency": {
            "title": "Currency",
            "enum": [
              "EUR",
              "GBP",
              "USD",
              "PLN",
              "CZK",
              "HUF",
              "SEK",
              "DKK",
              "NOK",
              "CHF"
            ],
            "type": "string",
            "description": "Currency code for returned Ryanair fares.",
            "default": "EUR"
          },
          "maxResults": {
            "title": "Max Results",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "Maximum fare options to return after sorting by total price and date proximity.",
            "default": 2
          },
          "datasetId": {
            "title": "Dataset ID (optional)",
            "type": "string",
            "description": "Optional Apify dataset ID to append the same results to, in addition to the default dataset."
          },
          "runId": {
            "title": "Run ID (optional)",
            "type": "string",
            "description": "Optional workflow identifier copied into output rows when provided."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}