---
title: "Update a secret provider from a form"
method: POST
path: "/api/v1/secret_providers/{id}/form"
tags: ["Secret providers"]
---

# Update a secret provider from a form

`POST /api/v1/secret_providers/{id}/form`

## Request

- Base URL: `https://pcp.example.com`
- URL: `https://pcp.example.com/api/v1/secret_providers/{id}/form`
- Auth: HTTP bearer

Validates a configuration document against the provider's form schema and stores a new revision. Stored keys the schema does not show are kept.

## Path parameters

- `id` string, required

## Request body

- SaveSecretProviderFormRequest: SaveSecretProviderFormRequest schema
  - `configuration` object
  - `integration` object
    - `id` string, uuid
  - `name` string
  - `protocol` string

## Response `200`

OK

- SaveSecretProviderFormResponse: SaveSecretProviderFormResponse schema
  - `configuration` object
  - `id` string, uuid

## Other responses

- `400`: Bad Request _(validation or deserialization error)_
- `401`: Missing, invalid or expired credentials
- `403`: The caller may not do this
- `500`: Internal Server Error _(panics)_
- `default`

---

[API](https://skmtc.dev/plakar/apis/plakar-control-plane-api-v1.md) - [All operations](https://skmtc.dev/plakar/apis/plakar-control-plane-api-v1/llms.txt) - [OpenAPI document](https://skmtc.dev/plakar/apis/plakar-control-plane-api-v1/revisions/2ac049494a01?raw)
