# 13 New Parameter Store Data Types: Bad Config Values Get Rejected Before They're Saved

Hi, it's Shii-chan!

Typing a wrong config value and only finding out in production hurts, right? Today's news helps prevent that.

## What was announced?

In AWS's What's New feed, AWS Systems Manager Parameter Store now supports 13 new parameter data types.

Values are validated automatically when you create or update a parameter. Malformed values such as an invalid IP address, AWS account ID, or JSON document are stopped before your applications read them, and you don't have to write your own validation logic.

## What changes

- Invalid values are rejected when you call `PutParameter`
- You can filter by data type in the `DescribeParameters` API and in the console
- You can change the data type of an existing text parameter

## Dive Deep

**Available data types**

These 10 work for both standard and advanced parameters:

- `aws:region`
- `aws:account:id`
- `boolean`
- `integer`
- `float`
- `binary`
- `hostname`
- `email`
- `ipv4-address`
- `ipv6-address`

These 3 are for advanced parameters only:

- `url`
- `json`
- `jsonc`

**Other rules**

- They work with String and SecureString parameters
- Several types also support StringList, where each list item is validated (the announcement doesn't say which ones)
- You can combine a data type with `AllowedPattern` for extra constraints
- Available in all Regions where Systems Manager is available
- `url`, `json`, and `jsonc` are charged at existing advanced parameter pricing

The announcement doesn't cover per-type validation details or size limits. See the Parameter data types page in the AWS Systems Manager User Guide.

## Wrap-up

- 13 new data types (10 shared, 3 advanced-only)
- Validation happens at `PutParameter`, and mismatched values are rejected
- You can filter by type and combine with `AllowedPattern`
- Existing text parameters can change type

This is for anyone who has been bitten by a config typo, or who writes their own validation!
