> **Experimental**
>
> `@aws-cdk/aws-bedrock-agentcore-alpha` is an [**experimental**](/stability) (alpha) package: its API may change in any release, without a major version bump.
# ApiKeyCredentialProviderResourceProps

Properties for a new {@link ApiKeyCredentialProvider} (Token Vault resource).

Extends: ApiKeyCredentialProviderResourceProps
Used as props by: ApiKeyCredentialProvider

- Source: [`lib/identity/api-key-credential-provider.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0-alpha.0/packages/@aws-cdk/aws-bedrock-agentcore-alpha/lib/identity/api-key-credential-provider.ts#L124)

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as bedrock_agentcore_alpha from '@aws-cdk/aws-bedrock-agentcore-alpha';
import * as cdk from 'aws-cdk-lib';

declare const secretValue: cdk.SecretValue;
const apiKeyCredentialProviderResourceProps: bedrock_agentcore_alpha.ApiKeyCredentialProviderResourceProps = {
  apiKey: secretValue,
  apiKeyCredentialProviderName: 'apiKeyCredentialProviderName',
  tags: {
    tagsKey: 'tags',
  },
};
```

## Properties

- `apiKey`: [SecretValue](/cdk/api/v2/docs/aws-cdk-lib.SecretValue.html) — The API key value.

  **Default:** no key in template (provider may still be created depending on service behavior)

  **NOTE:** The API key will be included in the CloudFormation template as part of synthesis.
  The service stores the key in Secrets Manager after creation, but the value is visible
  in the template and deployment history. Use `SecretValue.unsafePlainText()` to explicitly
  acknowledge plaintext, or pass a reference from another construct to avoid embedding the
  literal value.

  If omitted, you can supply the key through another mechanism supported by the service.

- `apiKeyCredentialProviderName`: string — Name of the credential provider.

  **Default:** a name generated by CDK

- `tags`: { [key: string]: string } — Tags for this credential provider.

  **Default:** no tags
