---
title: "POST /versions/{version}/normalize/bulk"
method: POST
path: "/versions/{version}/normalize/bulk"
---

# POST /versions/{version}/normalize/bulk

`POST /versions/{version}/normalize/bulk`

## Request

- Base URL: `https://emsiservices.com/titles`
- URL: `https://emsiservices.com/titles/versions/{version}/normalize/bulk`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://auth.emsicloud.com/connect/token` scopes: `emsi_open`

> This endpoint requires additional permissions, please [contact us](https://docs.lightcast.dev/contact) if you'd like access to bulk normalization.
> Requesting title [mappings](https://api.emsidata.com/apis/titles#about-data) requires additional permissions, please [contact us](https://docs.lightcast.dev/contact) if you'd like access to mappings.

## Query parameters

- `confidenceThreshold` number, required
- `fields` string

## Request body

- BulkNormalizeRequest
  - `terms` string[], required: Maximum number of terms: `500`
  - `fields` string[]: See [/versions/{version}](#versions-version) for available fields. `mappings` require additional permissions, please [contact us](https://docs.lightcast.dev/contact) if you'd like access to mappings.
  - `confidenceThreshold` number

## Response `200`

- BulkNormalizeResponse
  - `data` object[], required
    - `title` object, required
      - `id` string, required
      - `name` string, required
      - `pluralName` string, required
      - `mapping` object
        - `names` string[], required: Mapping names are included in Titles v4.6 and onward. Titles may have zero or more mappings associated with them, the names of those mappings are listed here and represented in the unified list of skills and socs below.
        - `socs` object[], required
          - `id` string, required
          - `name` string, required
        - `skills` object[], required
          - `id` string, required
          - `name` string, required
      - `isSupervisor` boolean, required
      - `levelBand` string, required
      - `infoUrl` string, required
    - `term` string, required
    - `jobLevels` string[], required
    - `confidence` number, required

## Other responses

- `400`: Invalid request.
- `401`: You don't have access to bulk normalize endpoint.
- `404`: The version you requested wasn't found.
- `413`: Request size too large.
- `415`: Unsupported Content Type.

---

[API](https://skmtc.dev/lightcast/apis/titles-api.md) - [All operations](https://skmtc.dev/lightcast/apis/titles-api/llms.txt) - [OpenAPI document](https://skmtc.dev/lightcast/apis/titles-api/revisions/8bf01bb440a2?raw)
