{
  "openapi": "3.0.1",
  "info": {
    "title": "WayUp Scraper: US Intern & Entry-Level Jobs",
    "description": "Extract student, intern, and early-career jobs from WayUp.com. Returns title, company, logo, location (city/state/zip), salary, employment type (internship/full-time/part-time), workplace type (remote/hybrid/onsite), degree, industry, description, apply URL, posted date. Pay-per-result.",
    "version": "1.7",
    "x-build-id": "3qC9CDnpWMuMnabbT"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/santamaria-automations~wayup-us-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-santamaria-automations-wayup-us-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/santamaria-automations~wayup-us-scraper/runs": {
      "post": {
        "operationId": "runs-sync-santamaria-automations-wayup-us-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/santamaria-automations~wayup-us-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-santamaria-automations-wayup-us-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": {
          "searchQueries": {
            "title": "Search Queries",
            "type": "array",
            "description": "One or more keywords. Each is matched against the job title (case-insensitive, all words must appear). A job matching several queries is returned once, tagged with the first matching query in `search_query`. Example: [\"marketing\", \"software engineer\", \"finance\"]. Leave empty to return the newest jobs with no keyword filter.",
            "items": {
              "type": "string"
            }
          },
          "maxResultsPerQuery": {
            "title": "Max Results Per Query",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum jobs returned for each search query, so one broad query cannot starve the others. If Max Results is not set, the total is this value times the number of queries."
          },
          "startUrls": {
            "title": "WayUp URLs (listing, category, or campus page)",
            "type": "array",
            "description": "Paste one or more WayUp URLs. Supported patterns:\n• Job detail page — https://www.wayup.com/i-{Industry}-j-{Title}-{Company}-{ID}/\n• Entry-level category — https://www.wayup.com/s/entry-level-jobs/{category}/ (e.g. /s/entry-level-jobs/accounting/)\n• Part-time category — https://www.wayup.com/s/part-time-jobs/{category}/ (e.g. /s/part-time-jobs/biology/)\n• Campus / university page — https://www.wayup.com/s/campuses/{university-slug}/ (e.g. /s/campuses/harvard-university/)\nLeave empty to auto-discover jobs via the sitemap.",
            "items": {
              "type": "string"
            }
          },
          "keywordFilter": {
            "title": "Keyword Filter (single keyword)",
            "type": "string",
            "description": "Backwards-compatible single keyword. Used only when Search Queries is empty, as if it were the only search query. Case-insensitive title match. Example: 'marketing'."
          },
          "locationFilter": {
            "title": "Location Filter",
            "type": "string",
            "description": "Only keep jobs whose location matches this text (city name or state code). Case-insensitive. Applied client-side to sitemap results. Example: 'New York, NY', 'Chicago', 'CA'."
          },
          "sortBy": {
            "title": "Sort By",
            "enum": [
              "newest",
              "relevance"
            ],
            "type": "string",
            "description": "Order in which results are returned. newest: jobs with the most recent posted_at_datetime first (sorted by the posted date parsed from each job page; older or expired listings are skipped, see Posted Within Days). relevance: WayUp's default sitemap order, no reordering.",
            "default": "newest"
          },
          "postedWithinDays": {
            "title": "Posted Within Days",
            "minimum": 1,
            "maximum": 3650,
            "type": "integer",
            "description": "With Sort By = newest, only return jobs posted within this many days and skip expired listings. Leave at 30 for fresh jobs; raise it (e.g. 3650) to include older listings. Ignored when Sort By = relevance.",
            "default": 30
          },
          "employmentTypeFilter": {
            "title": "Employment Type Filter",
            "enum": [
              "any",
              "internship",
              "entry_level",
              "part_time",
              "campus_rep"
            ],
            "type": "string",
            "description": "Only keep jobs of this employment type. Applied to WayUp's own jobListingType field.",
            "default": "any"
          },
          "includeJobDetails": {
            "title": "Include full job details",
            "type": "boolean",
            "description": "Fetch each job's detail page for the full description, structured salary, employment type, closing date, and any additional PDP-only fields. Otherwise only SERP-visible fields are returned.",
            "default": false
          },
          "maxResults": {
            "title": "Max Results",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum total number of jobs to scrape and charge for. Leave empty to use Max Results Per Query times the number of queries (5 when no queries are given)."
          },
          "maxConcurrency": {
            "title": "Max Concurrency",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Maximum number of concurrent detail-page fetches. Higher = faster but more likely to hit rate limits.",
            "default": 5
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}