{
  "openapi": "3.0.1",
  "info": {
    "title": "LATAM Jobs Scraper + CNPJ: Gupy, Catho, Computrabajo, OCC",
    "description": "Job postings from Gupy, InfoJobs, Catho (BR), Computrabajo (MX, CO, AR, PE, CL), Bumeran (AR, PE, MX) and OCC (MX), joined to the official company registry: tax id, legal name, size, activity, website, match confidence. Hiring-companies mode = intent signal. PT: vagas com CNPJ.",
    "version": "0.3",
    "x-build-id": "bZrgMkLJlhlS8Y9zR"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/latsouth~latam-jobs-hiring-signals/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-latsouth-latam-jobs-hiring-signals",
        "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/latsouth~latam-jobs-hiring-signals/runs": {
      "post": {
        "operationId": "runs-sync-latsouth-latam-jobs-hiring-signals",
        "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/latsouth~latam-jobs-hiring-signals/run-sync": {
      "post": {
        "operationId": "run-sync-latsouth-latam-jobs-hiring-signals",
        "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": {
          "mode": {
            "title": "Output",
            "enum": [
              "jobs",
              "hiring_companies"
            ],
            "type": "string",
            "description": "`jobs`: each posting with the hiring company's registry record. `hiring_companies`: postings grouped by company (number of open jobs, areas, seniority, locations, latest posting) = hiring-intent signal.",
            "default": "jobs"
          },
          "keywords": {
            "title": "Keywords (job title search)",
            "type": "array",
            "description": "One search per keyword (Gupy searches job titles), results deduplicated. Empty = newest postings of the whole board.",
            "items": {
              "type": "string"
            }
          },
          "sources": {
            "title": "Job boards",
            "type": "array",
            "description": "Gupy: Brazil's largest ATS portal (~80k open postings), with the company's declared website (registry match by domain). Computrabajo: Mexico, Colombia, Argentina, Peru, Chile (registry match by exact name). InfoJobs Brazil (the company page's declared website, registry match by domain, else by name). Catho Brazil (registry match by exact name). OCC Mundial Mexico (registry match by exact name). Bumeran: Argentina, Peru, Mexico (registry match by exact name). No keyword = newest postings of every board.",
            "items": {
              "type": "string",
              "enum": [
                "gupy",
                "computrabajo_mx",
                "computrabajo_co",
                "computrabajo_ar",
                "computrabajo_pe",
                "computrabajo_cl",
                "infojobs",
                "catho",
                "occ",
                "bumeran_ar",
                "bumeran_pe",
                "bumeran_mx"
              ],
              "enumTitles": [
                "Gupy (Brazil)",
                "Computrabajo Mexico",
                "Computrabajo Colombia",
                "Computrabajo Argentina",
                "Computrabajo Peru",
                "Computrabajo Chile",
                "InfoJobs (Brazil)",
                "Catho (Brazil)",
                "OCC Mundial (Mexico)",
                "Bumeran Argentina",
                "Bumeran Peru",
                "Bumeran Mexico"
              ]
            },
            "default": [
              "gupy"
            ]
          },
          "workplace_types": {
            "title": "Workplace type",
            "type": "array",
            "description": "Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "remote",
                "hybrid",
                "onsite"
              ],
              "enumTitles": [
                "Remote",
                "Hybrid",
                "On-site"
              ]
            }
          },
          "state": {
            "title": "State (Brazil)",
            "type": "string",
            "description": "UF code or name, e.g. SP or São Paulo."
          },
          "city": {
            "title": "City",
            "type": "string",
            "description": "e.g. Campinas."
          },
          "posted_within_days": {
            "title": "Posted within (days)",
            "minimum": 1,
            "maximum": 365,
            "type": "integer",
            "description": "Only postings published in the last N days. Empty = any date."
          },
          "max_results": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Postings (jobs mode) or companies (hiring_companies mode) to return. You pay per row. Default 25: a first run costs about US$0.05 and every posting already carries the hiring company's registry record (`company`: tax id, legal name, size, activity).",
            "default": 25
          },
          "max_jobs_scanned": {
            "title": "Postings scanned (hiring_companies mode)",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "How many postings to read before grouping them by company. Scanning is free; you pay per company row.",
            "default": 1000
          },
          "enrich": {
            "title": "Enrich with the company registry",
            "type": "boolean",
            "description": "Join each company to the official registry (CNPJ, legal name, size, CNAE activity, verified website) with match method and confidence.",
            "default": true
          },
          "include_description": {
            "title": "Include short description",
            "type": "boolean",
            "description": "First 600 characters, HTML removed, e-mails and phone numbers scrubbed.",
            "default": true
          },
          "proxyConfiguration": {
            "title": "Proxy (optional)",
            "type": "object",
            "description": "Off by default (direct requests). Optional Apify Proxy, datacenter only (a RESIDENTIAL group or custom proxy URLs are rejected: only Apify datacenter proxy is supported), only to choose the IP location and spread the request rate. Same headers and the same limit of 2 requests per second either way; it does not solve captchas or bot challenges: a board that blocks the run is reported as failed, never worked around.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}