connect.governance.credo_api.CredoApi

class connect.governance.credo_api.CredoApi(client=None)

Bases: object

CredoApi holds Credo API functions

__init__(client=None)

Methods

__init__([client])

create_assessment(use_case_id, data)

Upload evidences to API server.

get_assessment(use_case_id, id)

Get assessment to know the assessment uploading progress and result.

get_assessment_plan(url)

Get assessment plan from API server and returns it.

get_assessment_plan_url(use_case_name[, ...])

Convert use_case_name and policy_pack_key to assessment_plan_url

set_client(client)

Sets Credo Api Client

update_use_case_model_link_tags(use_case_id, ...)

Update tags of use case model link

create_assessment(use_case_id, data)

Upload evidences to API server. API server creates an assessment and returns it. API server does the uploading process in the background, and updates assessment with the progress and result.

Parameters
  • use_case_id (str) – use case id

  • data (dict) – assessment data generated by Governance

Returns

id(str): assessment id

Return type

dict

Raises

HTTPError – When API request returns error

get_assessment(use_case_id, id)

Get assessment to know the assessment uploading progress and result.

Parameters
  • use_case_id (str) – use case id

  • id (str) – assessment id

Returns

id(str): assessment id result(str): the result of assessment uploading, one of in_progress, success, error logs(list): list of logs details(dict): rhe summary of uploads when the result is success error(str): error reason when the result is error duration(int): time taken for uploading

Return type

dict

Raises

HTTPError – When API request returns error

get_assessment_plan(url)

Get assessment plan from API server and returns it.

Parameters

url (str) – assessment plan URL

Returns

evidence_requirements(list): list of evidence requirements policy_pack_id(str): policy pack id(key+version), ie: FAIR+1 use_case_id(str): use case id

Return type

dict

Raises

HTTPError – When API request returns error

get_assessment_plan_url(use_case_name, policy_pack_key=None)

Convert use_case_name and policy_pack_key to assessment_plan_url

Parameters
  • use_case_name (str) – name of a use case

  • policy_pack_key (str) – policy pack key, ie: FAIR If it is None, it gets the first resgisterd policy pack in use case

Returns

  • None – When use_case_name does not exist or policy_pack_key is not registered to the use_case

  • str – assessment_plan_url

Raises

HTTPError – When API request returns error other than 404

set_client(client)

Sets Credo Api Client

Parameters

client (CredoApiClient) – Credo API client

Update tags of use case model link

Parameters
  • use_case_id (str) – use case id

  • model_link_id (str) – use case model link id

  • tags (dict) – model tags like {“key”: “value”}

Returns

Return type

None

Raises

HTTPError – When API request returns error