{
  "openapi": "3.0.1",
  "info": {
    "title": "Ziprecruiter Ireland Scraper | $2 / 1k | Fast & Reliable",
    "description": "Extract structured ZipRecruiter.ie job listings with companies, locations, compensation ranges, employment types, and full descriptions. Built for hiring intelligence, labor-market research, and automated recruiting or analytics pipelines.",
    "version": "0.0",
    "x-build-id": "7dQp1LXDM7bpvAix5"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/fatihtahta~ziprecruiter-ireland-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-fatihtahta-ziprecruiter-ireland-scraper",
        "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/fatihtahta~ziprecruiter-ireland-scraper/runs": {
      "post": {
        "operationId": "runs-sync-fatihtahta-ziprecruiter-ireland-scraper",
        "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/fatihtahta~ziprecruiter-ireland-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-fatihtahta-ziprecruiter-ireland-scraper",
        "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",
        "properties": {
          "startUrls": {
            "title": "Start URLs (search result pages and individual job pages)",
            "type": "array",
            "description": "Paste one or more ZipRecruiter Ireland URLs to scrape directly. Supported page types are search result pages and individual job pages, and you can mix both in the same run. Use this when you already know which pages you want to collect and want precise control over the scope of the run.",
            "items": {
              "type": "string"
            }
          },
          "use_query_builder": {
            "title": "Enable query builder",
            "type": "boolean",
            "description": "When enabled, the actor uses the query-builder inputs below to generate ZipRecruiter Ireland search result pages automatically. When disabled, those query-builder inputs are ignored, while unrelated inputs such as start URLs, posted-date filtering for search URLs, and limits still work normally.",
            "default": false
          },
          "queries": {
            "title": "Filter by job titles or keywords",
            "type": "array",
            "description": "Enter one or more job titles or hiring keywords to search on ZipRecruiter Ireland, such as role names, specialties, or seniority-based terms. Used only when Enable query builder is turned on. Each keyword is combined with the optional location, radius, on-site, sort, and posted-date settings below to build a search automatically.",
            "items": {
              "type": "string"
            }
          },
          "location": {
            "title": "Filter by location",
            "type": "string",
            "description": "Optional location to apply to query-based searches. Used only when Enable query builder is turned on. Enter a city, county, or location string such as Dublin or Cork, Ireland when you want results focused on a specific area."
          },
          "radius": {
            "title": "Filter by distance",
            "enum": [
              "5",
              "10",
              "20",
              "50",
              "100",
              "any"
            ],
            "type": "string",
            "description": "Optional search radius around the location entered above. Used only when Enable query builder is turned on. Choose a smaller radius for tighter local coverage or a larger radius to include more nearby job listings.",
            "default": "any"
          },
          "onSiteOnly": {
            "title": "Filter by on-site only",
            "type": "boolean",
            "description": "When enabled, query-based searches focus on on-site roles only. Used only when Enable query builder is turned on. Use this when you want generated searches to exclude remote or more flexible job options.",
            "default": false
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "best_match_first",
              "newest_first"
            ],
            "type": "string",
            "description": "Choose how generated search result pages should be ordered. Used only when Enable query builder is turned on. Use Best Match for broader discovery, or Newest First when you want the latest postings to appear first.",
            "default": "best_match_first"
          },
          "days": {
            "title": "Filter by posted date",
            "enum": [
              "",
              "30",
              "10",
              "5",
              "1",
              "0"
            ],
            "type": "string",
            "description": "Optional posted-date filter for search results. Use this to focus on recent job listings, whether you start from ZipRecruiter Ireland search URLs or build searches from keywords. When query builder is disabled, this field still applies to direct search URLs but does not build new query-based searches on its own. Posted-date filtering uses GMT 0.",
            "default": ""
          },
          "limit": {
            "title": "Maximum listings to save (per query)",
            "minimum": 10,
            "type": "integer",
            "description": "Stop the run after this many listings have been saved for each query or URL input. Use a smaller number for quick sampling, testing, or spot checks, and a larger number when you want deeper coverage for monitoring, analytics, benchmarking, or export workflows.",
            "default": 50000
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}