---
title: "PUT /v1/orgs/{orgId}/byo-provider"
method: PUT
path: "/v1/orgs/{orgId}/byo-provider"
tags: ["ByoProvider"]
---

# PUT /v1/orgs/{orgId}/byo-provider

`PUT /v1/orgs/{orgId}/byo-provider`

Configures the organization's own LLM provider (bring-your-own gateway). Validates the configuration against the customer gateway and stores the credential encrypted; the credential is never returned. `tierModels` names one of the organization's own models per tier (high, medium, low); each feature is mapped to a tier, and an enabled gateway must name a model for all three. `enabledModels` may be empty, which registers the connection with no models yet; such a gateway must be created with `enabled: false` and stays unable to be enabled until it has models and all three tiers.

## Path parameters

- `orgId` string, uuid, required

## Headers

- `Authorization` string

## Request body

- object
  - `baseUrl` string, required — HTTPS gateway base URL ending in /v1, without user information, a query, or a fragment.
  - `credential` string, required
  - `enabledModels` string[], required
  - `tierModels` object — Tier to model, in the customer's own model names. Tessl maps each of its features to a tier; that mapping is not configurable.
    - `high` string
    - `medium` string
    - `low` string
  - `enabled` boolean

## Response `200`

Default Response

- object
  - `links` object, required
    - `self` string, uri, required
  - `data` object, required
    - `id` string, uuid, required
    - `type` 'byo-provider', required
    - `attributes` object, required
      - `baseUrl` string, required
      - `enabledModels` string[], required
      - `tierModels` object, required
        - `high` string, nullable, required
        - `medium` string, nullable, required
        - `low` string, nullable, required
      - `enabled` boolean, required
      - `orgSlug` string, required — Immutable organization slug used as the prefix for composed gateway model names.
      - `updatedAt` string, date-time, required

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `500` — Internal Server Error
- `502` — Bad Gateway

---

[API](https://skmtc.net/tessl/apis/tessl-api.md) · [All operations](https://skmtc.net/tessl/apis/tessl-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tessl/tessl-api/revisions/94ea3c4ec562/schema)
