Claude Platform Docs

Validate External Key

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

Validate an external key config against the customer's KMS.

Anthropic performs an encrypt/decrypt roundtrip against the configured KMS key and waits up to 30 seconds for the result. The response status is success if the roundtrip succeeded, or failure with an error message if it failed or timed out.

Parameters
externalKeyID string

ID of the External Key.

maxLength2048
Returns
type BetaOrganizationExternalKeyValidateResponse struct{…}

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

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

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"
Type ExternalKeyValidation
defaultexternal_key_validation

Validate External Key

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)
}
{
  "error": "error",
  "status": "failure",
  "type": "external_key_validation"
}
Returns Examples
{
  "error": "error",
  "status": "failure",
  "type": "external_key_validation"
}