{
  "openapi": "3.0.1",
  "info": {
    "title": "We Work Remotely Jobs: Full Descriptions",
    "description": "Search We Work Remotely (WeWorkRemotely, WWR) jobs by keyword or category: title, company, job type, WWR category, posted and expiry dates, apply link, company website when listed and the full description in every row. Filter by country, date, job type and category. For job boards and newsletters.",
    "version": "0.1",
    "x-build-id": "Uhrbntnvqpm5npegE"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/deepmine~we-work-remotely-jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-deepmine-we-work-remotely-jobs-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/deepmine~we-work-remotely-jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-deepmine-we-work-remotely-jobs-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/deepmine~we-work-remotely-jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-deepmine-we-work-remotely-jobs-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": {
          "keywords": {
            "title": "🔍 Keywords",
            "type": "array",
            "description": "What to search We Work Remotely for, one keyword per line: a skill, role or tool (python, product designer, customer support). Leave the list empty for the latest jobs of every kind. You pay per job delivered.",
            "default": [
              "engineer",
              "marketing"
            ],
            "items": {
              "type": "string"
            }
          },
          "categories": {
            "title": "🗂️ Categories",
            "type": "array",
            "description": "Optional. Keep only jobs in these categories (the boards' own categories, in common words). Leave empty for every category.",
            "items": {
              "type": "string",
              "enum": [
                "Software Development",
                "Data & AI",
                "DevOps & IT",
                "Design",
                "Product",
                "Marketing",
                "Sales",
                "Customer Support",
                "Finance & Legal",
                "HR & Recruiting",
                "Writing & Content",
                "Operations",
                "Other"
              ]
            }
          },
          "country": {
            "title": "📍 Open to candidates in",
            "type": "string",
            "description": "Optional. A country you live in (United States, Germany, India, Brazil...): keeps the jobs open to its residents, including jobs open worldwide and jobs for its region (Europe, LATAM, APAC, North America). Type Worldwide for only the jobs open to anyone, anywhere. Leave empty for every job."
          },
          "postedWithinDays": {
            "title": "📅 Posted within (days)",
            "minimum": 0,
            "maximum": 3650,
            "type": "integer",
            "description": "Keep only jobs posted in the last N days; older ones cost nothing. 0 means any date. Handy for a daily or weekly scheduled run.",
            "default": 0
          },
          "maxJobsPerKeyword": {
            "title": "💯 Max jobs per keyword",
            "minimum": 0,
            "type": "integer",
            "description": "The jobs to keep per keyword: the best matches (title matches first), newest first. You pay per job, so this caps the cost per keyword. 0 means every job. Default 100.",
            "default": 100
          },
          "employmentTypes": {
            "title": "Job types",
            "type": "array",
            "description": "Optional. Keep only these job types. A job whose board doesn't give its type (and whose title doesn't say, e.g. 'Contract') is left out. Leave empty for every type.",
            "items": {
              "type": "string",
              "enum": [
                "Full-time",
                "Part-time",
                "Contract",
                "Temporary",
                "Internship"
              ]
            }
          },
          "seniority": {
            "title": "Seniority",
            "type": "array",
            "description": "Optional. Keep only these levels, read from a clear title word (Senior, Lead, Junior, Director, VP); jobs with none are left out. Leave empty for every level.",
            "items": {
              "type": "string",
              "enum": [
                "Entry-level",
                "Mid-level",
                "Senior",
                "Manager",
                "Director",
                "Executive"
              ]
            }
          },
          "minSalary": {
            "title": "Minimum salary (USD per year)",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Keep only jobs that list a US-dollar salary whose top of range is at least this per year. We Work Remotely rarely lists pay, so most jobs are left out. 0 means no salary filter.",
            "default": 0
          },
          "timezone": {
            "title": "Time zone",
            "type": "string",
            "description": "Optional UTC offset you work in, e.g. UTC-5, UTC+1, UTC+5:30. Keeps Himalayas jobs that accept it (the only board that lists time zones) and, from the other boards, only jobs open worldwide."
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Stop after this many jobs in total. You pay per job, so this caps the run's cost.",
            "default": 1000
          },
          "includeDescription": {
            "title": "Include job descriptions",
            "type": "boolean",
            "description": "The full job description as plain text. Same price either way; turn it off for smaller rows.",
            "default": true
          },
          "includeDescriptionHtml": {
            "title": "Include descriptions as HTML",
            "type": "boolean",
            "description": "Also the board's description as HTML (links and lists kept), in descriptionHtml. Same price; rows get about twice as big.",
            "default": false
          },
          "findContactEmails": {
            "title": "Find contact emails on company websites ($)",
            "type": "boolean",
            "description": "For jobs whose description gives no email, look for one on the company's own website (the one We Work Remotely lists, or one confirmed from the company's name). Charged per job that gets an email this way ($). Slower.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Apify Proxy (datacenter) by default; the boards' feeds are public, so it only spreads the requests over several IPs. Residential and SERP proxies are replaced with datacenter. Turn it off to connect directly.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}