> ## Documentation Index
> Fetch the complete documentation index at: https://skyvern.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Extract a job application posting

> Start a workflow run that extracts structured details from a job posting.



## OpenAPI

````yaml /api-reference/openapi.json post /v1/recipes/jobs/extract
openapi: 3.1.0
info:
  title: Skyvern API
  description: API for Skyvern
  version: 1.0.0
servers:
  - url: https://api.skyvern.com
    x-fern-server-name: Cloud
  - url: https://api-staging.skyvern.com
    x-fern-server-name: Staging
  - url: http://localhost:8000
    x-fern-server-name: Local
security: []
paths:
  /v1/recipes/jobs/extract:
    post:
      tags:
        - Recipes
      summary: Extract a job application posting
      description: >-
        Start a workflow run that extracts structured details from a job
        posting.
      operationId: extract_job_application_v1_recipes_jobs_extract_post
      requestBody:
        content:
          application/json:
            schema:
              properties:
                webhook_url:
                  anyOf:
                    - type: string
                    - type: 'null'
                  format: uri
                  title: Webhook Url
                  description: >-
                    After a run is finished, send an update to this URL. Refer
                    to https://www.skyvern.com/docs/running-tasks/webhooks-faq
                    for more details.
                  examples:
                    - https://my-site.com/webhook
                proxy_location:
                  anyOf:
                    - $ref: '#/components/schemas/ProxyLocation'
                    - $ref: '#/components/schemas/GeoTarget'
                    - additionalProperties: true
                      type: object
                    - type: 'null'
                  title: Proxy Location
                  description: >-
                    Geographic Proxy location to route the browser traffic
                    through. This is only available in Skyvern Cloud.


                    Available geotargeting options:

                    - RESIDENTIAL: the default value. Skyvern Cloud uses a
                    random US residential proxy.

                    - RESIDENTIAL_ES: Spain

                    - RESIDENTIAL_IE: Ireland

                    - RESIDENTIAL_GB: United Kingdom

                    - RESIDENTIAL_IN: India

                    - RESIDENTIAL_JP: Japan

                    - RESIDENTIAL_FR: France

                    - RESIDENTIAL_DE: Germany

                    - RESIDENTIAL_NZ: New Zealand

                    - RESIDENTIAL_PH: Philippines

                    - RESIDENTIAL_KR: South Korea

                    - RESIDENTIAL_SA: Saudi Arabia

                    - RESIDENTIAL_ZA: South Africa

                    - RESIDENTIAL_AR: Argentina

                    - RESIDENTIAL_AU: Australia

                    - RESIDENTIAL_BR: Brazil

                    - RESIDENTIAL_TR: Turkey

                    - RESIDENTIAL_CA: Canada

                    - RESIDENTIAL_MX: Mexico

                    - RESIDENTIAL_IT: Italy

                    - RESIDENTIAL_NL: Netherlands

                    - RESIDENTIAL_ISP: ISP proxy

                    - US-CA: California (deprecated, routes through
                    RESIDENTIAL_ISP)

                    - US-NY: New York (deprecated, routes through
                    RESIDENTIAL_ISP)

                    - US-TX: Texas (deprecated, routes through RESIDENTIAL_ISP)

                    - US-FL: Florida (deprecated, routes through
                    RESIDENTIAL_ISP)

                    - US-WA: Washington (deprecated, routes through
                    RESIDENTIAL_ISP)

                    - NONE: No proxy


                    For self-hosted deployments, you can pass a custom proxy URL
                    as a dict: {"url":
                    "http://user:password@proxy.example.com:8080"}. This routes
                    the browser through your own proxy server and takes
                    precedence over any globally configured proxy pool. Can also
                    be a GeoTarget object for granular city/state targeting:
                    {"country": "US", "subdivision": "CA", "city": "San
                    Francisco"}. Omit it or send null to use the default;
                    Skyvern Cloud then uses RESIDENTIAL.
                job_url:
                  type: string
                  format: uri
                  title: Job Url
              additionalProperties: false
              type: object
              required:
                - job_url
              title: JobRecipeExtractRequest
        required: true
      responses:
        '200':
          description: Successfully started job application extraction
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobRecipeRunResponse'
        '402':
          description: Insufficient credits or required billing state
        '403':
          description: Unauthorized or insufficient organization permission
        '422':
          description: Invalid extract request
        '429':
          description: Workflow submission rate limit exceeded
        '500':
          description: Workflow launch failed
      security:
        - ApiKeyAuth: []
components:
  schemas:
    ProxyLocation:
      type: string
      enum:
        - RESIDENTIAL
        - US-CA
        - US-NY
        - US-TX
        - US-FL
        - US-WA
        - RESIDENTIAL_ES
        - RESIDENTIAL_IE
        - RESIDENTIAL_GB
        - RESIDENTIAL_IN
        - RESIDENTIAL_JP
        - RESIDENTIAL_FR
        - RESIDENTIAL_DE
        - RESIDENTIAL_NZ
        - RESIDENTIAL_ZA
        - RESIDENTIAL_AR
        - RESIDENTIAL_AU
        - RESIDENTIAL_BR
        - RESIDENTIAL_TR
        - RESIDENTIAL_CA
        - RESIDENTIAL_MX
        - RESIDENTIAL_IT
        - RESIDENTIAL_NL
        - RESIDENTIAL_PH
        - RESIDENTIAL_KR
        - RESIDENTIAL_SA
        - RESIDENTIAL_ISP
        - NONE
      title: ProxyLocation
    GeoTarget:
      properties:
        country:
          type: string
          maxLength: 2
          minLength: 2
          title: Country
          description: ISO 3166-1 alpha-2 country code (e.g., 'US', 'GB', 'DE')
          examples:
            - US
            - GB
            - DE
            - FR
        subdivision:
          anyOf:
            - type: string
              maxLength: 10
            - type: 'null'
          title: Subdivision
          description: >-
            ISO 3166-2 subdivision code without country prefix (e.g., 'CA' for
            California, 'NY' for New York)
          examples:
            - CA
            - NY
            - TX
            - ENG
        city:
          anyOf:
            - type: string
              maxLength: 100
            - type: 'null'
          title: City
          description: >-
            City name in English from GeoNames (e.g., 'New York', 'Los Angeles',
            'London')
          examples:
            - New York
            - Los Angeles
            - London
            - Berlin
        isISP:
          type: boolean
          title: Isisp
          description: Whether this geo target is marked as an ISP proxy location.
          default: false
      type: object
      required:
        - country
      title: GeoTarget
      description: >-
        Granular proxy geo-targeting request with country, optional subdivision,
        and optional city.
    JobRecipeRunResponse:
      properties:
        workflow_run_id:
          type: string
          pattern: ^wr_
          title: Workflow Run Id
      additionalProperties: false
      type: object
      required:
        - workflow_run_id
      title: JobRecipeRunResponse
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      description: Your Skyvern API key from https://app.skyvern.com/settings.
      in: header
      name: x-api-key

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.