Amazon AppConfig

App · Cloud Computing · 20 actions

Manage application configuration and feature flags in AWS AppConfig from a workflow: create applications, environments and configuration profiles, save new configuration versions, roll them out with a deployment strategy, watch or stop the rollout, and read the configuration your applications currently receive.

Actions

ActionWhat it does
Create a configuration profileCreate a configuration profile in AppConfig's hosted store.
Create a hosted configuration versionSave new content for a hosted configuration profile as its next version.
Create an applicationCreate an AppConfig application: the container for a service's environments and configuration profiles.
Create an environmentCreate an environment in an application, such as production or beta: a group of targets a configuration is deployed to.
Delete a configuration profilePermanently delete a configuration profile.
Delete a hosted configuration versionPermanently delete one saved version of a hosted configuration.
Delete an applicationPermanently delete an AppConfig application.
Delete an environmentPermanently delete an environment.
Get a deploymentGet a deployment's state, progress and event log, for example to check whether it has completed.
Get a hosted configuration versionGet one saved version of a hosted configuration, with its content as text and, for JSON, parsed.
Get an applicationGet one AppConfig application's ID, name and description.
Get the latest configurationGet the configuration currently deployed to an environment, as your applications receive it.
List applicationsList the AppConfig applications in the connection's region.
List configuration profilesList an application's configuration profiles.
List deployment strategiesList the deployment strategies available: AWS's predefined ones and any made in this account, with how fast each rolls out.
List deploymentsList the deployments to an environment, newest first.
List environmentsList an application's environments and their state.
List hosted configuration versionsList the saved versions of a hosted configuration profile, without their content.
Start a deploymentRoll a configuration version out to an environment using a deployment strategy.
Stop a deploymentStop a deployment that is rolling out.

Create a configuration profile

Create a configuration profile in AppConfig's hosted store. Save its content with 'Create a hosted configuration version'.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Nameprofile_nametextRequired
The profile's name, up to 128 characters.
Typeprofile_typetext
Freeform holds any configuration. Feature flags holds flags in AppConfig's feature flag format.One of: AWS.Freeform (Freeform (any JSON, YAML or text)), AWS.AppConfig.FeatureFlags (Feature flags). Default: AWS.Freeform.
Descriptiondescriptiontext
An optional description, up to 1,024 characters.
JSON Schema validatorjson_schematext
Optional JSON Schema every deployed version must match, such as {"type": "object"}. AppConfig checks it when a deployment starts.
Tagstagsobject
Optional tag names and values, such as team = platform. Up to 50 tags; names up to 128 characters, values up to 256.

Outputs

application_idtext
descriptiontext
idtext
The configuration profile ID.
kms_key_arntext
location_uritext
nametext
typetext
AWS.Freeform or AWS.AppConfig.FeatureFlags.
validator_typeslist
Example output
{
  "application_id": "abc1234",
  "description": null,
  "id": "prf9012",
  "kms_key_arn": null,
  "location_uri": "hosted",
  "name": "settings",
  "type": "AWS.Freeform",
  "validator_types": [
    "JSON_SCHEMA"
  ]
}

Create a hosted configuration version

Save new content for a hosted configuration profile as its next version. Nothing changes for your applications until you deploy it with 'Start a deployment'.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Configuration profileconfiguration_profile_idtextRequired
A configuration profile of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
ContentcontenttextRequired
The configuration. An object from an earlier step is saved as JSON. For JSON it is checked before sending.
Content typecontent_typetext
The format of the content.One of: application/json (JSON), text/plain (Plain text), application/x-yaml (YAML). Default: application/json.
Descriptiondescriptiontext
An optional note, up to 1,024 plain ASCII characters (AppConfig sends it in an HTTP header).
Version labelversion_labeltext
An optional label such as 'v1.2', which 'Start a deployment' also accepts. Up to 64 characters, not all digits.
Latest version numberlatest_version_numbernumber
Optional safety check: the version number you expect to be the newest. AWS refuses if someone saved another version since.At least 1.

Outputs

