fix: use a copy of the client headers when setting content-type on specific method calls
This commit is contained in:
@@ -10,11 +10,12 @@ from OnspringApiSdk.Models import *
|
|||||||
class OnspringClient:
|
class OnspringClient:
|
||||||
"""
|
"""
|
||||||
A class that represents a client that can interact with the api.
|
A class that represents a client that can interact with the api.
|
||||||
|
|
||||||
Attributes:
|
Attributes:
|
||||||
baseUrl (`str`): The url that should be used as the base for all requests made by the client.
|
baseUrl (`str`): The url that should be used as the base for all requests made by the client.
|
||||||
headers (`dict`): Contains key value pairs of the headers necessary for all requests made by the client including the necessary api key.
|
headers (`dict`): Contains key value pairs of the headers necessary for all requests made by the client including the necessary api key.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self, url: str, key: str):
|
def __init__(self, url: str, key: str):
|
||||||
self.baseUrl = url
|
self.baseUrl = url
|
||||||
self.headers = {
|
self.headers = {
|
||||||
@@ -111,7 +112,7 @@ class OnspringClient:
|
|||||||
response.status_code,
|
response.status_code,
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
def GetAppById(self, appId: int) -> ApiResponse:
|
def GetAppById(self, appId: int) -> ApiResponse:
|
||||||
"""
|
"""
|
||||||
Get an app by it's id.
|
Get an app by it's id.
|
||||||
|
|
||||||
@@ -130,21 +131,21 @@ class OnspringClient:
|
|||||||
headers=self.headers)
|
headers=self.headers)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 403:
|
if response.status_code == 403:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Client does not have read access to the app',
|
message='Client does not have read access to the app',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 404:
|
if response.status_code == 404:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='App could not be found',
|
message='App could not be found',
|
||||||
@@ -183,7 +184,8 @@ class OnspringClient:
|
|||||||
|
|
||||||
endpoint = GetAppsByIdsEndpoint(self.baseUrl)
|
endpoint = GetAppsByIdsEndpoint(self.baseUrl)
|
||||||
|
|
||||||
self.headers['Content-Type'] = 'application/json'
|
headers = self.headers.copy()
|
||||||
|
headers['Content-Type'] = 'application/json'
|
||||||
|
|
||||||
# make sure appIds can be serialized to json string
|
# make sure appIds can be serialized to json string
|
||||||
if not isinstance(appIds, (list, tuple)):
|
if not isinstance(appIds, (list, tuple)):
|
||||||
@@ -196,18 +198,18 @@ class OnspringClient:
|
|||||||
response = requests.request(
|
response = requests.request(
|
||||||
'POST',
|
'POST',
|
||||||
endpoint,
|
endpoint,
|
||||||
headers=self.headers,
|
headers=headers,
|
||||||
data=appIds)
|
data=appIds)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 403:
|
if response.status_code == 403:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Client does not have read access to the app',
|
message='Client does not have read access to the app',
|
||||||
@@ -264,21 +266,21 @@ class OnspringClient:
|
|||||||
headers=self.headers)
|
headers=self.headers)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 403:
|
if response.status_code == 403:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Client does not have read access to the field',
|
message='Client does not have read access to the field',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 404:
|
if response.status_code == 404:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Field could not be found',
|
message='Field could not be found',
|
||||||
@@ -295,7 +297,7 @@ class OnspringClient:
|
|||||||
listValues = []
|
listValues = []
|
||||||
|
|
||||||
for value in values:
|
for value in values:
|
||||||
|
|
||||||
value = dict(value)
|
value = dict(value)
|
||||||
|
|
||||||
value = ListValue(
|
value = ListValue(
|
||||||
@@ -344,7 +346,8 @@ class OnspringClient:
|
|||||||
|
|
||||||
endpoint = GetFieldsByIdsEndpoint(self.baseUrl)
|
endpoint = GetFieldsByIdsEndpoint(self.baseUrl)
|
||||||
|
|
||||||
self.headers['Content-Type'] = 'application/json'
|
headers = self.headers.copy()
|
||||||
|
headers['Content-Type'] = 'application/json'
|
||||||
|
|
||||||
# make sure fieldIds can be serialized to json string
|
# make sure fieldIds can be serialized to json string
|
||||||
if not isinstance(fieldIds, (list, tuple)):
|
if not isinstance(fieldIds, (list, tuple)):
|
||||||
@@ -357,25 +360,25 @@ class OnspringClient:
|
|||||||
response = requests.request(
|
response = requests.request(
|
||||||
'POST',
|
'POST',
|
||||||
endpoint,
|
endpoint,
|
||||||
headers=self.headers,
|
headers=headers,
|
||||||
data=fieldIds)
|
data=fieldIds)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 403:
|
if response.status_code == 403:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Client does not have read access to the field(s)',
|
message='Client does not have read access to the field(s)',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 404:
|
if response.status_code == 404:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Field(s) could not be found',
|
message='Field(s) could not be found',
|
||||||
@@ -388,7 +391,7 @@ class OnspringClient:
|
|||||||
fields = []
|
fields = []
|
||||||
|
|
||||||
for item in responseJson.get('items'):
|
for item in responseJson.get('items'):
|
||||||
|
|
||||||
item = dict(item)
|
item = dict(item)
|
||||||
|
|
||||||
values = item.get('values')
|
values = item.get('values')
|
||||||
@@ -398,18 +401,18 @@ class OnspringClient:
|
|||||||
listValues = []
|
listValues = []
|
||||||
|
|
||||||
for value in values:
|
for value in values:
|
||||||
|
|
||||||
value = dict(value)
|
value = dict(value)
|
||||||
|
|
||||||
value = ListValue(
|
value = ListValue(
|
||||||
value.get('id'),
|
value.get('id'),
|
||||||
value.get('name'),
|
value.get('name'),
|
||||||
value.get('sortOrder'),
|
value.get('sortOrder'),
|
||||||
value.get('numericValue'),
|
value.get('numericValue'),
|
||||||
value.get('color'))
|
value.get('color'))
|
||||||
|
|
||||||
listValues.append(value)
|
listValues.append(value)
|
||||||
|
|
||||||
field = Field(
|
field = Field(
|
||||||
item.get('id'),
|
item.get('id'),
|
||||||
item.get('appId'),
|
item.get('appId'),
|
||||||
@@ -461,14 +464,14 @@ class OnspringClient:
|
|||||||
params=params)
|
params=params)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Invalid paging information',
|
message='Invalid paging information',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -491,16 +494,16 @@ class OnspringClient:
|
|||||||
|
|
||||||
for value in values:
|
for value in values:
|
||||||
|
|
||||||
value = dict(value)
|
value = dict(value)
|
||||||
|
|
||||||
value = ListValue(
|
value = ListValue(
|
||||||
value.get('id'),
|
value.get('id'),
|
||||||
value.get('name'),
|
value.get('name'),
|
||||||
value.get('sortOrder'),
|
value.get('sortOrder'),
|
||||||
value.get('numericValue'),
|
value.get('numericValue'),
|
||||||
value.get('color'))
|
value.get('color'))
|
||||||
|
|
||||||
listValues.append(value)
|
listValues.append(value)
|
||||||
|
|
||||||
field = Field(
|
field = Field(
|
||||||
item.get('id'),
|
item.get('id'),
|
||||||
@@ -560,28 +563,28 @@ class OnspringClient:
|
|||||||
headers=self.headers,)
|
headers=self.headers,)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Request is invalid based on underlying data',
|
message='Request is invalid based on underlying data',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 403:
|
if response.status_code == 403:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Client does not have read access to the file',
|
message='Client does not have read access to the file',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 404:
|
if response.status_code == 404:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='File could not be found',
|
message='File could not be found',
|
||||||
@@ -622,7 +625,7 @@ class OnspringClient:
|
|||||||
recordId (`int`): The unique id of the record that contains the file you want to delete.
|
recordId (`int`): The unique id of the record that contains the file you want to delete.
|
||||||
fieldId (`int`): The unique id of the field that contains the file you want to delete.
|
fieldId (`int`): The unique id of the field that contains the file you want to delete.
|
||||||
fileId (`int`): The unique id of the file you want to delete.
|
fileId (`int`): The unique id of the file you want to delete.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
@@ -639,14 +642,14 @@ class OnspringClient:
|
|||||||
headers=self.headers,)
|
headers=self.headers,)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Request is invalid based on underlying data',
|
message='Request is invalid based on underlying data',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -662,14 +665,14 @@ class OnspringClient:
|
|||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 500:
|
if response.status_code == 500:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='File could not be deleted due to internal error',
|
message='File could not be deleted due to internal error',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 204:
|
if response.status_code == 204:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='File deleted successfully',
|
message='File deleted successfully',
|
||||||
@@ -687,7 +690,7 @@ class OnspringClient:
|
|||||||
recordId (`int`): The unique id of the record that contains the file you want to retrieve.
|
recordId (`int`): The unique id of the record that contains the file you want to retrieve.
|
||||||
fieldId (`int`): The unique id of the field that contains the file you want to retrieve.
|
fieldId (`int`): The unique id of the field that contains the file you want to retrieve.
|
||||||
fileId (`int`): The unique id of the file you want to retrieve.
|
fileId (`int`): The unique id of the file you want to retrieve.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
@@ -704,21 +707,21 @@ class OnspringClient:
|
|||||||
headers=self.headers,)
|
headers=self.headers,)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Request is invalid based on underlying data',
|
message='Request is invalid based on underlying data',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 403 or response.status_code == 404:
|
if response.status_code == 403 or response.status_code == 404:
|
||||||
|
|
||||||
jsonResponse = dict(response.json())
|
jsonResponse = dict(response.json())
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
@@ -729,10 +732,10 @@ class OnspringClient:
|
|||||||
if response.status_code == 200:
|
if response.status_code == 200:
|
||||||
|
|
||||||
headers = dict(response.headers)
|
headers = dict(response.headers)
|
||||||
|
|
||||||
fileName = headers.get('Content-Disposition')
|
fileName = headers.get('Content-Disposition')
|
||||||
result = re.search('filename=.*;', fileName).group()
|
result = re.search('filename=.*;', fileName).group()
|
||||||
|
|
||||||
# TODO: implement attempting to build file name using content-type header
|
# TODO: implement attempting to build file name using content-type header
|
||||||
if result:
|
if result:
|
||||||
fileName = re.sub('filename=|\'|;', '', result)
|
fileName = re.sub('filename=|\'|;', '', result)
|
||||||
@@ -751,7 +754,6 @@ class OnspringClient:
|
|||||||
response.status_code,
|
response.status_code,
|
||||||
data,
|
data,
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
@@ -763,7 +765,7 @@ class OnspringClient:
|
|||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
saveFileRequest (`Models.SaveFileRequest`): An object representing all the necessary information to make a successful request.
|
saveFileRequest (`Models.SaveFileRequest`): An object representing all the necessary information to make a successful request.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
@@ -773,7 +775,8 @@ class OnspringClient:
|
|||||||
files = [
|
files = [
|
||||||
(
|
(
|
||||||
'File',
|
'File',
|
||||||
(saveFileRequest.fileName, open(saveFileRequest.filePath,'rb'),saveFileRequest.contentType)
|
(saveFileRequest.fileName, open(
|
||||||
|
saveFileRequest.filePath, 'rb'), saveFileRequest.contentType)
|
||||||
)
|
)
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -785,27 +788,27 @@ class OnspringClient:
|
|||||||
requestData = saveFileRequest
|
requestData = saveFileRequest
|
||||||
|
|
||||||
response = requests.request(
|
response = requests.request(
|
||||||
'POST',
|
'POST',
|
||||||
endpoint,
|
endpoint,
|
||||||
headers=self.headers,
|
headers=self.headers,
|
||||||
data=requestData,
|
data=requestData,
|
||||||
files=files)
|
files=files)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Request is invalid based on underlying data',
|
message='Request is invalid based on underlying data',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code in [403,404,500]:
|
if response.status_code in [403, 404, 500]:
|
||||||
|
|
||||||
jsonResponse = dict(response.json())
|
jsonResponse = dict(response.json())
|
||||||
|
|
||||||
@@ -821,9 +824,9 @@ class OnspringClient:
|
|||||||
data = SaveFileResponse(responseJson.get('id'))
|
data = SaveFileResponse(responseJson.get('id'))
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
data,
|
data,
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
@@ -837,33 +840,35 @@ class OnspringClient:
|
|||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
listItemRequest (`Models.ListItemRequest`): An object representing all the necessary information to make a successful request.
|
listItemRequest (`Models.ListItemRequest`): An object representing all the necessary information to make a successful request.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
endpoint = AddOrUpdateListItemEndpoint(self.baseUrl, listItemRequest.listId)
|
endpoint = AddOrUpdateListItemEndpoint(
|
||||||
|
self.baseUrl, listItemRequest.listId)
|
||||||
|
|
||||||
self.headers['Content-Type'] = 'application/json'
|
headers = self.headers.copy()
|
||||||
|
headers['Content-Type'] = 'application/json'
|
||||||
|
|
||||||
del listItemRequest.__dict__['listId']
|
del listItemRequest.__dict__['listId']
|
||||||
|
|
||||||
requestData = json.dumps(listItemRequest.__dict__)
|
requestData = json.dumps(listItemRequest.__dict__)
|
||||||
|
|
||||||
response = requests.request(
|
response = requests.request(
|
||||||
'PUT',
|
'PUT',
|
||||||
endpoint,
|
endpoint,
|
||||||
headers=self.headers,
|
headers=headers,
|
||||||
data=requestData)
|
data=requestData)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code in [403,404]:
|
if response.status_code in [403, 404]:
|
||||||
|
|
||||||
jsonResponse = dict(response.json())
|
jsonResponse = dict(response.json())
|
||||||
|
|
||||||
@@ -873,29 +878,29 @@ class OnspringClient:
|
|||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 201:
|
if response.status_code == 201:
|
||||||
|
|
||||||
responseJson = dict(response.json())
|
responseJson = dict(response.json())
|
||||||
|
|
||||||
data = AddOrUpdateListItemResponse(responseJson.get('id'))
|
data = AddOrUpdateListItemResponse(responseJson.get('id'))
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
data,
|
data,
|
||||||
message='New list value successfully added',
|
message='New list value successfully added',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 200:
|
if response.status_code == 200:
|
||||||
|
|
||||||
responseJson = dict(response.json())
|
responseJson = dict(response.json())
|
||||||
|
|
||||||
data = AddOrUpdateListItemResponse(responseJson.get('id'))
|
data = AddOrUpdateListItemResponse(responseJson.get('id'))
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
data,
|
data,
|
||||||
message='Existing list value successfully updated',
|
message='Existing list value successfully updated',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
raw=response)
|
raw=response)
|
||||||
@@ -907,7 +912,7 @@ class OnspringClient:
|
|||||||
Parameters:
|
Parameters:
|
||||||
listId (`int`): The unique id of the list values parent list.
|
listId (`int`): The unique id of the list values parent list.
|
||||||
itemId (`int`): The unique id of the list value to be deleted.
|
itemId (`int`): The unique id of the list value to be deleted.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
@@ -920,7 +925,7 @@ class OnspringClient:
|
|||||||
headers=self.headers)
|
headers=self.headers)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -936,14 +941,14 @@ class OnspringClient:
|
|||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 404:
|
if response.status_code == 404:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='List/item could not be found',
|
message='List/item could not be found',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 204:
|
if response.status_code == 204:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Item deleted successfully',
|
message='Item deleted successfully',
|
||||||
@@ -961,12 +966,13 @@ class OnspringClient:
|
|||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
getRecordsByAppRequest (`Models.GetRecordsByAppRequest`): The unique id of the list values parent list.
|
getRecordsByAppRequest (`Models.GetRecordsByAppRequest`): The unique id of the list values parent list.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
endpoint = GetRecordsByAppIdEndpoint(self.baseUrl, getRecordsByAppRequest.appId)
|
endpoint = GetRecordsByAppIdEndpoint(
|
||||||
|
self.baseUrl, getRecordsByAppRequest.appId)
|
||||||
|
|
||||||
params = getRecordsByAppRequest.__dict__
|
params = getRecordsByAppRequest.__dict__
|
||||||
del params['appId']
|
del params['appId']
|
||||||
@@ -979,14 +985,14 @@ class OnspringClient:
|
|||||||
params=params)
|
params=params)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Invalid paging information/size of the data requested was too large.',
|
message='Invalid paging information/size of the data requested was too large.',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -1008,7 +1014,7 @@ class OnspringClient:
|
|||||||
records = []
|
records = []
|
||||||
|
|
||||||
for item in jsonResponse.get('items'):
|
for item in jsonResponse.get('items'):
|
||||||
|
|
||||||
item = dict(item)
|
item = dict(item)
|
||||||
|
|
||||||
fields = []
|
fields = []
|
||||||
@@ -1019,16 +1025,16 @@ class OnspringClient:
|
|||||||
item.get('recordId'))
|
item.get('recordId'))
|
||||||
|
|
||||||
for field in item.get('fieldData'):
|
for field in item.get('fieldData'):
|
||||||
|
|
||||||
field = dict(field)
|
field = dict(field)
|
||||||
|
|
||||||
field = RecordFieldValue(
|
field = RecordFieldValue(
|
||||||
field.get('fieldId'),
|
field.get('fieldId'),
|
||||||
field.get('value'),
|
field.get('value'),
|
||||||
field.get('type'))
|
field.get('type'))
|
||||||
|
|
||||||
fields.append(field)
|
fields.append(field)
|
||||||
|
|
||||||
record.fields = fields
|
record.fields = fields
|
||||||
|
|
||||||
records.append(record)
|
records.append(record)
|
||||||
@@ -1048,19 +1054,20 @@ class OnspringClient:
|
|||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
def GetRecordById(self, getRecordByIdRequest: GetRecordByIdRequest) -> ApiResponse:
|
def GetRecordById(self, getRecordByIdRequest: GetRecordByIdRequest) -> ApiResponse:
|
||||||
"""
|
"""
|
||||||
Get a record by its id.
|
Get a record by its id.
|
||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
getRecordByIdRequest (`Models.GetRecordByIdRequest`): An object that contains all the necessary information for making a successful request.
|
getRecordByIdRequest (`Models.GetRecordByIdRequest`): An object that contains all the necessary information for making a successful request.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
endpoint = GetRecordByIdEndpoint(self.baseUrl, getRecordByIdRequest.appId, getRecordByIdRequest.recordId)
|
endpoint = GetRecordByIdEndpoint(
|
||||||
|
self.baseUrl, getRecordByIdRequest.appId, getRecordByIdRequest.recordId)
|
||||||
|
|
||||||
params = getRecordByIdRequest.__dict__
|
params = getRecordByIdRequest.__dict__
|
||||||
del params['appId']
|
del params['appId']
|
||||||
@@ -1068,13 +1075,13 @@ class OnspringClient:
|
|||||||
params['fieldIds'] = ",".join([str(i) for i in params['fieldIds']])
|
params['fieldIds'] = ",".join([str(i) for i in params['fieldIds']])
|
||||||
|
|
||||||
response = requests.request(
|
response = requests.request(
|
||||||
'GET',
|
'GET',
|
||||||
endpoint,
|
endpoint,
|
||||||
headers=self.headers,
|
headers=self.headers,
|
||||||
params=params)
|
params=params)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -1090,7 +1097,7 @@ class OnspringClient:
|
|||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 404:
|
if response.status_code == 404:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Record could not be found',
|
message='Record could not be found',
|
||||||
@@ -1103,14 +1110,14 @@ class OnspringClient:
|
|||||||
fields = []
|
fields = []
|
||||||
|
|
||||||
for field in jsonResponse.get('fieldData'):
|
for field in jsonResponse.get('fieldData'):
|
||||||
|
|
||||||
field = dict(field)
|
field = dict(field)
|
||||||
|
|
||||||
field = RecordFieldValue(
|
field = RecordFieldValue(
|
||||||
field.get('fieldId'),
|
field.get('fieldId'),
|
||||||
field.get('value'),
|
field.get('value'),
|
||||||
field.get('type'))
|
field.get('type'))
|
||||||
|
|
||||||
fields.append(field)
|
fields.append(field)
|
||||||
|
|
||||||
data = Record(
|
data = Record(
|
||||||
@@ -1134,7 +1141,7 @@ class OnspringClient:
|
|||||||
Parameters:
|
Parameters:
|
||||||
appId (`int`): The id value of the app where the record you want to delete resides.
|
appId (`int`): The id value of the app where the record you want to delete resides.
|
||||||
recordId (`int`): The id value of the record you want to delete.
|
recordId (`int`): The id value of the record you want to delete.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
@@ -1147,7 +1154,7 @@ class OnspringClient:
|
|||||||
headers=self.headers)
|
headers=self.headers)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -1163,14 +1170,14 @@ class OnspringClient:
|
|||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 404:
|
if response.status_code == 404:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Record could not be found',
|
message='Record could not be found',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 204:
|
if response.status_code == 204:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Record deleted successfully',
|
message='Record deleted successfully',
|
||||||
@@ -1179,39 +1186,40 @@ class OnspringClient:
|
|||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
def GetRecordsByIds(self, getBatchRecordsRequest: GetBatchRecordsRequest) -> ApiResponse:
|
def GetRecordsByIds(self, getBatchRecordsRequest: GetBatchRecordsRequest) -> ApiResponse:
|
||||||
"""
|
"""
|
||||||
Get records by their id.
|
Get records by their id.
|
||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
GetBatchRecordsRequest (`Models.GetBatchRecordsRequest`): An object that contains all the necessary information for making a successful request.
|
GetBatchRecordsRequest (`Models.GetBatchRecordsRequest`): An object that contains all the necessary information for making a successful request.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
endpoint = GetRecordsByIdsEndpoint(self.baseUrl)
|
endpoint = GetRecordsByIdsEndpoint(self.baseUrl)
|
||||||
|
|
||||||
self.headers['Content-Type'] = 'application/json'
|
headers = self.headers.copy()
|
||||||
|
headers['Content-Type'] = 'application/json'
|
||||||
|
|
||||||
requestData = json.dumps(getBatchRecordsRequest.__dict__)
|
requestData = json.dumps(getBatchRecordsRequest.__dict__)
|
||||||
|
|
||||||
response = requests.request(
|
response = requests.request(
|
||||||
'POST',
|
'POST',
|
||||||
endpoint,
|
endpoint,
|
||||||
headers=self.headers,
|
headers=headers,
|
||||||
data=requestData)
|
data=requestData)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Batch request is invalid/size of the data requested was too large.',
|
message='Batch request is invalid/size of the data requested was too large.',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -1233,7 +1241,7 @@ class OnspringClient:
|
|||||||
records = []
|
records = []
|
||||||
|
|
||||||
for item in jsonResponse.get('items'):
|
for item in jsonResponse.get('items'):
|
||||||
|
|
||||||
item = dict(item)
|
item = dict(item)
|
||||||
|
|
||||||
fields = []
|
fields = []
|
||||||
@@ -1244,16 +1252,16 @@ class OnspringClient:
|
|||||||
item.get('recordId'),)
|
item.get('recordId'),)
|
||||||
|
|
||||||
for field in item.get('fieldData'):
|
for field in item.get('fieldData'):
|
||||||
|
|
||||||
field = dict(field)
|
field = dict(field)
|
||||||
|
|
||||||
field = RecordFieldValue(
|
field = RecordFieldValue(
|
||||||
field.get('fieldId'),
|
field.get('fieldId'),
|
||||||
field.get('value'),
|
field.get('value'),
|
||||||
field.get('type'))
|
field.get('type'))
|
||||||
|
|
||||||
fields.append(field)
|
fields.append(field)
|
||||||
|
|
||||||
record.fields = fields
|
record.fields = fields
|
||||||
|
|
||||||
records.append(record)
|
records.append(record)
|
||||||
@@ -1277,14 +1285,15 @@ class OnspringClient:
|
|||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
queryRecordsRequest (`Models.QueryRecordsRequest`): An object that contains all the necessary information for making a successful request.
|
queryRecordsRequest (`Models.QueryRecordsRequest`): An object that contains all the necessary information for making a successful request.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
endpoint = QueryRecordsEndpoint(self.baseUrl)
|
endpoint = QueryRecordsEndpoint(self.baseUrl)
|
||||||
|
|
||||||
self.headers['Content-Type'] = 'application/json'
|
headers = self.headers.copy()
|
||||||
|
headers['Content-Type'] = 'application/json'
|
||||||
|
|
||||||
requestData = queryRecordsRequest.__dict__
|
requestData = queryRecordsRequest.__dict__
|
||||||
|
|
||||||
@@ -1297,19 +1306,19 @@ class OnspringClient:
|
|||||||
response = requests.request(
|
response = requests.request(
|
||||||
'POST',
|
'POST',
|
||||||
endpoint,
|
endpoint,
|
||||||
headers=self.headers,
|
headers=headers,
|
||||||
data=requestData,
|
data=requestData,
|
||||||
params=params)
|
params=params)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Query request is invalid/size of the data requested was too large.',
|
message='Query request is invalid/size of the data requested was too large.',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -1331,7 +1340,7 @@ class OnspringClient:
|
|||||||
records = []
|
records = []
|
||||||
|
|
||||||
for item in jsonResponse.get('items'):
|
for item in jsonResponse.get('items'):
|
||||||
|
|
||||||
item = dict(item)
|
item = dict(item)
|
||||||
|
|
||||||
fields = []
|
fields = []
|
||||||
@@ -1342,16 +1351,16 @@ class OnspringClient:
|
|||||||
item.get('recordId'))
|
item.get('recordId'))
|
||||||
|
|
||||||
for field in item.get('fieldData'):
|
for field in item.get('fieldData'):
|
||||||
|
|
||||||
field = dict(field)
|
field = dict(field)
|
||||||
|
|
||||||
field = RecordFieldValue(
|
field = RecordFieldValue(
|
||||||
field.get('fieldId'),
|
field.get('fieldId'),
|
||||||
field.get('value'),
|
field.get('value'),
|
||||||
field.get('type'))
|
field.get('type'))
|
||||||
|
|
||||||
fields.append(field)
|
fields.append(field)
|
||||||
|
|
||||||
record.fields = fields
|
record.fields = fields
|
||||||
|
|
||||||
records.append(record)
|
records.append(record)
|
||||||
@@ -1378,14 +1387,15 @@ class OnspringClient:
|
|||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
record (`Models.Record`): An object that contains all the information for making a successful request.
|
record (`Models.Record`): An object that contains all the information for making a successful request.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
endpoint = AddOrUpdateRecordEndpoint(self.baseUrl)
|
endpoint = AddOrUpdateRecordEndpoint(self.baseUrl)
|
||||||
|
|
||||||
self.headers['Content-Type'] = 'application/json'
|
headers = self.headers.copy()
|
||||||
|
headers['Content-Type'] = 'application/json'
|
||||||
|
|
||||||
fieldsDict = {}
|
fieldsDict = {}
|
||||||
|
|
||||||
@@ -1399,18 +1409,18 @@ class OnspringClient:
|
|||||||
response = requests.request(
|
response = requests.request(
|
||||||
'PUT',
|
'PUT',
|
||||||
endpoint,
|
endpoint,
|
||||||
headers=self.headers,
|
headers=headers,
|
||||||
data=requestData)
|
data=requestData)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Request is data is invalid',
|
message='Request is data is invalid',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -1445,8 +1455,8 @@ class OnspringClient:
|
|||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
def DeleteRecordsByIds(self, deleteBatchRecordsRequest: DeleteBatchRecordsRequest) -> ApiResponse:
|
def DeleteRecordsByIds(self, deleteBatchRecordsRequest: DeleteBatchRecordsRequest) -> ApiResponse:
|
||||||
"""
|
"""
|
||||||
@@ -1454,32 +1464,33 @@ class OnspringClient:
|
|||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
deleteBatchRecordsRequest (`Models.DeleteBatchRecordsRequest`): An object that contains all the necessary information for making a successful request.
|
deleteBatchRecordsRequest (`Models.DeleteBatchRecordsRequest`): An object that contains all the necessary information for making a successful request.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
endpoint = DeleteRecordsByIds(self.baseUrl)
|
endpoint = DeleteRecordsByIds(self.baseUrl)
|
||||||
|
|
||||||
self.headers['Content-Type'] = 'application/json'
|
headers = self.headers.copy()
|
||||||
|
headers['Content-Type'] = 'application/json'
|
||||||
|
|
||||||
requestData = json.dumps(deleteBatchRecordsRequest.__dict__)
|
requestData = json.dumps(deleteBatchRecordsRequest.__dict__)
|
||||||
|
|
||||||
response = requests.request(
|
response = requests.request(
|
||||||
'POST',
|
'POST',
|
||||||
endpoint,
|
endpoint,
|
||||||
headers=self.headers,
|
headers=headers,
|
||||||
data=requestData)
|
data=requestData)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Invalid request provided',
|
message='Invalid request provided',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -1495,14 +1506,14 @@ class OnspringClient:
|
|||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 404:
|
if response.status_code == 404:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Records could not be found',
|
message='Records could not be found',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 204:
|
if response.status_code == 204:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Record(s) deleted successfully',
|
message='Record(s) deleted successfully',
|
||||||
@@ -1520,12 +1531,13 @@ class OnspringClient:
|
|||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
getReportByIdRequest (`Models.GetReportByIdRequest`): An object that contains all the necessary information for making a successful request.
|
getReportByIdRequest (`Models.GetReportByIdRequest`): An object that contains all the necessary information for making a successful request.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
An ApiResponse (`Models.ApiResponse`) containing the results of the request.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
endpoint = GetReportByIdEndpoint(self.baseUrl, getReportByIdRequest.reportId)
|
endpoint = GetReportByIdEndpoint(
|
||||||
|
self.baseUrl, getReportByIdRequest.reportId)
|
||||||
|
|
||||||
params = getReportByIdRequest.__dict__
|
params = getReportByIdRequest.__dict__
|
||||||
del params['reportId']
|
del params['reportId']
|
||||||
@@ -1535,16 +1547,16 @@ class OnspringClient:
|
|||||||
endpoint,
|
endpoint,
|
||||||
headers=self.headers,
|
headers=self.headers,
|
||||||
params=params)
|
params=params)
|
||||||
|
|
||||||
if response.status_code == 400:
|
if response.status_code == 400:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Invalid request based on underlying data',
|
message='Invalid request based on underlying data',
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 401:
|
if response.status_code == 401:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Unauthorized request',
|
message='Unauthorized request',
|
||||||
@@ -1560,7 +1572,7 @@ class OnspringClient:
|
|||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
if response.status_code == 404:
|
if response.status_code == 404:
|
||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
message='Report could not be found',
|
message='Report could not be found',
|
||||||
@@ -1569,19 +1581,19 @@ class OnspringClient:
|
|||||||
if response.status_code == 200:
|
if response.status_code == 200:
|
||||||
|
|
||||||
jsonResponse = dict(response.json())
|
jsonResponse = dict(response.json())
|
||||||
|
|
||||||
rows = []
|
rows = []
|
||||||
|
|
||||||
for row in jsonResponse.get('rows'):
|
for row in jsonResponse.get('rows'):
|
||||||
|
|
||||||
row = dict(row)
|
row = dict(row)
|
||||||
|
|
||||||
row = Row(
|
row = Row(
|
||||||
row.get('recordId'),
|
row.get('recordId'),
|
||||||
row.get('cells'))
|
row.get('cells'))
|
||||||
|
|
||||||
rows.append(row)
|
rows.append(row)
|
||||||
|
|
||||||
data = GetReportByIdResponse(
|
data = GetReportByIdResponse(
|
||||||
jsonResponse.get('columns'),
|
jsonResponse.get('columns'),
|
||||||
rows)
|
rows)
|
||||||
@@ -1595,7 +1607,7 @@ class OnspringClient:
|
|||||||
response.status_code,
|
response.status_code,
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|
||||||
def GetReportsByAppId(self, appId: int, pagingRequest: PagingRequest=PagingRequest(1,50)) -> ApiResponse:
|
def GetReportsByAppId(self, appId: int, pagingRequest: PagingRequest = PagingRequest(1, 50)) -> ApiResponse:
|
||||||
"""
|
"""
|
||||||
Get reports for an app by its id..
|
Get reports for an app by its id..
|
||||||
|
|
||||||
@@ -1670,4 +1682,4 @@ class OnspringClient:
|
|||||||
|
|
||||||
return ApiResponse(
|
return ApiResponse(
|
||||||
response.status_code,
|
response.status_code,
|
||||||
raw=response)
|
raw=response)
|
||||||
|
|||||||
Reference in New Issue
Block a user