---
title: "Create LQA request"
method: POST
path: "/lqa-proxy-api/v2/projects/{projectId}/lqa-requests"
tags: ["lqa"]
---

# Create LQA request

`POST /lqa-proxy-api/v2/projects/{projectId}/lqa-requests`

## Request

- Base URL: `https://api.smartling.com`
- URL: `https://api.smartling.com/lqa-proxy-api/v2/projects/{projectId}/lqa-requests`
- Auth: HTTP bearer

Creates a Linguistic Quality Assurance (LQA) request in `DRAFT` state
for strings of the project in the path (the *original project*).

The request lives in the LQA project registered for the account that
has the same source language as the original project. An LQA project
is a regular Smartling project that holds copies of strings from the
original project, so reviewers can work on them there.

Provide exactly one of `translationJobUid` or `translationJobName`.
A blank value counts as missing.

- `translationJobUid` reuses an existing job of the LQA project.
  The call fails when the job already holds an LQA request that is
  still processing.
- `translationJobName` creates a new job in the LQA project.

After the request is created, add strings to it and submit it to
start processing.

Requires the Account Owner or Project Manager role.

## Path parameters

- `projectId` string, required: Unique identifier of a Smartling project — 9 lowercase alphanumeric characters.

## Request body

- CreateLqaRequestCommand: Creates an LQA request. Exactly one of `translationJobUid` and `translationJobName` is required.
  - `translationJobUid` string, nullable: UID of an existing job of the LQA project.
  - `translationJobName` string, nullable: Name of a new job to create in the LQA project. The name must be unique in that project.

## Response `200`

LQA request created in `DRAFT` state.

- LqaRequestResponse: Response envelope for a single LQA request.
  - `response` object, required
    - `code` 'SUCCESS', required
    - `data` LqaRequest, required: An LQA request.
      - `lqaRequestUid` string, required: Unique identifier (UID) of an LQA request - 12 lowercase hexadecimal characters.
      - `sourceLocaleId` string, required: Locale identifier. Either a 2-letter language code (`en`) or a language-region pair (`en-US`). The language part is always lowercase; the region part is always uppercase.
      - `targetProjectUid` string, required: Unique identifier of a Smartling project — 9 lowercase alphanumeric characters.
      - `targetJobUid` string, required: Translation job unique identifier — 12 lowercase alphanumeric characters.
      - `createdByUserUid` string, required: Unique identifier of a user — 12 lowercase alphanumeric characters.
      - `lqaRequestStatusCode` 'DRAFT' | 'IN_PROGRESS' | 'COMPLETED' | 'PARTIALLY_COMPLETED' | 'FAILED' | 'CANCELLED', required: State of an LQA request.
      - `createdDate` string, date-time, required: ISO 8601 UTC timestamp.
      - `modifiedDate` string, date-time, required: ISO 8601 UTC timestamp.

## Other responses

- `400`: Validation failed. `response.code` is `VALIDATION_ERROR`. Domain errors share this status, see the examples for the error keys.
- `401`: Provided credentials are not valid.
- `403`: Caller does not have access to the requested resource.
- `404`: The project in the path does not exist. `response.code` is `VALIDATION_ERROR` (not `NOT_FOUND_ERROR`) and the error key is `api.request.error.notFound`.
- `500`: Unexpected error

## Changes

- **2026-10-28** `2c939ffe7da1`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/smartling/apis/smartling-rest-api-reference/changes/lqa-proxy-api/v2/projects/:projectId/lqa-requests/post.md)

---

[API](https://skmtc.dev/smartling/apis/smartling-rest-api-reference.md) - [All operations](https://skmtc.dev/smartling/apis/smartling-rest-api-reference/llms.txt) - [OpenAPI document](https://skmtc.dev/smartling/apis/smartling-rest-api-reference/revisions/e63066e7f5e9?raw)
