---
title: "Introduce Patricia to selected teammates"
method: POST
path: "/v1/team-introductions"
tags: ["team-introductions"]
---

# Introduce Patricia to selected teammates

`POST /v1/team-introductions`

## Request

- Base URL: `https://api.patricia.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.patricia.app/v1/team-introductions`
- Auth: HTTP bearer

Authorize one welcome DM for each explicitly selected teammate who still passes the live workspace, identity, guest, and delivery checks. Refused teammates receive a reason and are not authorized.

## Headers

- `X-Tenant-Id` string, nullable

## Request body

- TeamIntroductionRequest: The exact teammates the caller selected.
  - `selections` TeamIntroductionSelection[], required
    - `membership_id` string, uuid, required
    - `chat_user_id` string, required

## Response `200`

Successful Response

- TeamIntroductionResult: The authorized and refused counts for the explicit selection.
  - `requested` integer, required
  - `sent` integer, required
  - `skipped` integer, required
  - `results` TeamIntroductionResultItem[], required
    - `membership_id` string, uuid, required
    - `outcome` 'queued' | 'already_met' | 'already_queued' | 'no_chat_dm' | 'actor_changed' | 'guest_excluded' | 'guest_unverified' | 'attempts_exhausted' | 'member_deactivated', required: The result of one requested introduction.

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden. Inspect response body `code` for the specific reason (for example: PERMISSION_DENIED, EMAIL_NOT_VERIFIED, TENANT_ACCESS_REQUIRED, ROLE_UNRESOLVED)
- `404`: Not found
- `409`: Conflict
- `422`: Validation error

---

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