---
title: "Ingest External V1"
method: POST
path: "/api/ingest/external/v1"
tags: ["ingest"]
---

# Ingest External V1

`POST /api/ingest/external/v1`

## Request

- Base URL: `https://app.thinqos.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.thinqos.com/api/ingest/external/v1`
- Auth: none declared

Ingest a batch of external sessions.

The outer envelope is validated strictly but each session inside
``sessions[]`` is validated independently inside the service so a
single malformed session does not abort the whole batch.

Pass ``?bulk=true`` for a historical-import (TOS-262): each newly-
created chat is auto-archived for the owner so the import doesn't
flood the live sidebar. Default ``False`` is live capture.

Returns 410 Gone if the source has been disabled for this identity.

## Query parameters

- `bulk` boolean

## Headers

- `x-ingest-key` string, nullable
- `x-client-version` string, nullable

## Request body

- object

## Response `200`

Successful Response

- IngestResultV1
  - `ingested` integer, required
  - `duplicates` integer, required
  - `errors` IngestSessionError[], required
    - `source_external_id` string, nullable, required
    - `code` string, required
    - `detail` string, required
  - `contract_version` string

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/thinqos/apis/thinqos-api.md) · [All operations](https://skmtc.dev/thinqos/apis/thinqos-api/llms.txt) · [OpenAPI document](https://skmtc.dev/thinqos/apis/thinqos-api/revisions/ce2c2ce318b1?raw)
