{
  "openapi": "3.0.1",
  "info": {
    "title": "Remote Jobs Feed: Remote Jobs from 40,000+ Company Career Sites",
    "description": "Remote jobs straight from company career sites (Greenhouse, Lever, Ashby, Workday, ADP and 13 more), refreshed daily. Filter by where you may work from (anywhere, Europe, US, a country), title, salary, date. Shows if a job is open worldwide, to regions or countries. Only new jobs since the last run.",
    "version": "0.1",
    "x-build-id": "aQPEZWTAgusvVis2H"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/tidelane~remote-jobs-feed/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-tidelane-remote-jobs-feed",
        "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/tidelane~remote-jobs-feed/runs": {
      "post": {
        "operationId": "runs-sync-tidelane-remote-jobs-feed",
        "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/tidelane~remote-jobs-feed/run-sync": {
      "post": {
        "operationId": "run-sync-tidelane-remote-jobs-feed",
        "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": {
          "titleKeywords": {
            "title": "Title keywords (any)",
            "type": "array",
            "description": "Keep jobs whose title contains at least one of these words. A word matches at the start of a word, so engineer also finds Engineering. Case and accents are ignored. Leave empty for all titles.",
            "items": {
              "type": "string"
            }
          },
          "titleExcludeKeywords": {
            "title": "Exclude title keywords",
            "type": "array",
            "description": "Drop jobs whose title contains any of these words, e.g. intern, senior, manager.",
            "items": {
              "type": "string"
            }
          },
          "remoteFrom": {
            "title": "Where you may work from (any)",
            "type": "array",
            "description": "Keep remote jobs open to people in at least one of these places. Use regions (Anywhere, Europe, EMEA, North America, Americas, LATAM, APAC, Middle East, Africa) or countries (Germany, DE, United States). Jobs open worldwide always match; a job for Remote (Europe) matches Germany. Leave empty for all remote jobs.",
            "items": {
              "type": "string"
            }
          },
          "includeUnspecifiedRemote": {
            "title": "Also jobs that just say Remote",
            "type": "boolean",
            "description": "Some jobs only say Remote without a country or region. They are often limited to the company's home country. Turn this on to get them too when you set Where you may work from.",
            "default": false
          },
          "includeHybrid": {
            "title": "Also hybrid jobs",
            "type": "boolean",
            "description": "Add hybrid jobs (some days in an office) in the places above.",
            "default": false
          },
          "companies": {
            "title": "Company names (any)",
            "type": "array",
            "description": "Keep jobs of companies whose name or board slug contains one of these texts.",
            "items": {
              "type": "string"
            }
          },
          "ats": {
            "title": "Job board systems",
            "type": "array",
            "description": "Limit to some systems. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "greenhouse",
                "lever",
                "ashby",
                "workday",
                "workable",
                "smartrecruiters",
                "recruitee",
                "personio",
                "bamboohr",
                "rippling",
                "oracle",
                "teamtailor",
                "pinpoint",
                "breezy",
                "dvinci",
                "adp",
                "paylocity",
                "jobvite"
              ],
              "enumTitles": [
                "Greenhouse",
                "Lever",
                "Ashby",
                "Workday",
                "Workable",
                "SmartRecruiters",
                "Recruitee",
                "Personio",
                "BambooHR",
                "Rippling",
                "Oracle Recruiting Cloud",
                "Teamtailor",
                "Pinpoint",
                "Breezy HR",
                "d.vinci",
                "ADP Workforce Now",
                "Paylocity",
                "Jobvite"
              ]
            }
          },
          "postedWithinDays": {
            "title": "Posted within the last N days",
            "minimum": 0,
            "type": "integer",
            "description": "Keep jobs posted in the last N days. Jobs without a posting date count from the day the feed first saw them. 0 means no date filter.",
            "default": 0
          },
          "newInFeedWithinHours": {
            "title": "New in the feed within N hours",
            "minimum": 0,
            "type": "integer",
            "description": "Keep jobs the feed first saw in the last N hours, e.g. 24 for jobs that appeared since yesterday. 0 means no filter.",
            "default": 0
          },
          "salaryOnly": {
            "title": "Only jobs with a salary",
            "type": "boolean",
            "description": "Keep only jobs that publish a salary range.",
            "default": false
          },
          "seniority": {
            "title": "Seniority",
            "type": "array",
            "description": "Keep jobs of these levels. The level comes from the job title (e.g. Senior, Junior, Head of, Werkstudent) or, without a title word, from the years of experience the ad asks for.",
            "items": {
              "type": "string",
              "enum": [
                "intern",
                "apprentice",
                "entry",
                "mid",
                "senior",
                "lead",
                "manager",
                "director",
                "executive"
              ],
              "enumTitles": [
                "Intern / working student",
                "Apprentice / Ausbildung",
                "Entry level / junior",
                "Mid level",
                "Senior",
                "Lead / principal / staff",
                "Manager (people)",
                "Director / head of / VP",
                "Executive (C-level)"
              ]
            }
          },
          "skills": {
            "title": "Skills (any)",
            "type": "array",
            "description": "Keep jobs that mention at least one of these skills, e.g. Python, React, SAP, Excel, AutoCAD. Matching uses our list of about 110 common tools and technologies (see the README).",
            "items": {
              "type": "string"
            }
          },
          "maxExperienceYears": {
            "title": "Max. years of experience asked",
            "minimum": 0,
            "type": "integer",
            "description": "Keep jobs that ask for at most this many years of experience, e.g. 2 for junior roles. Jobs that state no number pass. 0 means no filter."
          },
          "visaSponsorshipOnly": {
            "title": "Only jobs offering visa sponsorship",
            "type": "boolean",
            "description": "Keep only jobs whose ad says visa sponsorship or visa support is available.",
            "default": false
          },
          "languages": {
            "title": "Ad language",
            "type": "array",
            "description": "Keep jobs whose ad is written in one of these languages.",
            "items": {
              "type": "string",
              "enum": [
                "en",
                "de",
                "fr",
                "es",
                "nl",
                "it",
                "pt",
                "sv",
                "da",
                "pl"
              ],
              "enumTitles": [
                "English",
                "German",
                "French",
                "Spanish",
                "Dutch",
                "Italian",
                "Portuguese",
                "Swedish",
                "Danish",
                "Polish"
              ]
            }
          },
          "minYearlySalary": {
            "title": "Min. yearly salary",
            "minimum": 0,
            "type": "integer",
            "description": "Keep jobs whose published pay reaches at least this amount per year (hourly, daily and monthly pay is converted to a year). Combine with the currency field. 0 means no filter."
          },
          "salaryCurrency": {
            "title": "Salary currency",
            "type": "string",
            "description": "3-letter currency code for the salary filter, e.g. USD, EUR or GBP. Leave empty for any currency."
          },
          "descriptionKeywords": {
            "title": "Description keywords (any)",
            "type": "array",
            "description": "Keep jobs whose description contains at least one of these words, e.g. python, visa sponsorship. The full text is searched; each result lists the words it matched in matchedKeywords. Checked on the newest matches of the other filters (at least 5,000 or 20 times Max results).",
            "items": {
              "type": "string"
            }
          },
          "onlyNewSinceLastRun": {
            "title": "Only jobs new since my last run",
            "type": "boolean",
            "description": "Skip jobs this search already returned in an earlier run. Ideal for a daily schedule. The list of returned job IDs is kept in your own key-value store remote-job-feed-state.",
            "default": false
          },
          "stateKey": {
            "title": "Search name for 'only new'",
            "type": "string",
            "description": "Give each scheduled search its own name, so two searches do not share their list of returned jobs."
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Newest jobs first. Up to 100,000 per run.",
            "default": 100
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}