# 创建供应商

Source: https://langbot.app/docs/ja/api-reference/model-providers/%E5%88%9B%E5%BB%BA%E4%BE%9B%E5%BA%94%E5%95%86

## POST /api/v1/provider/providers

创建一个新的模型供应商。

Authentication (OpenAPI security alternatives; OR between entries, AND within each entry): [{"ApiKeyAuth":[]},{"BearerAuth":[]}]. See components.securitySchemes below for header names, schemes and scopes.

Servers: http://localhost:5300. Use your own LangBot instance, not the documentation host.

[Complete ja OpenAPI specification](https://langbot.app/docs/openapi/service-api-ja.json)

## Operation contract

The OpenAPI subset below preserves path/operation parameters, request bodies, response codes, media types, examples and schemas. All referenced components are included transitively; resolve local JSON pointers against this document. The operation is preserved verbatim, including security overrides.

```json
{
  "openapi": "3.0.3",
  "info": {
    "title": "LangBot Service API",
    "description": "LangBot external service API documentation. These endpoints support API Key authentication for programmatic access to LangBot resources.\n\n**Authentication:**\n- User Token (via `Authorization: Bearer <token>`)\n- API Key (via `X-API-Key: <key>` or `Authorization: Bearer <key>`)\n\nAll endpoints in this document support both authentication methods unless otherwise noted.\n",
    "version": "4.9.5",
    "contact": {
      "name": "LangBot",
      "url": "https://langbot.app"
    },
    "license": {
      "name": "AGPL-3.0",
      "url": "https://github.com/langbot-app/LangBot/blob/master/LICENSE"
    }
  },
  "servers": [
    {
      "url": "http://localhost:5300",
      "description": "Local development server"
    }
  ],
  "security": [
    {
      "ApiKeyAuth": []
    },
    {
      "BearerAuth": []
    }
  ],
  "paths": {
    "/api/v1/provider/providers": {
      "post": {
        "tags": [
          "Model Providers"
        ],
        "summary": "创建供应商",
        "description": "创建一个新的模型供应商。",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ModelProviderCreate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "创建成功",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "type": "integer",
                      "example": 0
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "uuid": {
                          "type": "string",
                          "format": "uuid"
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "ModelProviderCreate": {
        "type": "object",
        "required": [
          "name",
          "requester",
          "base_url"
        ],
        "properties": {
          "name": {
            "type": "string",
            "example": "OpenAI"
          },
          "requester": {
            "type": "string",
            "description": "请求器类型。可通过 GET /api/v1/provider/requesters 获取可用列表。",
            "example": "openai-chat-completions"
          },
          "base_url": {
            "type": "string",
            "example": "https://api.openai.com/v1"
          },
          "api_keys": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "example": [
              "sk-xxx"
            ]
          }
        }
      }
    },
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "X-API-Key"
      },
      "BearerAuth": {
        "type": "http",
        "scheme": "bearer"
      }
    }
  }
}
```
