from voxsup.api.client.linkedin import LinkedInClient as Client ACCOUNT_ID = 502977261 # 4C Insights Test Account ACCOUNT_URN = "urn:li:sponsoredAccount:" + str(ACCOUNT_ID) MEMBER_ID = "-bZaJqJQEO" # Noopur MEMBER_URN = "urn:li:person:" + MEMBER_ID client = Client(context={'account_id': ACCOUNT_ID}) enable_requests_logging() body = { "account": ACCOUNT_URN, "member": MEMBER_URN, "state": "REQUESTED", } urlString = 'adInMailMemberSenderPermissions/account=' + ACCOUNT_URN + '&member=' + MEMBER_URN response = client.put(urlString, json=body) # content = response.json() # import json # json.dumps(content)
uploadRequestFromLI = content['value']['uploadMechanism']['com.linkedin.digitalmedia.uploading.MediaUploadHttpRequest'] headers = uploadRequestFromLI['headers'] uploadUrl = uploadRequestFromLI['uploadUrl'] asset = content['value']['asset'] assetId = trimMediaAssetURN(asset) print('headers: ' + json.dumps(headers)) print('uploadUrl: ' + json.dumps(uploadUrl)) print('assetId: ' + assetId) uploadHeaders = { 'Content-Type': 'image/png' } files = {'file': ("image.png", open('/home/joeklonowski/voxsupFrontend2/image.png', 'rb'), 'image/png')} uploadResponse = client.put(uploadUrl, files=files, headers=uploadHeaders) getResponse = client.get('assets/' + assetId) getResponse.json() updateBody = { "patch": { "$set": { "subContent": { "com.linkedin.ads.AdInMailStandardSubContent": { "actionText": "HMC", "action": "https://www.hmc.edu/", "adUnitV2": asset } } }