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

# Get Memory Import Job

> Track the progress of a memory import job

Returns the progress of an import job created by [Import Memory Items](/apis/ollang-api-reference/import-memory-items) (or by a dashboard file upload), including the vectorization step that makes the imported units available to semantic matching.

Imported units are matched by exact lookup as soon as the job's `status` reaches `completed`; semantic matching becomes available once `vectorizationStatus` also reaches `completed`.

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api-integration.ollang.com/integration/memories/import-jobs/66b8d6f1e1b9b1d8c6c0d8e1" \
    -H "X-Api-Key: <your-api-key>"
  ```

  ```javascript JavaScript theme={null}
  const jobId = "66b8d6f1e1b9b1d8c6c0d8e1";

  const response = await fetch(
    `https://api-integration.ollang.com/integration/memories/import-jobs/${jobId}`,
    {
      method: "GET",
      headers: {
        "X-Api-Key": "<your-api-key>",
      },
    }
  );

  const job = await response.json();
  ```

  ```python Python theme={null}
  import requests

  job_id = "66b8d6f1e1b9b1d8c6c0d8e1"

  headers = {"X-Api-Key": "<your-api-key>"}

  response = requests.get(
      f"https://api-integration.ollang.com/integration/memories/import-jobs/{job_id}",
      headers=headers,
  )

  job = response.json()
  ```
</RequestExample>

## Authorizations

This endpoint requires API key authentication.

* **Header name**: `X-Api-Key`
* **Header value**: Your API key from the [Ollang dashboard](https://lab.ollang.com)

## Path Parameters

<ParamField path="jobId" type="string" required>
  The import job's unique identifier, as returned by the import endpoint.
</ParamField>

## Response

<ResponseField name="jobId" type="string">
  Identifier of the import job.
</ResponseField>

<ResponseField name="status" type="string">
  Status of the import: `pending`, `processing`, `completed`, or `failed`.
</ResponseField>

<ResponseField name="progress" type="number">
  Import progress percentage (0–100).
</ResponseField>

<ResponseField name="itemsCount" type="number | null">
  Number of translation units imported. `null` until the job completes.
</ResponseField>

<ResponseField name="error" type="string | null">
  Human-readable error message when the job failed.
</ResponseField>

<ResponseField name="completedAt" type="string | null">
  Completion timestamp (ISO 8601). `null` until the job completes.
</ResponseField>

<ResponseField name="vectorizationStatus" type="string | null">
  Status of the vectorization step: `pending`, `processing`, `completed`, or `failed`.
</ResponseField>

<ResponseField name="vectorizationProgress" type="number | null">
  Vectorization progress percentage (0–100).
</ResponseField>

<ResponseField name="vectorizationError" type="string | null">
  Human-readable error message when vectorization failed.
</ResponseField>

<ResponseField name="vectorizationCompletedAt" type="string | null">
  Vectorization completion timestamp (ISO 8601).
</ResponseField>

<ResponseExample>
  ```json 200 (completed) theme={null}
  {
    "jobId": "66b8d6f1e1b9b1d8c6c0d8e1",
    "status": "completed",
    "progress": 100,
    "itemsCount": 250,
    "error": null,
    "completedAt": "2026-08-12T09:20:00.000Z",
    "vectorizationStatus": "processing",
    "vectorizationProgress": 0,
    "vectorizationError": null,
    "vectorizationCompletedAt": null
  }
  ```

  ```json 200 (processing) theme={null}
  {
    "jobId": "66b8d6f1e1b9b1d8c6c0d8e1",
    "status": "processing",
    "progress": 40,
    "itemsCount": null,
    "error": null,
    "completedAt": null,
    "vectorizationStatus": "pending",
    "vectorizationProgress": 0,
    "vectorizationError": null,
    "vectorizationCompletedAt": null
  }
  ```

  ```json 404 theme={null}
  {
    "statusCode": 404,
    "message": "Job not found"
  }
  ```

  ```json 401 theme={null}
  {
    "error": "Unauthorized",
    "message": "Invalid or missing API key"
  }
  ```
</ResponseExample>
