---
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
  - `provider_type` 'onepassword', required — Type of credential provider
  - `name` string, required — Human-readable name for this provider instance (unique per org)
  - `token` string, required — Service account token for the provider (e.g., 1Password service account token)
  - `cache_ttl_seconds` integer — How long to cache credential lists (default 300 seconds)

## Response `201`

Credential provider created successfully

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

---

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