From 735e86c4c0a607ff40b5a04bd4c32a4311856118 Mon Sep 17 00:00:00 2001 From: Snagnik Date: Thu, 2 May 2024 04:26:12 +0530 Subject: [PATCH 1/3] correct order in readme.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6cfe0fd..5044060 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ pip install salesforce-python ``` from salesforce.client import Client -client = Client('CLIENT_KEY', 'CLIENT_SECRET', 'https://na50.salesforce.com/', 'v41.0') # Host must have trailing slash +client = Client('CLIENT_KEY', 'CLIENT_SECRET', 'v41.0', 'https://na50.salesforce.com/') # Host must have trailing slash ``` Get authorization url From 3fa0ea9a1ee8c8758a23210a57ccbcc280847024 Mon Sep 17 00:00:00 2001 From: Snagnik Date: Thu, 2 May 2024 05:10:44 +0530 Subject: [PATCH 2/3] Trailing slash errors --- README.md | 2 +- salesforce/client.py | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5044060..c624899 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ pip install salesforce-python ``` from salesforce.client import Client -client = Client('CLIENT_KEY', 'CLIENT_SECRET', 'v41.0', 'https://na50.salesforce.com/') # Host must have trailing slash +client = Client('CLIENT_KEY', 'CLIENT_SECRET', 'v41.0', 'https://na50.salesforce.com/') ``` Get authorization url diff --git a/salesforce/client.py b/salesforce/client.py index 379c54b..09783e9 100644 --- a/salesforce/client.py +++ b/salesforce/client.py @@ -12,6 +12,8 @@ class Client(object): def __init__(self, client_id, client_secret, version, instance_url=None): self.client_id = client_id self.client_secret = client_secret + if instance_url[-1] == '/': + instance_url = instance_url[:-1] self.instance_url = self.BASE_URL.format(instance_url) self.rest_url = self.instance_url + '{}/'.format(version) if version.startswith('v'): From 5a73d4d602b9b0cfcf5df71cbadc16219bc45135 Mon Sep 17 00:00:00 2001 From: Snagnik Date: Thu, 2 May 2024 05:32:28 +0530 Subject: [PATCH 3/3] added edit for sobjects --- salesforce/client.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/salesforce/client.py b/salesforce/client.py index 09783e9..8c66605 100644 --- a/salesforce/client.py +++ b/salesforce/client.py @@ -98,6 +98,10 @@ def get_sobject(self, sobject): @access_token_required def create_sobject(self, sobject, data): return self._post(self.rest_url + 'sobjects/{}/'.format(sobject), json=data) + + @access_token_required + def edit_sobject(self, sobject, record_id, data): + return self._patch(self.rest_url + 'sobjects/{}/{}'.format(sobject, record_id), json=data) @access_token_required def get_sobject_describe(self, sobject): @@ -153,6 +157,9 @@ def _post(self, url, **kwargs): def _put(self, url, **kwargs): return self._request('PUT', url, **kwargs) + + def _patch(self, url, **kwargs): + return self._request('PATCH', url, **kwargs) def _delete(self, url, **kwargs): return self._request('DELETE', url, **kwargs)