Claude Platform Docs

验证外部密钥

client.Beta.Organization.ExternalKeys.Validate(ctx, externalKeyID) (*BetaOrganizationExternalKeyValidateResponse, error)
POST/v1/organizations/external_keys/{external_key_id}/validate

针对客户的 KMS 验证外部密钥配置。

Anthropic 会使用所配置的 KMS 密钥执行一次加密/解密往返操作,并最多等待 30 秒获取结果。如果往返操作成功,响应状态为 success;如果失败或超时,则为 failure 并附带错误消息。

Parameters
externalKeyID string⁠Path parameter

ID of the External Key.

maxLength2048
Returns
type BetaOrganizationExternalKeyValidateResponse struct { Type: "external_key_validation"; Error; Status }

Result of a validation roundtrip against the customer's KMS.

HTTP 200 for both outcomes — the operation completed; status says whether the key works.

Type ExternalKeyValidation
defaultexternal_key_validation
Error string

Error message when status is failure. Null otherwise.

Status BetaOrganizationExternalKeyValidateResponseStatus

success — encrypt/decrypt roundtrip succeeded. failure — the roundtrip failed or timed out; see error.

One of the following:
const BetaOrganizationExternalKeyValidateResponseStatusFailure BetaOrganizationExternalKeyValidateResponseStatus = "failure"
const BetaOrganizationExternalKeyValidateResponseStatusSuccess BetaOrganizationExternalKeyValidateResponseStatus = "success"
验证外部密钥
package main

import (
	"context"
	"fmt"

	"github.com/anthropics/anthropic-sdk-go"
	"github.com/anthropics/anthropic-sdk-go/option"
)

func main() {
	client := anthropic.NewClient(
		option.WithAPIKey("my-anthropic-api-key"),
	)
	response, err := client.Beta.Organization.ExternalKeys.Validate(context.TODO(), "external_key_id")
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", response.Error)
}
Returns Examples
Response 200
{
  "error": "error",
  "status": "failure",
  "type": "external_key_validation"
}