application_idtext
configuration_profile_idtext
contenttext
The configuration as text.
content_jsonobject
The configuration parsed, when its content type is JSON; null otherwise.
content_typetext
descriptiontext
kms_key_arntext
version_labeltext
version_numbernumber
Pass this as the configuration version to deploy it.
Example output
{
  "application_id": "abc1234",
  "configuration_profile_id": "prf9012",
  "content": "{\"maxItems\": 10}",
  "content_json": {
    "maxItems": 10
  },
  "content_type": "application/json",
  "description": null,
  "kms_key_arn": null,
  "version_label": "v1",
  "version_number": 1
}

Create an application

Create an AppConfig application: the container for a service's environments and configuration profiles.

Inputs

Nameapplication_nametextRequired
The application's name, up to 64 characters.
Descriptiondescriptiontext
An optional description, up to 1,024 characters.
Tagstagsobject
Optional tag names and values, such as team = platform. Up to 50 tags; names up to 128 characters, values up to 256.

Outputs

descriptiontext
idtext
The application ID.
nametext
Example output
{
  "description": "Feature flags and settings for checkout",
  "id": "abc1234",
  "name": "checkout-service"
}

Create an environment

Create an environment in an application, such as production or beta: a group of targets a configuration is deployed to.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Nameenvironment_nametextRequired
The environment's name, up to 64 characters.
Descriptiondescriptiontext
An optional description, up to 1,024 characters.
Tagstagsobject
Optional tag names and values, such as team = platform. Up to 50 tags; names up to 128 characters, values up to 256.

Outputs

application_idtext
descriptiontext
idtext
The environment ID.
monitorslist
nametext
statetext
READY_FOR_DEPLOYMENT, DEPLOYING, ROLLING_BACK, ROLLED_BACK or REVERTED.
Example output
{
  "application_id": "abc1234",
  "description": null,
  "id": "env5678",
  "monitors": [],
  "name": "production",
  "state": "READY_FOR_DEPLOYMENT"
}

Delete a configuration profile

Permanently delete a configuration profile. AWS refuses while it still has hosted configuration versions; delete those first.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Configuration profileconfiguration_profile_idtextRequired
A configuration profile of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Delete even if in usedelete_even_if_in_usetrue/false
AppConfig refuses to delete this while an application has fetched its configuration in the last 60 minutes. Tick to delete it anyway.Default: false.

Outputs

application_idtext
configuration_profile_idtext
deletedtrue/false
Example output
{
  "application_id": "abc1234",
  "configuration_profile_id": "prf9012",
  "deleted": true
}

Delete a hosted configuration version

Permanently delete one saved version of a hosted configuration.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Configuration profileconfiguration_profile_idtextRequired
A configuration profile of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Version numberversion_numbernumberRequired
The hosted configuration version's number. 'List hosted configuration versions' shows them.At least 1.

Outputs

application_idtext
configuration_profile_idtext
deletedtrue/false
version_numbernumber
Example output
{
  "application_id": "abc1234",
  "configuration_profile_id": "prf9012",
  "deleted": true,
  "version_number": 1
}

Delete an application

Permanently delete an AppConfig application. AWS refuses while it still has environments or configuration profiles; delete those first.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.

Outputs

application_idtext
deletedtrue/false
Example output
{
  "application_id": "abc1234",
  "deleted": true
}

Delete an environment

Permanently delete an environment. AWS refuses while a deployment to it is in progress.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Environmentenvironment_idtextRequired
An environment of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Delete even if in usedelete_even_if_in_usetrue/false
AppConfig refuses to delete this while an application has fetched its configuration in the last 60 minutes. Tick to delete it anyway.Default: false.

Outputs

application_idtext
deletedtrue/false
environment_idtext
Example output
{
  "application_id": "abc1234",
  "deleted": true,
  "environment_id": "env5678"
}

Get a deployment

Get a deployment's state, progress and event log, for example to check whether it has completed.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Environmentenvironment_idtextRequired
An environment of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Deployment numberdeployment_numbernumberRequired
The deployment's number within the environment. 'List deployments' shows them, newest first.At least 1.

Outputs

