Skip to content

create_domain_name

create_domain_name(
    *,
    config_overrides: Optional[ApiGatewayV2ClientConfig] = None,
    domain_name: Optional[StringWithLengthBetween1And512] = None,
    domain_name_configurations: Optional[DomainNameConfigurations] = None,
    mutual_tls_authentication: Optional[MutualTlsAuthenticationInput] = None,
    routing_mode: Optional[RoutingMode] = None,
    tags: Optional[Tags] = None,
) -> CreateDomainNameResponse

Creates a domain name.

Parameters:

Raises:

  • BadRequestException –

    The request is not valid, for example, the input is incomplete or incorrect. See the accompanying error message for details.

  • ConflictException –

    The requested operation would cause a conflict with the current state of a service resource associated with the request. Resolve the conflict before retrying this request. See the accompanying error message for details.

  • NotFoundException –

    The resource specified in the request was not found. See the message field for more information.

  • TooManyRequestsException –

    A limit has been exceeded. See the accompanying error message for details.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_apigatewayv2/_services/api_gateway_v2.py
def create_domain_name(
    self,
    *,
    config_overrides: Optional[ApiGatewayV2ClientConfig] = None,
    domain_name: Optional[
        "capo_apigatewayv2.types.string_with_length_between1_and512.StringWithLengthBetween1And512"
    ] = None,
    domain_name_configurations: Optional[
        "capo_apigatewayv2.types.domain_name_configurations.DomainNameConfigurations"
    ] = None,
    mutual_tls_authentication: Optional[
        "capo_apigatewayv2.types.mutual_tls_authentication_input.MutualTlsAuthenticationInput"
    ] = None,
    routing_mode: Optional[
        "capo_apigatewayv2.types.routing_mode.RoutingMode"
    ] = None,
    tags: Optional["capo_apigatewayv2.types.tags.Tags"] = None,
) -> "capo_apigatewayv2.types.create_domain_name_response.CreateDomainNameResponse":
    """<p>Creates a domain name.</p>

    Args:
        domain_name: <p>The domain name.</p>
        domain_name_configurations: <p>The domain name configurations.</p>
        mutual_tls_authentication: <p>The mutual TLS authentication configuration for a custom domain name.</p>
        routing_mode: <p>The routing mode.</p>
        tags: <p>The collection of tags associated with a domain name.</p>

    Raises:
        capo_apigatewayv2.errors.access_denied_exception.AccessDeniedException
        capo_apigatewayv2.errors.bad_request_exception.BadRequestException: <p>The request is not valid, for example, the input is incomplete or incorrect. See the accompanying error message for details.</p>
        capo_apigatewayv2.errors.conflict_exception.ConflictException: <p>The requested operation would cause a conflict with the current state of a service resource associated with the request. Resolve the conflict before retrying this request. See the accompanying error message for details.</p>
        capo_apigatewayv2.errors.not_found_exception.NotFoundException: <p>The resource specified in the request was not found. See the message field for more information.</p>
        capo_apigatewayv2.errors.too_many_requests_exception.TooManyRequestsException: <p>A limit has been exceeded. See the accompanying error message for details.</p>
        capo_apigatewayv2.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_apigatewayv2.types.create_domain_name_request.CreateDomainNameRequest]",
    ) -> OperationResponse[
        "capo_apigatewayv2.types.create_domain_name_response.CreateDomainNameResponse"
    ]:
        import capo_apigatewayv2._operations.api_gateway_v2.create_domain_name

        output, http_response = (
            capo_apigatewayv2._operations.api_gateway_v2.create_domain_name.create_domain_name(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateDomainName")
    )
    input_: capo_apigatewayv2.types.create_domain_name_request.CreateDomainNameRequest = {}
    if domain_name is not None:
        input_["domain_name"] = domain_name
    if domain_name_configurations is not None:
        input_["domain_name_configurations"] = domain_name_configurations
    if mutual_tls_authentication is not None:
        input_["mutual_tls_authentication"] = mutual_tls_authentication
    if routing_mode is not None:
        input_["routing_mode"] = routing_mode
    if tags is not None:
        input_["tags"] = tags

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output