Skip to content

start_schema_merge

start_schema_merge(
    association_id: String,
    merged_api_identifier: String,
    *,
    config_overrides: Optional[AppSyncClientConfig] = None,
) -> StartSchemaMergeResponse

Initiates a merge operation. Returns a status that shows the result of the merge operation.

Parameters:

  • association_id (String) –

    The ID generated by the AppSync service for the source API association.

  • merged_api_identifier (String) –

    The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs in other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.

Raises:

  • BadRequestException –

    The request is not well formed. For example, a value is invalid or a required field is missing. Check the field values, and then try again.

  • ConcurrentModificationException –

    Another modification is in progress at this time and it must complete before you can make your change.

  • InternalFailureException –

    An internal AppSync error occurred. Try your request again.

  • NotFoundException –

    The resource specified in the request was not found. Check the resource, and then try again.

  • UnauthorizedException –

    You aren't authorized to perform this operation.

  • UnknownServiceError –

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

Source code in docs_src/capo_appsync/_services/app_sync.py
def start_schema_merge(
    self,
    association_id: "capo_appsync.types.string.String",
    merged_api_identifier: "capo_appsync.types.string.String",
    *,
    config_overrides: Optional[AppSyncClientConfig] = None,
) -> "capo_appsync.types.start_schema_merge_response.StartSchemaMergeResponse":
    """<p>Initiates a merge operation. Returns a status that shows the result of the merge operation.</p>

    Args:
        association_id: <p>The ID generated by the AppSync service for the source API association.</p>
        merged_api_identifier: <p>The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs in other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.</p>

    Raises:
        capo_appsync.errors.bad_request_exception.BadRequestException: <p>The request is not well formed. For example, a value is invalid or a required field is missing. Check the field values, and then try again.</p>
        capo_appsync.errors.concurrent_modification_exception.ConcurrentModificationException: <p>Another modification is in progress at this time and it must complete before you can make your change.</p>
        capo_appsync.errors.internal_failure_exception.InternalFailureException: <p>An internal AppSync error occurred. Try your request again.</p>
        capo_appsync.errors.not_found_exception.NotFoundException: <p>The resource specified in the request was not found. Check the resource, and then try again.</p>
        capo_appsync.errors.unauthorized_exception.UnauthorizedException: <p>You aren't authorized to perform this operation.</p>
        capo_appsync.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_appsync.types.start_schema_merge_request.StartSchemaMergeRequest]",
    ) -> OperationResponse[
        "capo_appsync.types.start_schema_merge_response.StartSchemaMergeResponse"
    ]:
        import capo_appsync._operations.aws_deepdish_control_plane_service.start_schema_merge

        output, http_response = (
            capo_appsync._operations.aws_deepdish_control_plane_service.start_schema_merge.start_schema_merge(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("StartSchemaMerge")
    )
    input_: capo_appsync.types.start_schema_merge_request.StartSchemaMergeRequest = {
        "association_id": association_id,
        "merged_api_identifier": merged_api_identifier,
    }

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