application_idtext
completed_attext
configuration_location_uritext
configuration_nametext
configuration_profile_idtext
configuration_versiontext
deployment_duration_in_minutesnumber
deployment_numbernumber
deployment_strategy_idtext
descriptiontext
environment_idtext
event_loglist
final_bake_time_in_minutesnumber
growth_factornumber
growth_typetext
percentage_completenumber
started_attext
statetext
BAKING, VALIDATING, DEPLOYING, COMPLETE, ROLLING_BACK, ROLLED_BACK or REVERTED.
version_labeltext
Example output
{
  "application_id": "abc1234",
  "completed_at": null,
  "configuration_location_uri": "hosted",
  "configuration_name": "settings",
  "configuration_profile_id": "prf9012",
  "configuration_version": "1",
  "deployment_duration_in_minutes": 0,
  "deployment_number": 1,
  "deployment_strategy_id": "AppConfig.AllAtOnce",
  "description": null,
  "environment_id": "env5678",
  "event_log": [
    {
      "description": "Deployment started",
      "event_type": "DEPLOYMENT_STARTED",
      "occurred_at": "2026-09-28T09:00:00+00:00",
      "triggered_by": "USER"
    }
  ],
  "final_bake_time_in_minutes": 10,
  "growth_factor": 100.0,
  "growth_type": "LINEAR",
  "percentage_complete": 100.0,
  "started_at": "2026-09-28T09:00:00+00:00",
  "state": "BAKING",
  "version_label": "v1"
}

Get a hosted configuration version

Get one saved version of a hosted configuration, with its content as text and, for JSON, parsed.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Configuration profileconfiguration_profile_idtextRequired
A configuration profile of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Version numberversion_numbernumberRequired
The hosted configuration version's number. 'List hosted configuration versions' shows them.At least 1.

Outputs

application_idtext
configuration_profile_idtext
contenttext
The configuration as text.
content_jsonobject
The configuration parsed, when its content type is JSON; null otherwise.
content_typetext
descriptiontext
kms_key_arntext
version_labeltext
version_numbernumber
Pass this as the configuration version to deploy it.
Example output
{
  "application_id": "abc1234",
  "configuration_profile_id": "prf9012",
  "content": "{\"maxItems\": 10}",
  "content_json": {
    "maxItems": 10
  },
  "content_type": "application/json",
  "description": null,
  "kms_key_arn": null,
  "version_label": "v1",
  "version_number": 1
}

Get an application

Get one AppConfig application's ID, name and description.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.

Outputs

descriptiontext
idtext
The application ID.
nametext
Example output
{
  "description": "Feature flags and settings for checkout",
  "id": "abc1234",
  "name": "checkout-service"
}

Get the latest configuration

Get the configuration currently deployed to an environment, as your applications receive it. AWS charges for each configuration received.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Environmentenvironment_idtextRequired
An environment of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Configuration profileconfiguration_profile_idtextRequired
A configuration profile of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.

Outputs

application_idtext
configuration_profile_idtext
contenttext
The configuration as text.
content_jsonobject
The configuration parsed, when its content type is JSON; null otherwise.
content_typetext
environment_idtext
version_labeltext
Example output
{
  "application_id": "abc1234",
  "configuration_profile_id": "prf9012",
  "content": "{\"maxItems\": 10}",
  "content_json": {
    "maxItems": 10
  },
  "content_type": "application/json",
  "environment_id": "env5678",
  "version_label": "v1"
}

List applications

List the AppConfig applications in the connection's region.

Inputs

Max resultsmax_resultsnumber
How many to return in one page, from 1 to 50.From 1 to 50. Default: 50.
Next tokennext_tokentext
To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.

Outputs

applicationslist
countnumber
next_tokentext
Pass this as 'Next token' to fetch the next page. Null on the last page.
Example output
{
  "applications": [
    {
      "description": "Feature flags and settings for checkout",
      "id": "abc1234",
      "name": "checkout-service"
    }
  ],
  "count": 1,
  "next_token": null
}

List configuration profiles

List an application's configuration profiles.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Typeprofile_typetext
Only list profiles of this type. Leave empty for all.One of: AWS.Freeform (Freeform (any JSON, YAML or text)), AWS.AppConfig.FeatureFlags (Feature flags).
Max resultsmax_resultsnumber
How many to return in one page, from 1 to 50.From 1 to 50. Default: 50.
Next tokennext_tokentext
To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.

