---
title: "Create a credential provider"
method: POST
path: "/org/credential_providers"
tags: ["Credential Providers"]
---

# Create a credential provider

`POST /org/credential_providers`

Configure an external credential provider (e.g., 1Password) for automatic credential lookup.

## Request body

- CreateCredentialProviderRequest — Request to create an external credential provider
  - `cache_ttl_seconds` integer — How long to cache credential lists (default 300 seconds)
  - `name` string, required — Human-readable name for this provider instance (unique per org). Surrounding whitespace is trimmed and the trimmed value must be non-empty.
  - `provider_type` 'onepassword', required — Type of credential provider
  - `token` string, required — Service account token for the provider (e.g., 1Password service account token)

## Response `201`

Credential provider created successfully

- CredentialProvider — An external credential provider (e.g., 1Password) for automatic credential lookup
  - `created_at` string, date-time, required — When the credential provider was created
  - `enabled` boolean, required — Whether the provider is enabled for credential lookups
  - `id` string, required — Unique identifier for the credential provider
  - `name` string, required — Human-readable name for this provider instance
  - `priority` integer, required — Priority order for credential lookups (lower numbers are checked first)
  - `provider_type` 'onepassword', required — Type of credential provider
  - `updated_at` string, date-time, required — When the credential provider was last updated

## Other responses

- `400` — Bad Request – invalid input
- `401` — Unauthorized – missing or invalid authorization token
- `403` — Forbidden – insufficient permissions or plan
- `409` — Conflict – resource already exists
- `500` — Internal Server Error

## Changes

> 13 revisions in range; 1 could not be searched.

- **2026-08-14** `927eddb3ca27` — 2 breaking
  - the `name` request property's minLength was increased from `0` to `1`
  - added the pattern `\S` to the request property `name`

[Change history](https://skmtc.dev/onkernel/apis/kernel-api/changes/org/credential_providers/post.md)

---

[API](https://skmtc.dev/onkernel/apis/kernel-api.md) · [All operations](https://skmtc.dev/onkernel/apis/kernel-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/onkernel/kernel-api/revisions/750db28f1774/schema)
