Python API Client Wrapper Demo
import rrap_mds_is_data_api
import rrap_mds_is_prov_api
import rrap_mds_is_registry_api
import rrap_mds_is_landing_portal_api
from mdsisclienttools.auth.TokenManager import DeviceFlowManager
get_token = DeviceFlowManager(
stage="TEST",
keycloak_endpoint="https://auth.dev.rrap-is.com/auth/realms/rrap"
).get_token
from rrap_mds_is_registry_api.configuration import Configuration
import rrap_mds_is_registry_api.apis as registry_apis
import rrap_mds_is_registry_api.models as registry_models
# We want token to be ready at the time that we call the API so
# write a function which generates the config on demand
def get_config() -> Configuration:
config = Configuration(host="https://registry-api.testing.rrap-is.com")
config.access_token = get_token()
return config
def get_client() -> rrap_mds_is_registry_api.ApiClient:
return rrap_mds_is_registry_api.ApiClient(
configuration=get_config()
)
person_api = registry_apis.PersonApi(get_client())
all_people = person_api.list_agent_person(_check_return_type=False)
items = all_people.items
example_people: registry_models.ItemPerson = list(filter(
lambda person: person['first_name'] == "John" and person['last_name'] == 'Doe', items))
assert len(example_people) > 0
example_person = example_people[0]
print(example_person)
person_api = registry_apis.PersonApi(get_client())
result_person = person_api.fetch_agent_person(id=example_person['id'],_check_return_type=False)
print(result_person)