Skip to content

create_base_path_mapping

create_base_path_mapping(
    domain_name: String,
    rest_api_id: String,
    *,
    config_overrides: Optional[APIGatewayClientConfig] = None,
    domain_name_id: Optional[String] = None,
    base_path: Optional[String] = None,
    stage: Optional[String] = None,
) -> BasePathMapping

Creates a new BasePathMapping resource.

Parameters:

  • domain_name (String) –

    The domain name of the BasePathMapping resource to create.

  • domain_name_id (Optional[String], default: None ) –

    The identifier for the domain name resource. Required for private custom domain names.

  • base_path (Optional[String], default: None ) –

    The base path name that callers of the API must provide as part of the URL after the domain name. This value must be unique for all of the mappings across a single API. Specify '(none)' if you do not want callers to specify a base path name after the domain name.

  • rest_api_id (String) –

    The string identifier of the associated RestApi.

  • stage (Optional[String], default: None ) –

    The name of the API's stage that you want to use for this mapping. Specify '(none)' if you want callers to explicitly specify the stage name after any base path name.

Raises:

  • BadRequestException –

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

  • ConflictException –

    The request configuration has conflicts. For details, see the accompanying error message.

  • LimitExceededException –

    The request exceeded the rate limit. Retry after the specified time period.

  • NotFoundException –

    The requested resource is not found. Make sure that the request URI is correct.

  • TooManyRequestsException –

    The request has reached its throttling limit. Retry after the specified time period.

  • UnauthorizedException –

    The request is denied because the caller has insufficient permissions.

  • UnknownServiceError –

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

Source code in docs_src/capo_api_gateway/_services/api_gateway.py
def create_base_path_mapping(
    self,
    domain_name: "capo_api_gateway.types.string.String",
    rest_api_id: "capo_api_gateway.types.string.String",
    *,
    config_overrides: Optional[APIGatewayClientConfig] = None,
    domain_name_id: Optional["capo_api_gateway.types.string.String"] = None,
    base_path: Optional["capo_api_gateway.types.string.String"] = None,
    stage: Optional["capo_api_gateway.types.string.String"] = None,
) -> "capo_api_gateway.types.base_path_mapping.BasePathMapping":
    """<p>Creates a new BasePathMapping resource.</p>

    Args:
        domain_name: <p>The domain name of the BasePathMapping resource to create.</p>
        domain_name_id: <p>The identifier for the domain name resource. Required for private custom domain names.</p>
        base_path: <p>The base path name that callers of the API must provide as part of the URL after the domain name. This value must be unique for all of the mappings across a single API. Specify '(none)' if you do not want callers to specify a base path name after the domain name.</p>
        rest_api_id: <p>The string identifier of the associated RestApi.</p>
        stage: <p>The name of the API's stage that you want to use for this mapping. Specify '(none)' if you want callers to explicitly specify the stage name after any base path name.</p>

    Raises:
        capo_api_gateway.errors.bad_request_exception.BadRequestException: <p>The submitted request is not valid, for example, the input is incomplete or incorrect. See the accompanying error message for details.</p>
        capo_api_gateway.errors.conflict_exception.ConflictException: <p>The request configuration has conflicts. For details, see the accompanying error message.</p>
        capo_api_gateway.errors.limit_exceeded_exception.LimitExceededException: <p>The request exceeded the rate limit. Retry after the specified time period.</p>
        capo_api_gateway.errors.not_found_exception.NotFoundException: <p>The requested resource is not found. Make sure that the request URI is correct.</p>
        capo_api_gateway.errors.too_many_requests_exception.TooManyRequestsException: <p>The request has reached its throttling limit. Retry after the specified time period.</p>
        capo_api_gateway.errors.unauthorized_exception.UnauthorizedException: <p>The request is denied because the caller has insufficient permissions.</p>
        capo_api_gateway.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_api_gateway.types.create_base_path_mapping_request.CreateBasePathMappingRequest]",
    ) -> OperationResponse[
        "capo_api_gateway.types.base_path_mapping.BasePathMapping"
    ]:
        import capo_api_gateway._operations.backplane_control_service.create_base_path_mapping

        output, http_response = (
            capo_api_gateway._operations.backplane_control_service.create_base_path_mapping.create_base_path_mapping(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateBasePathMapping")
    )
    input_: capo_api_gateway.types.create_base_path_mapping_request.CreateBasePathMappingRequest = {
        "domain_name": domain_name,
        "rest_api_id": rest_api_id,
    }
    if domain_name_id is not None:
        input_["domain_name_id"] = domain_name_id
    if base_path is not None:
        input_["base_path"] = base_path
    if stage is not None:
        input_["stage"] = stage

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