Class CreateApiRequest
- java.lang.Object
-
- software.amazon.awssdk.core.SdkRequest
-
- software.amazon.awssdk.awscore.AwsRequest
-
- software.amazon.awssdk.services.apigatewayv2.model.ApiGatewayV2Request
-
- software.amazon.awssdk.services.apigatewayv2.model.CreateApiRequest
-
- All Implemented Interfaces:
SdkPojo,ToCopyableBuilder<CreateApiRequest.Builder,CreateApiRequest>
@Generated("software.amazon.awssdk:codegen") public final class CreateApiRequest extends ApiGatewayV2Request implements ToCopyableBuilder<CreateApiRequest.Builder,CreateApiRequest>
Creates a new Api resource to represent an API.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceCreateApiRequest.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description StringapiKeySelectionExpression()An API key selection expression.static CreateApiRequest.Builderbuilder()CorscorsConfiguration()A CORS configuration.StringcredentialsArn()This property is part of quick create.Stringdescription()The description of the API.BooleandisableExecuteApiEndpoint()Specifies whether clients can invoke your API by using the default execute-api endpoint.BooleandisableSchemaValidation()Avoid validating models when creating a deployment.booleanequals(Object obj)booleanequalsBySdkFields(Object obj)<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)inthashCode()booleanhasTags()For responses, this returns true if the service returned a value for the Tags property.Stringname()The name of the API.ProtocolTypeprotocolType()The API protocol.StringprotocolTypeAsString()The API protocol.StringrouteKey()This property is part of quick create.StringrouteSelectionExpression()The route selection expression for the API.List<SdkField<?>>sdkFields()static Class<? extends CreateApiRequest.Builder>serializableBuilderClass()Map<String,String>tags()The collection of tags.Stringtarget()This property is part of quick create.CreateApiRequest.BuildertoBuilder()StringtoString()Returns a string representation of this object.Stringversion()A version identifier for the API.-
Methods inherited from class software.amazon.awssdk.awscore.AwsRequest
overrideConfiguration
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
apiKeySelectionExpression
public final String apiKeySelectionExpression()
An API key selection expression. Supported only for WebSocket APIs. See API Key Selection Expressions.
- Returns:
- An API key selection expression. Supported only for WebSocket APIs. See API Key Selection Expressions.
-
corsConfiguration
public final Cors corsConfiguration()
A CORS configuration. Supported only for HTTP APIs. See Configuring CORS for more information.
- Returns:
- A CORS configuration. Supported only for HTTP APIs. See Configuring CORS for more information.
-
credentialsArn
public final String credentialsArn()
This property is part of quick create. It specifies the credentials required for the integration, if any. For a Lambda integration, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, specify null. Currently, this property is not used for HTTP integrations. Supported only for HTTP APIs.
- Returns:
- This property is part of quick create. It specifies the credentials required for the integration, if any. For a Lambda integration, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, specify null. Currently, this property is not used for HTTP integrations. Supported only for HTTP APIs.
-
description
public final String description()
The description of the API.
- Returns:
- The description of the API.
-
disableSchemaValidation
public final Boolean disableSchemaValidation()
Avoid validating models when creating a deployment. Supported only for WebSocket APIs.
- Returns:
- Avoid validating models when creating a deployment. Supported only for WebSocket APIs.
-
disableExecuteApiEndpoint
public final Boolean disableExecuteApiEndpoint()
Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.
- Returns:
- Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.
-
name
public final String name()
The name of the API.
- Returns:
- The name of the API.
-
protocolType
public final ProtocolType protocolType()
The API protocol.
If the service returns an enum value that is not available in the current SDK version,
protocolTypewill returnProtocolType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromprotocolTypeAsString().- Returns:
- The API protocol.
- See Also:
ProtocolType
-
protocolTypeAsString
public final String protocolTypeAsString()
The API protocol.
If the service returns an enum value that is not available in the current SDK version,
protocolTypewill returnProtocolType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromprotocolTypeAsString().- Returns:
- The API protocol.
- See Also:
ProtocolType
-
routeKey
public final String routeKey()
This property is part of quick create. If you don't specify a routeKey, a default route of $default is created. The $default route acts as a catch-all for any request made to your API, for a particular stage. The $default route key can't be modified. You can add routes after creating the API, and you can update the route keys of additional routes. Supported only for HTTP APIs.
- Returns:
- This property is part of quick create. If you don't specify a routeKey, a default route of $default is created. The $default route acts as a catch-all for any request made to your API, for a particular stage. The $default route key can't be modified. You can add routes after creating the API, and you can update the route keys of additional routes. Supported only for HTTP APIs.
-
routeSelectionExpression
public final String routeSelectionExpression()
The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.
- Returns:
- The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.
-
hasTags
public final boolean hasTags()
For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
tags
public final Map<String,String> tags()
The collection of tags. Each tag element is associated with a given resource.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasTags()method.- Returns:
- The collection of tags. Each tag element is associated with a given resource.
-
target
public final String target()
This property is part of quick create. Quick create produces an API with an integration, a default catch-all route, and a default stage which is configured to automatically deploy changes. For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN. The type of the integration will be HTTP_PROXY or AWS_PROXY, respectively. Supported only for HTTP APIs.
- Returns:
- This property is part of quick create. Quick create produces an API with an integration, a default catch-all route, and a default stage which is configured to automatically deploy changes. For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN. The type of the integration will be HTTP_PROXY or AWS_PROXY, respectively. Supported only for HTTP APIs.
-
version
public final String version()
A version identifier for the API.
- Returns:
- A version identifier for the API.
-
toBuilder
public CreateApiRequest.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<CreateApiRequest.Builder,CreateApiRequest>- Specified by:
toBuilderin classApiGatewayV2Request
-
builder
public static CreateApiRequest.Builder builder()
-
serializableBuilderClass
public static Class<? extends CreateApiRequest.Builder> serializableBuilderClass()
-
hashCode
public final int hashCode()
- Overrides:
hashCodein classAwsRequest
-
equals
public final boolean equals(Object obj)
- Overrides:
equalsin classAwsRequest
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
getValueForField
public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
- Overrides:
getValueForFieldin classSdkRequest
-
-