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

<AgentInstructions>

## Submitting Feedback

If you encounter incorrect, outdated, or confusing documentation on this page, submit feedback:

POST https://docs.affinda.com/feedback

```json
{
  "path": "/api-reference/search-&-match--embedding/create-a-signed-url-for-the-embeddable-job-description-search-tool",
  "feedback": "Description of the issue"
}
```

Only submit feedback when you have something specific and actionable to report.

</AgentInstructions>

# Create a signed URL for the embeddable job description search tool

> Create and return a signed URL of the job description search tool which then can be embedded on a web page. An optional parameter `config_override` can be passed to override the user-level configurations of the embeddable search tool.



## OpenAPI

````yaml https://api.affinda.com/static/v2/api_spec.yaml post /v2/job_description_search/embed
openapi: 3.0.3
info:
  description: >-
    # Introduction

    Affinda uses the latest advancements in AI technology to rapidly process
    documents with better-than-human accuracy.

    This guide covers how to:

    * Extract structured data from a range of document types

    * Integrate our solutions into your platform

    * Manage users


    *Note: This API spec is for the deprecated v2 of the API, the v3
    documentation [can be found here](https://api.affinda.com/docs/v3)*


    > **Important: Use the correct API URL for your region.** Affinda is hosted
    across multiple instances. Make sure you are sending requests to the correct
    URL for your account:

    > | Instance | API Base URL |

    > |----------|-------------|

    > | **AUS / Global** | `https://api.affinda.com` |

    > | **US** | `https://api.us1.affinda.com` |

    > | **EU** | `https://api.eu1.affinda.com` |

    >

    > You can determine your instance from the URL you use to access the Affinda
    web app (e.g. `app.us1.affinda.com` means you are on the US instance). When
    using the "Try it" feature, select the matching region from the server
    dropdown.

    # Getting Started

    * Obtain an API key by [signing up for a
    free-trial](https://app.affinda.com/auth/register)

    * (Recommended) Download and install one of our client libraries:
      * [Python](https://github.com/affinda/affinda-python) : `pip install affinda`
      * [Javascript](https://github.com/affinda/affinda-typescript) : `npm install @affinda/affinda`
      * [.NET](https://github.com/affinda/affinda-dotnet): `dotnet add package Affinda.API`
      * [Java](https://github.com/affinda/affinda-java) - [maven repository](https://mvnrepository.com/artifact/com.affinda.api/affinda-api-client)

    * Without a client library, API requests via HTTP according to the API spec
    in this documentation
  version: v2
  title: Affinda API
  contact:
    email: contact@affinda.com
  license:
    name: MIT
    url: https://raw.githubusercontent.com/affinda/affinda-api-spec/master/LICENSE
  x-logo:
    url: https://api.affinda.com/static/documentation/affinda_logo.png
    backgroundColor: '#FFFFFF'
    altText: Affinda logo
servers:
  - url: https://{region}.affinda.com
    description: >-
      Select the correct server for your instance: api (AUS/Global), api.us1
      (US), or api.eu1 (EU).
    variables:
      region:
        default: api
        description: >-
          The instance region. Use 'api' for AUS/Global, 'api.us1' for US, or
          'api.eu1' for EU. You can find your region in the Affinda web app URL.
        enum:
          - api
          - api.eu1
          - api.us1
        x-ms-parameter-location: client
security:
  - ApiKeyAuth: []
tags:
  - name: Invoice Extractor
    description: >-
      Operations to perform on parsed invoices via the Affinda Invoice Extractor
      API or a client library
  - name: Resume Parser
    description: >-
      Operations to perform on parsed resumes via the Affinda Resume Parser API
      or a client library
  - name: Job Description Parser
    description: >-
      Operations to perform on job descriptions via the Affinda Job Description
      API or a client library
  - name: Search & Match - Indexing
    description: >
      Operations to create and manage indexes and to add new documents to these
      indexes via the Affinda Resume Parser API or a client library.


      Resumes and job descriptions must be explicitly added to an index, which
      then makes them searchable (see Search & Match – Searching).
  - name: Search & Match - Searching
    description: >-
      Operations to search through an index of documents via the Affinda Resume
      Parser API or a client library.
  - name: Search & Match - Embedding
    description: Operations to fetch and configure the embeddable search tool.
  - name: Resume Search
    description: >
      Operations to search parsed resumes via the Affinda Resume Parser API or a
      client library.


      Resumes must be explicitly added to an index, which then makes them
      searchable with the below endpoint.
  - name: Resume Redactor
    description: >-
      Operations to perform on redacted resumes via the Affinda Resume Parser
      API or a client library
  - name: Users
    description: >
      Operations to manage users that are part of an account.


      For example, you may want to implement different settings

      for different users in your platform.  You can use these endpoints to
      generate new user accounts, and the usage

      for these accounts will be deducted from your master account.


      If you would like these user accounts to be able to login at
      https://app.affinda.com/, they will need to

      go to https://app.affinda.com/ and reset their password using the email
      used to create their account.
  - name: Documents API
    description: Placeholder
  - name: Webhook API
    description: Manage webhook integrations with your apps.
paths:
  /v2/job_description_search/embed:
    post:
      tags:
        - Search & Match - Embedding
      summary: Create a signed URL for the embeddable job description search tool
      description: >-
        Create and return a signed URL of the job description search tool which
        then can be embedded on a web page. An optional parameter
        `config_override` can be passed to override the user-level
        configurations of the embeddable search tool.
      operationId: createJobDescriptionSearchEmbedUrl
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                configOverride:
                  $ref: '#/components/schemas/JobDescriptionSearchConfig'
      responses:
        '200':
          description: Successfully created a signed URL.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobDescriptionSearchEmbed'
        '401':
          $ref: '#/components/responses/401Error'
        default:
          $ref: '#/components/responses/DefaultError'
components:
  schemas:
    JobDescriptionSearchConfig:
      type: object
      properties:
        allowPdfDownload:
          type: boolean
          nullable: false
        maxResults:
          type: integer
          minimum: 1
          nullable: true
          description: >-
            Maximum number of results that can be returned. Setting to "null"
            means no limitation.
          example: 10
        displayJobTitle:
          type: boolean
          nullable: false
        displayLocation:
          type: boolean
          nullable: false
        displayYearsExperience:
          type: boolean
          nullable: false
        displayOccupationGroup:
          type: boolean
          nullable: false
        displayEducation:
          type: boolean
          nullable: false
        displaySkills:
          type: boolean
          nullable: false
        displayLanguages:
          type: boolean
          nullable: false
        displayManagementLevel:
          type: boolean
          nullable: false
        displayKeywords:
          type: boolean
          nullable: false
        weightJobTitle:
          type: number
          nullable: false
        weightLocation:
          type: number
          nullable: false
        weightYearsExperience:
          type: number
          nullable: false
        weightOccupationGroup:
          type: number
          nullable: false
        weightEducation:
          type: number
          nullable: false
        weightSkills:
          type: number
          nullable: false
        weightLanguages:
          type: number
          nullable: false
        weightManagementLevel:
          type: number
          nullable: false
        weightKeywords:
          type: number
          nullable: false
        indices:
          type: array
          items:
            type: string
          description: List of index names.
          example:
            - all-job-descriptions
            - my-index
        showIndexDropdown:
          type: boolean
          nullable: true
          description: Controls whether or not the index dropdown is displayed to the user
        searchToolTheme:
          type: object
          nullable: true
          additionalProperties: true
          description: Customize the theme of the embeded search tool.
        userId:
          type: integer
          nullable: false
          readOnly: true
          description: ID of the logged in user.
          example: 1234
          minimum: 1
        username:
          type: string
          nullable: false
          readOnly: true
          description: Username of the logged in user.
          example: big.smoke
        actions:
          type: array
          nullable: true
          description: >-
            A list of actions to show in the dropdown in the embedded search
            tool
          items:
            type: object
            properties:
              label:
                description: Human readable label to display in the UI
                type: string
              eventName:
                description: Name of the event to be triggered
                type: string
        customFieldsConfig:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/CustomFieldConfig'
        distanceUnit:
          type: string
          nullable: false
          description: The unit of distance to use for location based searches
          example: km
          enum:
            - mi
            - km
    JobDescriptionSearchEmbed:
      type: object
      properties:
        url:
          type: string
          nullable: false
          description: The signed URL for the embedable search tool.
          example: >-
            https://app.affinda.com/job-description-search?signature=eyJhbGxvd19wZGZkGZ
    CustomFieldConfig:
      type: object
      required:
        - dataPoint
        - weight
      properties:
        dataPoint:
          type: string
          description: Data point identifier.
          example: RdNAniIH
        weight:
          type: number
          minimum: 0
          maximum: 1
          example: 0.5
          default: 0.5
    RequestError:
      type: object
      additionalProperties: false
      required:
        - type
        - errors
      properties:
        type:
          type: string
          example: validation_error
        errors:
          type: array
          items:
            type: object
            required:
              - attr
              - code
              - detail
            properties:
              attr:
                type: string
                nullable: true
                example: non_field_errors
              code:
                type: string
                example: unique
              detail:
                type: string
                example: This index name has already been used
  responses:
    401Error:
      description: Authorisation error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RequestError'
      x-ms-error-response: true
    DefaultError:
      description: UnexpectedError
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RequestError'
      x-ms-error-response: true
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      description: >-
        Basic authentication using an API key, e.g. `{Authorization: Bearer
        75z0bb4fbdf97b7e4111ff6c0015471094155f91}`.

        You can find your API key within the Settings page of the [Affinda web
        app](https://app.affinda.com/). You can obtain an API key by [signing up
        for a free trial](https://app.affinda.com/auth/register).

````