sams_client.client – Base Client

class SamsClient(config: Optional[Dict[str, Any]] = None)

Class for Superdesk Asset Managements Service Client

Variables

Usage:

from sams_client import Client

configs = {
    'HOST': 'localhost',
    'PORT': '5700',
    'SAMS_AUTH_TYPE': 'sams_client.auth.public',
    'SAMS_AUTH_KEY': ''
}
client = SamsClient(configs)
response = client.request(api='/')
request(api: str = '/', method: str = 'get', params: Optional[Dict] = None, headers: Optional[Dict[str, Any]] = None, external_user_id: Optional[str] = None, external_session_id: Optional[str] = None, data: Optional[str] = None, files=None, callback: Optional[Callable[[requests.models.Response], requests.models.Response]] = None)requests.models.Response

Handle request methods

Parameters
  • api (str) – The url for the request

  • method (str) – The HTTP method to use

  • external_user_id (str) – the external user id for versioncreator

  • external_session_id (str) – the external session id for locking session

  • headers (dict) – Dictionary of headers to apply

  • data – The body for the request

  • callback – A callback function to manipulate the response

Return type

requests.Response

Returns

The API response

get(url: str, params: Optional[Dict] = None, headers: Optional[Dict[str, Any]] = None, external_user_id: Optional[str] = None, callback: Optional[Callable[[requests.models.Response], requests.models.Response]] = None)requests.models.Response

Helper method for GET requests

Parameters
  • url (str) – The url to get

  • headers (dict) – Dictionary of headers to apply

  • external_user_id (str) – the external user id for versioncreator

  • callback – A callback function to manipulate the response

Return type

requests.Response

Returns

The API response

search(url: str, params: Optional[Dict[str, Any]] = None, headers: Optional[Dict[str, any]] = None, external_user_id: Optional[str] = None, callback: Optional[Callable[[requests.models.Response], requests.models.Response]] = None)requests.models.Response

Helper method for GET requests with query args

Parameters
  • url (str) – The url to get

  • args (dict) – Dictionary of query args to apply

  • headers (dict) – Dictionary of headers to apply

  • external_user_id (str) – the external user id for versioncreator

  • callback – A callback function to manipulate the response

Return type

requests.Response

Returns

The API response

post(url: str, params: Optional[Dict[str, Any]] = None, headers: Optional[Dict[str, Any]] = None, external_user_id: Optional[str] = None, external_session_id: Optional[str] = None, data: Optional[str] = None, files=None, callback: Optional[Callable[[requests.models.Response], requests.models.Response]] = None)requests.models.Response

Helper method for POST requests

Converts the data to a string using json.dumps if data is not a string.

Parameters
  • url (str) – The url to post to

  • headers (dict) – Dictionary of headers to apply

  • external_user_id (str) – the external user id for versioncreator

  • external_session_id (str) – the external session id for locking session

  • data – The body for the request

  • callback – A callback function to manipulate the response

Return type

requests.Response

Returns

The API response

patch(url: str, headers: Optional[Dict[str, Any]] = None, external_user_id: Optional[str] = None, external_session_id: Optional[str] = None, data: Optional[str] = None, files=None, callback: Optional[Callable[[requests.models.Response], requests.models.Response]] = None)requests.models.Response

Helper method for PATCH requests

Converts the data to a string using json.dumps if data is not a string.

Parameters
  • url (str) – The url to patch to

  • headers (dict) – Dictionary of headers to apply

  • external_user_id (str) – the external user id for versioncreator

  • external_session_id (str) – the external session id for locking session

  • data – The body of the request

  • callback – A callback function to manipulate the response

Return type

requests.Response

Returns

The API response

delete(url: str, headers: Optional[Dict[str, Any]] = None, external_user_id: Optional[str] = None, callback: Optional[Callable[[requests.models.Response], requests.models.Response]] = None)requests.models.Response

Helper method for DELETE requests

Parameters
  • url (str) – The url to delete

  • headers (dict) – Dictionary of headers to apply

  • external_user_id (str) – the external user id for versioncreator

  • callback – A callback function to manipulate the response

Return type

requests.Response

Returns

The API response