def __init__(self, tenant = None, sessionId=None, endpoint=None, username=None, password=None, token=None, partner_wsdl=None): self.tenant = tenant self.sfclient = None self.db = None if partner_wsdl is None: partner_wsdl = os.path.join(os.path.dirname(__file__), "partnerwsdl.xml") if username and password: login = salesforce_oauth_request.login(username=username, password=password, token=token, cache_session=True) if 'access_token' in login: sessionId = login['access_token'] endpoint = login['endpoint'] else: raise RuntimeError("SF Login error: {0}".format(login)) if sessionId: """This is the trick to use an OAuth access_token as the session id in the SOAP client.""" self.h = SforcePartnerClient(partner_wsdl) self.h._sessionId = sessionId self.h._setEndpoint(endpoint) header = self.h.generateHeader('SessionHeader') header.sessionId = sessionId self.h.setSessionHeader(header) self.sfclient = self.h
def login_to_salesforce(username, password, token, sandbox): env_vars = ( 'SALESFORCE_CLIENT_ID', 'SALESFORCE_CLIENT_SECRET', 'SALESFORCE_REDIRECT_URI', ) missing_env_vars = [e for e in env_vars if e not in os.environ] if missing_env_vars: raise RuntimeError( MissingEnvironmentVariablesMessage( missing_env_vars=', '.join(missing_env_vars) ) ) try: import salesforce_oauth_request except ImportError: raise ImportError( MissingDependencyMessage(dependency='salesforce-oauth-request-yplan') ) response = salesforce_oauth_request.login( username=username, password=password, token=token, sandbox=sandbox) if not 'access_token' in response: self.raise_error(str(response), resp.status) return response['access_token'], response['instance_url']
def login_to_salesforce(username, password): for key in ['SALESFORCE_CLIENT_ID','SALESFORCE_CLIENT_SECRET','SALESFORCE_REDIRECT_URI']: if key not in os.environ: raise RuntimeError("You must set %s to use username/pass login" % key) try: import salesforce_oauth_request except ImportError: raise ImportError("You must install salesforce-oauth-request to use username/password") packet = salesforce_oauth_request.login(username=username, password=password) return packet['access_token'],packet['instance_url']
def setUp(self): login = salesforce_oauth_request.login( username=USERNAME, password=PASSWORD, token=SECURITY_TOKEN, client_id=CONSUMER_KEY, client_secret=CONSUMER_SECRET, cache_session=False, sandbox=True, ) self.bulk = SalesforceBulk(login['access_token'], login['endpoint']) self.jobs = []
def login_to_salesforce(username, password): env_vars = ("SALESFORCE_CLIENT_ID", "SALESFORCE_CLIENT_SECRET", "SALESFORCE_REDIRECT_URI") missing_env_vars = [e for e in env_vars if e not in os.environ] if missing_env_vars: raise RuntimeError("You must set {0} to use username/pass login".format(", ".join(missing_env_vars))) try: import salesforce_oauth_request except ImportError: raise ImportError("You must install salesforce-oauth-request to use username/password") packet = salesforce_oauth_request.login(username=username, password=password) return packet["access_token"], packet["instance_url"]
def setUp(self): login = salesforce_oauth_request.login( username=USERNAME, password=PASSWORD, token=SECURITY_TOKEN, client_id=CONSUMER_KEY, client_secret=CONSUMER_SECRET, sandbox=False, # Developer accounts do not have sandboxes. ) endpoint = urlparse.urlparse(login['endpoint']) endpoint = endpoint.hostname self.bulk = salesforce_bulk.SalesforceBulk( login['access_token'], endpoint, ) self.jobs = []
def login_to_salesforce(username, password, sandbox=False): env_vars = ( 'SALESFORCE_CLIENT_ID', 'SALESFORCE_CLIENT_SECRET', 'SALESFORCE_REDIRECT_URI', ) missing_env_vars = [e for e in env_vars if e not in os.environ] if missing_env_vars: raise RuntimeError( "You must set {0} to use username/pass login".format( ', '.join(missing_env_vars))) try: import salesforce_oauth_request except ImportError: raise ImportError( "You must install salesforce-oauth-request to use username/password") packet = salesforce_oauth_request.login( username=username, password=password, sandbox=sandbox) return packet['access_token'], packet['instance_url']
if os.path.exists("test_settings"): creds = pickle.loads(open("test_settings").read()) client_id = creds['client_id'] client_secret = creds['client_secret'] redirect_uri = creds['redirect_uri'] else: client_id = raw_input("Oauth Client ID: ") client_secret = raw_input("Oauth Client Secret: ") redirect_uri = raw_input("Redirect URI: ") with open("test_settings", "w") as f: f.write( pickle.dumps( dict(client_id=client_id, client_secret=client_secret, redirect_uri=redirect_uri))) username = raw_input("Username: "******"Password: "******"............." packet = salesforce_oauth_request.login(username=username, password=password, client_id=client_id, client_secret=client_secret, redirect_uri=redirect_uri) print "Access token: %s" % packet['access_token'] print "Refresh token: %s" % packet['refresh_token'] print "Instance URL: %s" % packet['instance_url']
self.assertEqual(len(results), 3) self.results = None self.callback_count = 0 def save_results2(rows, failed, remaining): self.results = rows self.callback_count += 1 batch = len(results) / 3 self.callback_count = 0 flag = bulk.get_upload_results(job_id, batch_id, callback = save_results2, batch_size=batch) self.assertTrue(self.callback_count >= 3) if __name__ == '__main__': username = raw_input("Salesforce username: "******"Salesforce password: "******"test_csv_upload", endpoint, sessionId)) unittest.TextTestRunner().run(suite)
import salesforce_oauth_request if os.path.exists("test_settings"): creds = pickle.loads(open("test_settings").read()) client_id = creds['client_id'] client_secret = creds['client_secret'] redirect_uri = creds['redirect_uri'] else: client_id = raw_input("Oauth Client ID: ") client_secret= raw_input("Oauth Client Secret: ") redirect_uri = raw_input("Redirect URI: ") with open("test_settings", "w") as f: f.write(pickle.dumps(dict(client_id=client_id, client_secret=client_secret, redirect_uri=redirect_uri))) username = raw_input("Username: "******"Password: "******"............." packet = salesforce_oauth_request.login(username=username, password=password, client_id=client_id, client_secret=client_secret, redirect_uri=redirect_uri ) print "Access token: %s" % packet['access_token'] print "Refresh token: %s" % packet['refresh_token'] print "Instance URL: %s" % packet['instance_url']