in sam-app/lambda_functions/sfInvokeAPI.py [0:0]
def lambda_handler(event, context):
logger.info("event: %s" % json.dumps(event))
sf = Salesforce()
sf_operation = str(event['Details']['Parameters']['sf_operation'])
parameters = dict(event['Details']['Parameters'])
del parameters['sf_operation']
event['Details']['Parameters'] = parameters
if(sf_operation == "lookup"):
resp = lookup(sf=sf, **event['Details']['Parameters'])
elif (sf_operation == "create"):
resp = create(sf=sf, **event['Details']['Parameters'])
elif (sf_operation == "update"):
resp = update(sf=sf, **event['Details']['Parameters'])
elif (sf_operation == "phoneLookup"):
resp = phoneLookup(sf, event['Details']['Parameters']['sf_phone'], event['Details']['Parameters']['sf_fields'])
elif (sf_operation == "delete"):
resp = delete(sf=sf, **event['Details']['Parameters'])
elif (sf_operation == "lookup_all"):
resp = lookup_all(sf=sf, **event['Details']['Parameters'])
elif (sf_operation == "query"):
resp = query(sf=sf, **event['Details']['Parameters'])
elif (sf_operation == "queryOne"):
resp = queryOne(sf=sf, **event['Details']['Parameters'])
elif (sf_operation == "createChatterPost"):
resp = createChatterPost(sf=sf, **event['Details']['Parameters'])
elif (sf_operation == "createChatterComment"):
resp = createChatterComment(sf=sf, **event['Details']['Parameters'])
elif (sf_operation == "search"):
resp = search(sf=sf, **event['Details']['Parameters'])
elif (sf_operation == "searchOne"):
resp = searchOne(sf=sf, **event['Details']['Parameters'])
else:
msg = "sf_operation unknown"
logger.error(msg)
raise Exception(msg)
logger.info("result: %s" % resp)
return resp