Outputs

configuration_profileslist
countnumber
next_tokentext
Pass this as 'Next token' to fetch the next page. Null on the last page.
Example output
{
  "configuration_profiles": [
    {
      "application_id": "abc1234",
      "id": "prf9012",
      "location_uri": "hosted",
      "name": "settings",
      "type": "AWS.Freeform",
      "validator_types": [
        "JSON_SCHEMA"
      ]
    }
  ],
  "count": 1,
  "next_token": null
}

List deployment strategies

List the deployment strategies available: AWS's predefined ones and any made in this account, with how fast each rolls out.

Inputs

Max resultsmax_resultsnumber
How many to return in one page, from 1 to 50.From 1 to 50. Default: 50.
Next tokennext_tokentext
To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.

Outputs

countnumber
deployment_strategieslist
next_tokentext
Pass this as 'Next token' to fetch the next page. Null on the last page.
Example output
{
  "count": 1,
  "deployment_strategies": [
    {
      "deployment_duration_in_minutes": 0,
      "description": "Quick",
      "final_bake_time_in_minutes": 10,
      "growth_factor": 100.0,
      "growth_type": "LINEAR",
      "id": "AppConfig.AllAtOnce",
      "name": "AppConfig.AllAtOnce",
      "replicate_to": "NONE"
    }
  ],
  "next_token": null
}

List deployments

List the deployments to an environment, newest first.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Environmentenvironment_idtextRequired
An environment of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Max resultsmax_resultsnumber
How many to return in one page, from 1 to 50.From 1 to 50. Default: 50.
Next tokennext_tokentext
To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.

Outputs

countnumber
deploymentslist
next_tokentext
Pass this as 'Next token' to fetch the next page. Null on the last page.
Example output
{
  "count": 1,
  "deployments": [
    {
      "completed_at": null,
      "configuration_name": "settings",
      "configuration_profile_id": "prf9012",
      "configuration_version": "1",
      "deployment_duration_in_minutes": 0,
      "deployment_number": 1,
      "final_bake_time_in_minutes": 10,
      "growth_factor": 100.0,
      "growth_type": "LINEAR",
      "percentage_complete": 100.0,
      "started_at": "2026-09-28T09:00:00+00:00",
      "state": "BAKING",
      "type": "USER",
      "version_label": "v1"
    }
  ],
  "next_token": null
}

List environments

List an application's environments and their state.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Max resultsmax_resultsnumber
How many to return in one page, from 1 to 50.From 1 to 50. Default: 50.
Next tokennext_tokentext
To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.

Outputs

countnumber
environmentslist
next_tokentext
Pass this as 'Next token' to fetch the next page. Null on the last page.
Example output
{
  "count": 1,
  "environments": [
    {
      "application_id": "abc1234",
      "description": null,
      "id": "env5678",
      "monitors": [],
      "name": "production",
      "state": "READY_FOR_DEPLOYMENT"
    }
  ],
  "next_token": null
}

List hosted configuration versions

List the saved versions of a hosted configuration profile, without their content.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Configuration profileconfiguration_profile_idtextRequired
A configuration profile of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Version labelversion_labeltext
Only list versions with this label. Leave empty for all.
Max resultsmax_resultsnumber
How many to return in one page, from 1 to 50.From 1 to 50. Default: 50.
Next tokennext_tokentext
To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.

Outputs

countnumber
next_tokentext
Pass this as 'Next token' to fetch the next page. Null on the last page.
versionslist
Example output
{
  "count": 1,
  "next_token": null,
  "versions": [
    {
      "application_id": "abc1234",
      "configuration_profile_id": "prf9012",
      "content_type": "application/json",
      "description": null,
      "kms_key_arn": null,
      "version_label": "v1",
      "version_number": 1
    }
  ]
}

Start a deployment

