---
title: "POST /resourceconfigurations"
method: POST
path: "/resourceconfigurations"
---

# POST /resourceconfigurations

`POST /resourceconfigurations`

Creates a resource configuration. A resource configuration defines a specific resource. You can associate a resource configuration with a service network or a VPC endpoint.

## Request body

- object
  - `name` string, required — The name of the resource configuration. The name must be unique within the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen.
  - `type` 'GROUP' | 'CHILD' | 'SINGLE' | 'ARN', required — <p>The type of resource configuration. A resource configuration can be one of the following types:</p> <ul> <li> <p> <b>SINGLE</b> - A single resource.</p> </li> <li> <p> <b>GROUP</b> - A group of resources. You must create a group resource configuration before you create a child resource configuration.</p> </li> <li> <p> <b>CHILD</b> - A single resource that is part of a group resource configuration.</p> </li> <li> <p> <b>ARN</b> - An Amazon Web Services resource.</p> </li> </ul>
  - `portRanges` PortRange[] — (SINGLE, GROUP, CHILD) The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30).
  - `protocol` 'TCP' — (SINGLE, GROUP) The protocol accepted by the resource configuration.
  - `resourceGatewayIdentifier` string — (SINGLE, GROUP, ARN) The ID or ARN of the resource gateway used to connect to the resource configuration. For a child resource configuration, this value is inherited from the parent resource configuration.
  - `resourceConfigurationGroupIdentifier` string — (CHILD) The ID or ARN of the parent resource configuration of type <code>GROUP</code>. This is used to associate a child resource configuration with a group resource configuration.
  - `resourceConfigurationDefinition` object — Describes a resource configuration.
    - `dnsResource` object — The DNS name of the resource.
      - `domainName` string — The domain name of the resource.
      - `ipAddressType` 'IPV4' | 'IPV6' | 'DUALSTACK' — The type of IP address. Dualstack is currently not supported.
    - `ipResource` object — The IP resource.
      - `ipAddress` string — The IP address of the IP resource.
    - `arnResource` object — The Amazon Resource Name (ARN) of the resource.
      - `arn` string — The Amazon Resource Name (ARN) of the resource.
  - `allowAssociationToShareableServiceNetwork` boolean — (SINGLE, GROUP, ARN) Specifies whether the resource configuration can be associated with a sharable service network. The default is false.
  - `customDomainName` string — A custom domain name for your resource configuration. Additionally, provide a DomainVerificationID to prove your ownership of a domain.
  - `groupDomain` string — (GROUP) The group domain for a group resource configuration. Any domains that you create for the child resource are subdomains of the group domain. Child resources inherit the verification status of the domain.
  - `domainVerificationIdentifier` string — The domain verification ID of your verified custom domain name. If you don't provide an ID, you must configure the DNS settings yourself.
  - `clientToken` string — A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.
  - `tags` object — The tags for the resource configuration.

## Response `201`

Success

- CreateResourceConfigurationResponse
  - `id` string — The ID of the resource configuration.
  - `name` string — The name of the resource configuration.
  - `arn` string — The Amazon Resource Name (ARN) of the resource configuration.
  - `resourceGatewayId` string — The ID of the resource gateway associated with the resource configuration.
  - `resourceConfigurationGroupId` string — The ID of the parent resource configuration of type <code>GROUP</code>.
  - `type` 'GROUP' | 'CHILD' | 'SINGLE' | 'ARN' — <p>The type of resource configuration. A resource configuration can be one of the following types:</p> <ul> <li> <p> <b>SINGLE</b> - A single resource.</p> </li> <li> <p> <b>GROUP</b> - A group of resources. You must create a group resource configuration before you create a child resource configuration.</p> </li> <li> <p> <b>CHILD</b> - A single resource that is part of a group resource configuration.</p> </li> <li> <p> <b>ARN</b> - An Amazon Web Services resource.</p> </li> </ul>
  - `portRanges` PortRange[] — The port range.
  - `protocol` 'TCP' — The protocol.
  - `status` 'ACTIVE' | 'CREATE_IN_PROGRESS' | 'UPDATE_IN_PROGRESS' | 'DELETE_IN_PROGRESS' | 'CREATE_FAILED' | 'UPDATE_FAILED' | 'DELETE_FAILED' — The current status of the resource configuration.
  - `resourceConfigurationDefinition` object — <p>Identifies the resource configuration in one of the following ways:</p> <ul> <li> <p> <b>Amazon Resource Name (ARN)</b> - Supported resource-types that are provisioned by Amazon Web Services services, such as RDS databases, can be identified by their ARN.</p> </li> <li> <p> <b>Domain name</b> - Any domain name that is publicly resolvable.</p> </li> <li> <p> <b>IP address</b> - For IPv4 and IPv6, only IP addresses in the VPC are supported.</p> </li> </ul>
    - `dnsResource` object — The DNS name of the resource.
      - `domainName` string — The domain name of the resource.
      - `ipAddressType` 'IPV4' | 'IPV6' | 'DUALSTACK' — The type of IP address. Dualstack is currently not supported.
    - `ipResource` object — The IP resource.
      - `ipAddress` string — The IP address of the IP resource.
    - `arnResource` object — The Amazon Resource Name (ARN) of the resource.
      - `arn` string — The Amazon Resource Name (ARN) of the resource.
  - `allowAssociationToShareableServiceNetwork` boolean — Specifies whether the resource configuration can be associated with a sharable service network.
  - `createdAt` string, date-time — The date and time that the resource configuration was created, in ISO-8601 format.
  - `failureReason` string — The reason that the request failed.
  - `customDomainName` string — The custom domain name for your resource configuration.
  - `domainVerificationId` string — The domain name verification ID.
  - `groupDomain` string — (GROUP) The group domain for a group resource configuration. Any domains that you create for the child resource are subdomains of the group domain. Child resources inherit the verification status of the domain.
  - `domainVerificationArn` string — The verification ID ARN

## Other responses

- `480` — ValidationException
- `481` — AccessDeniedException
- `482` — ConflictException
- `483` — ResourceNotFoundException
- `484` — ThrottlingException
- `485` — ServiceQuotaExceededException
- `486` — InternalServerException

---

[API](https://skmtc.net/aws/apis/vpc-lattice.md) · [All operations](https://skmtc.net/aws/apis/vpc-lattice/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/aws/vpc-lattice/versions/bbec5439e0f7/schema)
