---
title: "Put connector"
method: PUT
path: "/api/connectors/{host}"
---

# Put connector

`PUT /api/connectors/{host}`

## Request

- Base URL: `https://reduck.ai`
- URL: `https://reduck.ai/api/connectors/{host}`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Replace the cookies of the connector you name on a host, creating it when none matches. With no name, the site's only connector for the profile is replaced, or created when there is none. Every cookie has to belong to that host. This is how the extension uploads a site's cookies.

## Path parameters

- `host` string, required

## Request body

- object
  - `cookies` object[], required
    - `name` string, required
    - `value` string, required
    - `domain` string, required
    - `path` string, required
    - `expires` number, required
    - `httpOnly` boolean, required
    - `secure` boolean, required
    - `sameSite` 'Strict' | 'Lax' | 'None'
  - `profile` string: The end-user this connector is kept for, in your own naming (for example your user id). Omit, or leave empty, for your own account's connectors. Only an API key or an OAuth token can read or create an end-user's connector.
  - `account` string: The connector whose account (as its probe or SSO sign-in reported it) is this one.
  - `label` string: The connector with this label, or "" for the one without a label.
  - `is_sso` boolean
  - `sso_account` string

## Response `200`

OK

- Connector
  - `id` string, required
  - `host` string, required: The website, bare: no scheme, no leading "www.", e.g. "linkedin.com". For an SSO connector this is the identity provider, e.g. "accounts.google.com".
  - `profile_id` string, required: The end-user this connector is kept for, as the developer named them. Empty for the account's own connectors.
  - `account` string, nullable, required: The identity a probe script or the SSO sign-in reported (usually an email). Null until one has; it is never set by hand.
  - `label` string, nullable, required: The name a person gave this connector, to tell it apart from the host's others.
  - `is_sso` boolean, required: True when this is an identity-provider session usable for "Continue with <provider>".
  - `sso_account` string, nullable, required: For a connector created through an SSO connector: that SSO's account (email). The reference autoreconnect follows. Null otherwise.
  - `created_at` string, required
  - `updated_at` string, required

## Other responses

- `400`: The request is malformed, or it names an account no connector holds: an account is only ever recorded by a probe script.
- `401`: Not authenticated
- `403`: An end-user's connector is written with an API key or an OAuth token, not from a browser session.
- `404`: Not found
- `409`: Several connectors match; the body's `connectors` lists them. Or the label is already taken.

---

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