Roll a configuration version out to an environment using a deployment strategy. Only one deployment runs per environment at a time.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Environmentenvironment_idtextRequired
An environment of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Configuration profileconfiguration_profile_idtextRequired
A configuration profile of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Configuration versionconfiguration_versiontextRequired
For a hosted profile, the version number or version label to deploy.
Deployment strategydeployment_strategy_idtextRequired
How fast to roll out. Pick one, or give a strategy ID. AppConfig.AllAtOnce deploys at once and watches for 10 minutes; AppConfig.Linear20PercentEvery6Minutes is AWS's recommended gradual rollout.
Descriptiondescriptiontext
An optional description, up to 1,024 characters.

Outputs

application_idtext
completed_attext
configuration_location_uritext
configuration_nametext
configuration_profile_idtext
configuration_versiontext
deployment_duration_in_minutesnumber
deployment_numbernumber
deployment_strategy_idtext
descriptiontext
environment_idtext
event_loglist
final_bake_time_in_minutesnumber
growth_factornumber
growth_typetext
percentage_completenumber
started_attext
statetext
BAKING, VALIDATING, DEPLOYING, COMPLETE, ROLLING_BACK, ROLLED_BACK or REVERTED.
version_labeltext
Example output
{
  "application_id": "abc1234",
  "completed_at": null,
  "configuration_location_uri": "hosted",
  "configuration_name": "settings",
  "configuration_profile_id": "prf9012",
  "configuration_version": "1",
  "deployment_duration_in_minutes": 0,
  "deployment_number": 1,
  "deployment_strategy_id": "AppConfig.AllAtOnce",
  "description": null,
  "environment_id": "env5678",
  "event_log": [
    {
      "description": "Deployment started",
      "event_type": "DEPLOYMENT_STARTED",
      "occurred_at": "2026-09-28T09:00:00+00:00",
      "triggered_by": "USER"
    }
  ],
  "final_bake_time_in_minutes": 10,
  "growth_factor": 100.0,
  "growth_type": "LINEAR",
  "percentage_complete": 100.0,
  "started_at": "2026-09-28T09:00:00+00:00",
  "state": "BAKING",
  "version_label": "v1"
}

Stop a deployment

Stop a deployment that is rolling out. With 'Roll back' ticked it also works while the deployment bakes, and on a completed one up to 72 hours later, returning the environment to the previous configuration.

Inputs

Applicationapplication_idtextRequired
The AppConfig application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Environmentenvironment_idtextRequired
An environment of that application. Pick one, or give its ID, its name, its ARN, or the link to its page in the AppConfig console.
Deployment numberdeployment_numbernumberRequired
The deployment's number within the environment. 'List deployments' shows them, newest first.At least 1.
Roll backallow_reverttrue/false
Also roll back: an in-progress deployment ends ROLLED_BACK and a completed one REVERTED. Without it only a deployment that is still DEPLOYING can be stopped.Default: false.

Outputs

application_idtext
completed_attext
configuration_location_uritext
configuration_nametext
configuration_profile_idtext
configuration_versiontext
deployment_duration_in_minutesnumber
deployment_numbernumber
deployment_strategy_idtext
descriptiontext
environment_idtext
event_loglist
final_bake_time_in_minutesnumber
growth_factornumber
growth_typetext
percentage_completenumber
started_attext
statetext
BAKING, VALIDATING, DEPLOYING, COMPLETE, ROLLING_BACK, ROLLED_BACK or REVERTED.
version_labeltext
Example output
{
  "application_id": "abc1234",
  "completed_at": null,
  "configuration_location_uri": "hosted",
  "configuration_name": "settings",
  "configuration_profile_id": "prf9012",
  "configuration_version": "1",
  "deployment_duration_in_minutes": 0,
  "deployment_number": 1,
  "deployment_strategy_id": "AppConfig.AllAtOnce",
  "description": null,
  "environment_id": "env5678",
  "event_log": [
    {
      "description": "Deployment started",
      "event_type": "DEPLOYMENT_STARTED",
      "occurred_at": "2026-09-28T09:00:00+00:00",
      "triggered_by": "USER"
    }
  ],
  "final_bake_time_in_minutes": 10,
  "growth_factor": 100.0,
  "growth_type": "LINEAR",
  "percentage_complete": 100.0,
  "started_at": "2026-09-28T09:00:00+00:00",
  "state": "ROLLED_BACK",
  "version_label": "v1"
}

On this page