{
  "openapi": "3.0.1",
  "info": {
    "title": "India Jobs Scraper - Shine, Hirist, Internshala & 3 more",
    "description": "Search 6 Indian job boards at once (Shine, Hirist, iimjobs, Internshala, Cutshort, Unstop). Get jobs and internships with salary, experience, skills, location and posted date in one clean format, with duplicates merged and a monitoring mode for new jobs only.",
    "version": "1.0",
    "x-build-id": "ndsTEsurcGoILHajJ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/upendra_11~india-jobs-aggregator/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-upendra_11-india-jobs-aggregator",
        "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/upendra_11~india-jobs-aggregator/runs": {
      "post": {
        "operationId": "runs-sync-upendra_11-india-jobs-aggregator",
        "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/upendra_11~india-jobs-aggregator/run-sync": {
      "post": {
        "operationId": "run-sync-upendra_11-india-jobs-aggregator",
        "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": [
          "keywords"
        ],
        "properties": {
          "keywords": {
            "title": "Job keywords",
            "type": "array",
            "description": "What to search for, one per line: job titles or skills, e.g. 'python developer', 'data analyst', 'digital marketing', 'accountant'. Each keyword is searched on every selected board.",
            "default": [
              "python developer"
            ],
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Optional cities, e.g. 'Bangalore', 'Pune', 'Delhi NCR', 'Mumbai'. Common spellings are understood (Bengaluru = Bangalore, Gurugram = Gurgaon). Use 'remote' for work-from-home jobs. Leave empty for all of India.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sources": {
            "title": "Job boards",
            "type": "array",
            "description": "Which job boards to search. All are selected by default.",
            "items": {
              "type": "string",
              "enum": [
                "shine",
                "hirist",
                "iimjobs",
                "internshala",
                "cutshort",
                "unstop"
              ],
              "enumTitles": [
                "Shine.com",
                "Hirist (tech jobs)",
                "iimjobs (management & business)",
                "Internshala",
                "Cutshort (startups)",
                "Unstop"
              ]
            },
            "default": [
              "shine",
              "hirist",
              "iimjobs",
              "internshala",
              "cutshort",
              "unstop"
            ]
          },
          "jobTypes": {
            "title": "Job types",
            "type": "array",
            "description": "Full-time jobs, internships, or both. Internships come from Internshala and Unstop.",
            "items": {
              "type": "string",
              "enum": [
                "jobs",
                "internships"
              ],
              "enumTitles": [
                "Jobs",
                "Internships"
              ]
            },
            "default": [
              "jobs"
            ]
          },
          "maxResultsPerSource": {
            "title": "Max results per board (per keyword)",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Maximum jobs collected from each board for each keyword/location. Cutshort shows at most 50 per search.",
            "default": 50
          },
          "postedWithinDays": {
            "title": "Posted within (days)",
            "minimum": 0,
            "type": "integer",
            "description": "Only jobs posted in the last N days (where the board shows a date). 0 = any date.",
            "default": 0
          },
          "maxExperienceYears": {
            "title": "Max required experience (years)",
            "minimum": 0,
            "type": "integer",
            "description": "Skip jobs whose minimum required experience is above this. Use 0 for fresher jobs only. Leave empty for no limit."
          },
          "deduplicate": {
            "title": "Merge duplicates across boards",
            "type": "boolean",
            "description": "When the same role at the same company appears on several boards, return it once and list the other boards in 'alsoListedOn'.",
            "default": true
          },
          "strictKeywordMatch": {
            "title": "Strict keyword match",
            "type": "boolean",
            "description": "Keep only jobs whose title, skills or description contain your keyword's main terms (e.g. 'python' for 'python developer'). Removes loosely related results some boards return.",
            "default": true
          },
          "includeDescription": {
            "title": "Include short description",
            "type": "boolean",
            "description": "Add a short description snippet (up to 500 characters) where the board provides one.",
            "default": false
          },
          "onlyNewSinceLastRun": {
            "title": "Only new since last run (monitoring)",
            "type": "boolean",
            "description": "Monitoring mode: return only jobs this Actor has not returned before in your account. Perfect for scheduled daily runs feeding job alerts, Slack, Telegram, Google Sheets or a database.",
            "default": false
          },
          "monitorName": {
            "title": "Monitor name",
            "type": "string",
            "description": "Use a different name for each separate monitor (e.g. 'python-bangalore', 'marketing-remote') so they track seen jobs independently.",
            "default": "default"
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}