def marketingCloud(bases, event1):
        stubObj = ET_Client.ET_Client(
            False, False, {
                'clientid': os.environ['clientid'],
                'clientsecret': os.environ['clientsecret'],
                'defaultwsdl':
                'https://webservice.exacttarget.com/etframework.wsdl',
                'authenticationurl': os.environ['authenticationurl'],
                'baseapiurl': os.environ['baseapiurl'],
                'soapendpoint': os.environ['soapendpoint'],
                'wsdl_file_local_loc': r'/tmp/ExactTargetWSDL.xml',
                'useOAuth2Authentication': 'True',
                'accountId': os.environ['accountId']
            })
        de = ET_Client.ET_DataExtension_Row()
        de.CustomerKey = bases
        de.auth_stub = stubObj
        de.props = props1 if de.CustomerKey == os.environ[
            'basesLeads_Gerais'] else props2
        postResponse = de.post()
        # Mensagens de error para debugar depois! Caso necessário:
        ## print("Post Status: " + str(postResponse.status))
        ## print("Code: " + str(postResponse.code))
        ## print("Message: " + str(postResponse.message))
        ## print("Results: " + str(postResponse.results))

        if postResponse.status:
            return True
Пример #2
0
 def get_all_rows_from_data_extension(self, data_extension_customer_key,
                                      fields_list):
     der = ET_Client.ET_DataExtension_Row()
     der.auth_stub = self.auth_stub
     der.CustomerKey = data_extension_customer_key
     der.props = fields_list
     return der.get()
Пример #3
0
 def add_row_to_data_extension(self, data_extension_name,
                               fields_dictionary):
     der = ET_Client.ET_DataExtension_Row()
     der.auth_stub = self.auth_stub
     der.Name = data_extension_name
     der.props = fields_dictionary
     return der.post()
Пример #4
0
 def update_row(self, message: Dict[str, str], extension_key: str) -> bool:
     """
     :param message: the list of dict wiht the data
     :param extension_key: it is the customer key or 'table name'
     """
     logger.info("Adding a row to a data extension")
     row = ET_Client.ET_DataExtension_Row()
     row.CustomerKey = extension_key
     row.auth_stub = self.get_client()
     row.props = message
     response = row.patch()
     logger.info(
         f"patch_tatus: {str(response.status)}, code: {str(response.code)}, message: {str(response.message)}"
     )
     logger.info("Results: " + str(response.results))
     if int(response.status) == 200:
         return True
     return False
Пример #5
0
        'Property': 'CustomerKey',
        'SimpleOperator': 'equals',
        'Value': NameOfDE
    }
    getResponse = myDEColumn.get()
    print(('Retrieve Status: ' + str(getResponse.status)))
    print(('Code: ' + str(getResponse.code)))
    print(('Message: ' + str(getResponse.message)))
    print(('MoreResults: ' + str(getResponse.more_results)))
    print(('RequestID: ' + str(getResponse.request_id)))
    print(('Results Length: ' + str(len(getResponse.results))))
    print(('Results: ' + str(getResponse.results)))

    # Add a row to a data extension (using CustomerKey)
    print('>>>  Add a row to a data extension')
    de4 = ET_Client.ET_DataExtension_Row()
    de4.CustomerKey = NameOfDE
    de4.auth_stub = stubObj
    de4.props = {"Name": "MAC3", "OtherField": "Text3"}
    postResponse = de4.post()
    print(('Post Status: ' + str(postResponse.status)))
    print(('Code: ' + str(postResponse.code)))
    print(('Message: ' + str(postResponse.message)))
    print(('Results: ' + str(postResponse.results)))

    # Add a row to a data extension (Using Name)
    print('>>> Add a row to a data extension')
    de4 = ET_Client.ET_DataExtension_Row()
    de4.auth_stub = stubObj
    de4.Name = NameOfDE
    de4.props = {"Name": "MAC4", "OtherField": "Text3"}