{
  "openapi": "3.0.1",
  "info": {
    "title": "Y Combinator Jobs — Enriched & Normalized",
    "description": "Extract public Work at a Startup openings into nomad-agent-job-v1. Complete Inertia details provide descriptions, salary, equity, visa and company facts; optional owner-managed AI fills only missing description-backed fields.",
    "version": "1.0",
    "x-build-id": "rHO2yvEg6AAyvb2sT"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nomad-agent~ycombinator-enrich-translate-normalize-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nomad-agent-ycombinator-enrich-translate-normalize-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/nomad-agent~ycombinator-enrich-translate-normalize-scraper/runs": {
      "post": {
        "operationId": "runs-sync-nomad-agent-ycombinator-enrich-translate-normalize-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/nomad-agent~ycombinator-enrich-translate-normalize-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-nomad-agent-ycombinator-enrich-translate-normalize-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",
        "required": [
          "schemaVersion"
        ],
        "properties": {
          "firstRunMode": {
            "title": "First-run mode",
            "type": "boolean",
            "description": "Run a small enriched evaluation without changing search or filter fields. When enabled, the Actor caps effective maxItems at 5, uses Silver AI enrichment, translates supported fields to English, disables cross-run deduplication, returns raw as null, and keeps anonymous analytics off. AI enrichment and translation are paid events.",
            "default": false
          },
          "schemaVersion": {
            "title": "Input contract version",
            "enum": [
              "nomad-agent-job-search-input-v1"
            ],
            "type": "string",
            "description": "Version of the shared normalized job-search Actor input contract.",
            "default": "nomad-agent-job-search-input-v1"
          },
          "keyword": {
            "title": "Keyword",
            "type": "string",
            "description": "One search term. Cannot be combined with non-empty ycSearch.queries."
          },
          "location": {
            "title": "Location contains",
            "type": "string",
            "description": "Case-insensitive match against YC's published location label."
          },
          "workArrangements": {
            "title": "Work arrangements",
            "uniqueItems": true,
            "type": "array",
            "description": "Optional union of published workplace modes. YC labels establish remote explicitly; a physical place or missing workplace label is never treated as onsite or hybrid evidence.",
            "items": {
              "type": "string",
              "enum": [
                "remote",
                "hybrid",
                "onsite"
              ],
              "enumTitles": [
                "Remote",
                "Hybrid",
                "On-site"
              ]
            }
          },
          "postedWithin": {
            "title": "Posted within",
            "enum": [
              "1h",
              "24h",
              "7d",
              "30d",
              "any"
            ],
            "type": "string",
            "description": "Filter by the UTC hour when the owner inventory first observed the job. YC does not publish a source posting timestamp.",
            "default": "any"
          },
          "orderBy": {
            "title": "Result order",
            "enum": [
              "newest",
              "oldest"
            ],
            "type": "string",
            "description": "Order matching results by the inventory first-observed hour. YC job ID and canonical URL break ties consistently.",
            "default": "newest"
          },
          "maxItems": {
            "title": "Maximum results",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Maximum number of complete normalized jobs to return. Set 0 to request the complete bounded delivery window of 1,000; it never means unlimited.",
            "default": 100
          },
          "ycSearch": {
            "title": "YC-specific search",
            "required": [
              "schemaVersion"
            ],
            "type": "object",
            "description": "Optional versioned content-term and YC taxonomy filters applied locally to the cached normalized inventory. Leave queries empty to use keyword or no term filter.",
            "properties": {
              "schemaVersion": {
                "title": "YC search contract version",
                "description": "Version of the YC-specific cached-inventory filter contract.",
                "type": "string",
                "enum": [
                  "nomad-agent-ycombinator-search-v1"
                ],
                "default": "nomad-agent-ycombinator-search-v1"
              },
              "queries": {
                "title": "Search queries",
                "description": "Local content terms combined with OR. Their array order does not affect results. Cannot be combined with a non-empty top-level keyword.",
                "type": "array",
                "maxItems": 62,
                "uniqueItems": true,
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              },
              "companyBatches": {
                "title": "Company batches",
                "description": "Exact case-insensitive YC batch labels such as S23 or W24.",
                "type": "array",
                "maxItems": 50,
                "uniqueItems": true,
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              },
              "roleTypes": {
                "title": "Role types",
                "description": "Case-insensitive substrings matched against YC's published role category.",
                "type": "array",
                "maxItems": 50,
                "uniqueItems": true,
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              },
              "jobTypes": {
                "title": "Job types",
                "description": "Exact case-insensitive YC job-type labels; common Fulltime aliases are equivalent.",
                "type": "array",
                "maxItems": 20,
                "uniqueItems": true,
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              }
            },
            "additionalProperties": false
          },
          "dedupe": {
            "title": "Cross-run delivery deduplication",
            "required": [
              "enabled",
              "key"
            ],
            "type": "object",
            "description": "Enabled by default. An empty key derives isolated history from this Apify user and the resolved YC query and filter scope. Provide a distinct opaque alert/profile key only when searches should intentionally share history.",
            "properties": {
              "enabled": {
                "title": "Enabled",
                "type": "boolean",
                "description": "Suppress jobs already confirmed delivered in the same tenant and query/profile scope.",
                "default": true
              },
              "key": {
                "title": "Scope key",
                "type": "string",
                "description": "Optional public delivery scope key; this is not a secret. Leave empty to derive a query-specific scope.",
                "maxLength": 256,
                "default": ""
              }
            },
            "default": {
              "enabled": true,
              "key": ""
            },
            "additionalProperties": false
          },
          "filters": {
            "title": "Normalized job filters",
            "type": "object",
            "description": "Optional nomad-agent-job-filter-v1 expression over allowlisted normalized fields. Unknown rich facts never count as an early card rejection.",
            "properties": {
              "schemaVersion": {
                "title": "Filter contract version",
                "description": "Version of the normalized-job filter expression contract.",
                "type": "string",
                "enum": [
                  "nomad-agent-job-filter-v1"
                ]
              },
              "expression": {
                "title": "Filter expression",
                "description": "Closed normalized-field expression evaluated against each cached job.",
                "type": "object"
              }
            },
            "additionalProperties": false
          },
          "aiEnrichment": {
            "title": "AI position-facts enrichment",
            "required": [
              "enabled",
              "accuracy"
            ],
            "type": "object",
            "description": "Reads only a complete public plain-text description and fills normalized fields that deterministic YC parsing left null. Static facts always win, and no customer API key or model is requested. Provider failure leaves the base result unchanged and is recorded in llm status.",
            "properties": {
              "enabled": {
                "title": "Enable AI enrichment",
                "type": "boolean",
                "description": "Enable description-backed, null-only position-facts extraction.",
                "default": false
              },
              "accuracy": {
                "title": "Accuracy profile",
                "type": "string",
                "description": "Silver is the default bounded profile; Gold selects the separately configured higher-accuracy profile.",
                "enum": [
                  "silver",
                  "gold"
                ],
                "enumTitles": [
                  "Silver",
                  "Gold"
                ],
                "default": "silver"
              }
            },
            "default": {
              "enabled": false,
              "accuracy": "silver"
            },
            "additionalProperties": false
          },
          "translateToEnglish": {
            "title": "Translate selected fields to English",
            "type": "boolean",
            "description": "After normalization, filtering, and optional enrichment, translate only configured short display fields with the Actor owner's DeepL account. Raw descriptions, HTML, company names, taxonomy, and provenance remain unchanged.",
            "default": false
          },
          "includeRaw": {
            "title": "Include complete raw description",
            "type": "boolean",
            "description": "When enabled, return the complete YC detail description text and HTML in raw. Disable it to return raw: null after all requested processing.",
            "default": true
          },
          "analyticsEnabled": {
            "title": "Share anonymous run analytics",
            "type": "boolean",
            "description": "Opt in to one fail-open operational event with coarse run health and counts. It excludes caller IDs, search values, records, URLs, errors, secrets, source text, translations, and extracted values.",
            "default": 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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}