Source code for q2_sdk.hq.hq_api.backoffice.AddRecipientsCse

# This is an autogenerated file from the command "q2 generate_hq_api" and will be overwritten if run again


from typing import cast, Optional

from q2_sdk.core.q2_logging.logger import Q2LoggerType
from q2_sdk.hq.models.hq_credentials import BackOfficeHqCredentials

from q2_sdk.hq.models.hq_params.backoffice import BackOfficeAuthenticatedParamsObj
from q2_sdk.hq.models.hq_request.backoffice import BackOfficeRequest
from q2_sdk.hq.models.backoffice_response import BackOfficeResponse
from q2_sdk.hq.models.dataset_builder import DataSetBuilder


[docs] class ParamsObj(BackOfficeAuthenticatedParamsObj): """Parameters definition for AddRecipientsCse .. seealso:: :mod:`~q2_sdk.hq.hq_api.backoffice.AddRecipientsCse_models` for DataSet schemas and builder functions. """ def __init__( self, logger: Q2LoggerType, hq_credentials: BackOfficeHqCredentials, recipients: Optional[DataSetBuilder] = None, ): """ :param logger: Reference to calling request's logger (self.logger in your extension) :param recipients: DataSetBuilder instance :param hq_credentials: Defaults to settings.HQ_CREDENTIALS """ super().__init__(logger, hq_credentials) self.request_params.update({ "recipients": recipients, })
[docs] async def execute(params_obj: ParamsObj, use_json=True, **kwargs) -> BackOfficeResponse: """ This is the default way to submit the request to HQ. This endpoint uses DataSet parameters and defaults to the JSON (.ashx) transport. SOAP (.asmx) is not supported for DataSet serialization. :param params_obj: Object containing everything necessary to call this HQ endpoint :param use_json: If True, will call HQ's .ashx (json) endpoint instead of .asmx (soap) """ request = BackOfficeRequest("AddRecipientsCse", use_json=use_json, **kwargs) return cast(BackOfficeResponse, await request.execute(params_obj, **kwargs))
[docs] def build_json(params_obj: ParamsObj): return BackOfficeRequest.build_json(params_obj)