Skip to content

Commit b6356e8

Browse files
Merge pull request #30 from sypht-team/DSY-1588/allow-get-put-validation-rules
Added get and set functions for external validation rules
2 parents 82a6bc9 + a889faf commit b6356e8

File tree

2 files changed

+37
-1
lines changed

2 files changed

+37
-1
lines changed

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from setuptools import find_packages, setup
22

3-
__version__ = "0.5.12"
3+
__version__ = "0.5.13"
44
__pkg_name__ = "sypht"
55

66
setup(

sypht/client.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,42 @@ def run_workflow(self, workflow, inputs, step=None, endpoint=None, headers=None)
233233
)
234234
)
235235

236+
def get_validation_rules(self, company_id=None, rules_id=None, endpoint=None):
237+
company_id = company_id or self.company_id
238+
endpoint = urljoin(
239+
endpoint or self.base_endpoint,
240+
f"workflows/rules/{company_id}/{rules_id}",
241+
)
242+
headers = self._get_headers()
243+
headers["Accept"] = "application/json"
244+
headers["Content-Type"] = "application/json"
245+
return self._parse_response(self.requests.get(endpoint, headers=headers))
246+
247+
def set_validation_rules(self, validation_rules=None, schema=True, company_id=None, rules_id=None, endpoint=None):
248+
data = {"data": validation_rules, "schema": schema}
249+
company_id = company_id or self.company_id
250+
endpoint = urljoin(
251+
endpoint or self.base_endpoint,
252+
f"workflows/rules/{company_id}/{rules_id}",
253+
)
254+
headers = self._get_headers()
255+
headers["Accept"] = "application/json"
256+
headers["Content-Type"] = "application/json"
257+
return self._parse_response(
258+
self.requests.put(endpoint, data=json.dumps(data), headers=headers)
259+
)
260+
261+
def delete_validation_rules(self, company_id=None, rules_id=None, endpoint=None):
262+
company_id = company_id or self.company_id
263+
endpoint = urljoin(
264+
endpoint or self.base_endpoint,
265+
f"workflows/rules/{company_id}/{rules_id}",
266+
)
267+
headers = self._get_headers()
268+
headers["Accept"] = "application/json"
269+
headers["Content-Type"] = "application/json"
270+
return self._parse_response(self.requests.delete(endpoint, headers=headers))
271+
236272
def create_file(self, file, filename=None, endpoint=None, headers=None):
237273
endpoint = urljoin(endpoint or self.base_endpoint, "fileupload/v2/multipart")
238274
headers = headers or {}

0 commit comments

Comments
 (0)