---
title: "Create a provider"
method: POST
path: "/api/v1/providers"
tags: ["Credentials"]
---

# Create a provider

`POST /api/v1/providers`

## Request

- Base URL: `https://dev.noveum.ai`
- URL: `https://dev.noveum.ai/api/v1/providers`
- Auth: API key in cookie `apiKeyCookie` and HTTP bearer

Creates a new model provider for the organization. Required credential fields depend on the provider type. Credentials are encrypted at rest and only ever returned masked. When setDefault is true the new provider becomes the organization default.

## Query parameters

- `organizationSlug` string

## Request body

- object
  - `type` 'openai' | 'anthropic' | 'google' | 'aws' | 'azure' | 'noveum', required
  - `name` string, required
  - `model` string, required
  - `isCustomModel` boolean
  - `credentials` object, required
  - `setDefault` boolean

## Response `200`

Success

- object

## Other responses

- `201`: Successfully created provider.
- `400`: Bad request - Missing required credential fields or invalid input.
- `401`: Unauthorized - Authentication required
- `403`: Forbidden
- `404`: Not found
- `409`: Conflict
- `422`: Unprocessable entity
- `500`: Internal server error

---

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