Skip to content

create_ingestion async

create_ingestion(
    app_bundle_identifier: Identifier,
    app: String255,
    tenant_id: TenantIdentifier,
    ingestion_type: IngestionType,
    *,
    config_overrides: Optional[AsyncAppFabricClientConfig] = None,
    client_token: Optional[UUID] = None,
    tags: Optional[TagList] = None,
) -> CreateIngestionResponse

Creates a data ingestion for an application.

Parameters:

  • app_bundle_identifier (Identifier) –

    The Amazon Resource Name (ARN) or Universal Unique Identifier (UUID) of the app bundle to use for the request.

  • app (String255) –

    The name of the application.

    Valid values are:

    • SLACK

    • ASANA

    • JIRA

    • M365

    • M365AUDITLOGS

    • ZOOM

    • ZENDESK

    • OKTA

    • GOOGLE

    • DROPBOX

    • SMARTSHEET

    • CISCO

  • tenant_id (TenantIdentifier) –

    The ID of the application tenant.

  • ingestion_type (IngestionType) –

    The ingestion type.

  • client_token (Optional[UUID], default: None ) –

    Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value.

    If you don't provide this value, then Amazon Web Services generates a random one for you.

    If you retry the operation with the same ClientToken, but with different parameters, the retry fails with an IdempotentParameterMismatch error.

  • tags (Optional[TagList], default: None ) –

    A map of the key-value pairs of the tag or tags to assign to the resource.

Raises:

Source code in docs_src/capo_appfabric/_services/async_app_fabric.py
async def create_ingestion(
    self,
    app_bundle_identifier: "capo_appfabric.types.identifier.Identifier",
    app: "capo_appfabric.types.string255.String255",
    tenant_id: "capo_appfabric.types.tenant_identifier.TenantIdentifier",
    ingestion_type: "capo_appfabric.types.ingestion_type.IngestionType",
    *,
    config_overrides: Optional[AsyncAppFabricClientConfig] = None,
    client_token: Optional["capo_appfabric.types.uuid.UUID"] = None,
    tags: Optional["capo_appfabric.types.tag_list.TagList"] = None,
) -> "capo_appfabric.types.create_ingestion_response.CreateIngestionResponse":
    """<p>Creates a data ingestion for an application.</p>

    Args:
        app_bundle_identifier: <p>The Amazon Resource Name (ARN) or Universal Unique Identifier (UUID) of the app bundle to use for the request.</p>
        app: <p>The name of the application.</p> <p>Valid values are:</p> <ul> <li> <p> <code>SLACK</code> </p> </li> <li> <p> <code>ASANA</code> </p> </li> <li> <p> <code>JIRA</code> </p> </li> <li> <p> <code>M365</code> </p> </li> <li> <p> <code>M365AUDITLOGS</code> </p> </li> <li> <p> <code>ZOOM</code> </p> </li> <li> <p> <code>ZENDESK</code> </p> </li> <li> <p> <code>OKTA</code> </p> </li> <li> <p> <code>GOOGLE</code> </p> </li> <li> <p> <code>DROPBOX</code> </p> </li> <li> <p> <code>SMARTSHEET</code> </p> </li> <li> <p> <code>CISCO</code> </p> </li> </ul>
        tenant_id: <p>The ID of the application tenant.</p>
        ingestion_type: <p>The ingestion type.</p>
        client_token: <p>Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a <a href="https://wikipedia.org/wiki/Universally_unique_identifier">UUID type of value</a>.</p> <p>If you don't provide this value, then Amazon Web Services generates a random one for you.</p> <p>If you retry the operation with the same <code>ClientToken</code>, but with different parameters, the retry fails with an <code>IdempotentParameterMismatch</code> error.</p>
        tags: <p>A map of the key-value pairs of the tag or tags to assign to the resource.</p>

    Raises:
        capo_appfabric.errors.access_denied_exception.AccessDeniedException: <p>You are not authorized to perform this operation.</p>
        capo_appfabric.errors.conflict_exception.ConflictException: <p>The request has created a conflict. Check the request parameters and try again.</p>
        capo_appfabric.errors.internal_server_exception.InternalServerException: <p>The request processing has failed because of an unknown error, exception, or failure with an internal server.</p>
        capo_appfabric.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>The request exceeds a service quota.</p>
        capo_appfabric.errors.throttling_exception.ThrottlingException: <p>The request rate exceeds the limit.</p>
        capo_appfabric.errors.validation_exception.ValidationException: <p>The request has invalid or missing parameters.</p>
        capo_appfabric.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_appfabric.types.create_ingestion_request.CreateIngestionRequest]",
    ) -> AsyncOperationResponse[
        "capo_appfabric.types.create_ingestion_response.CreateIngestionResponse"
    ]:
        import capo_appfabric._operations.fabric_front_end_service.create_ingestion

        (
            output,
            http_response,
        ) = await capo_appfabric._operations.fabric_front_end_service.create_ingestion.async_create_ingestion(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateIngestion")
    )
    input_: capo_appfabric.types.create_ingestion_request.CreateIngestionRequest = {
        "app_bundle_identifier": app_bundle_identifier,
        "app": app,
        "tenant_id": tenant_id,
        "ingestion_type": ingestion_type,
    }
    if client_token is None:
        client_token = str(uuid.uuid4())
    input_["client_token"] = client_token
    if tags is not None:
        input_["tags"] = tags

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output