DomoError

preferred base error class for Domo Exceptions
import domolibrary.routes.user as user_route
import domolibrary.classes.DomoUser as dmdu

import domolibrary.client.DomoAuth as dmda
import os

source

DomoError

 DomoError (entity_id:Optional[str]=None,
            function_name:Optional[str]=None, status:Optional[int]=None,
            message:str='error', res=None,
            domo_instance:Optional[str]=None, parent_class:str=None,
            is_exception_not_error:bool=False)

base exception

Type Default Details
entity_id Optional None
function_name Optional None
status Optional None API request status
message str error .domo.com
res NoneType None
domo_instance Optional None
parent_class str None
is_exception_not_error bool False
try:
    raise DomoError(
        entity_id="ds_123",
        function_name="create_dataset",
        # parent_class = "Foo",
        status=403,
        message="invalid path",
    )
except DomoError as e:
    print(e)
🛑  DomoError 🛑 - function: create_dataset || ds_123 || status 403 || invalid path

source

RouteError

 RouteError (res:Any, entity_id:str=None,
             is_exception_not_error:bool=False, message=None)

base exception

auth = dmda.DomoTokenAuth(
    domo_instance=os.environ['DOMO_INSTANCE'],
    domo_access_token=os.environ["DOMO_ACCESS_TOKEN"],
)
async def test_fn(user_id):
    res = await user_route.get_all_users(auth = auth, 
                                         parent_class = 'test',
                                         debug_num_stacks_to_drop=2)
    res.response = 'hello world'

    raise RouteError(res = res, entity_id = user_id)

try:
    await test_fn(user_id = None)
except RouteError as e:
    print(e)
🛑  RouteError 🛑 - function: test.get_traceback || status 200 || hello world at domo-community

source

ClassError

 ClassError (cls=None, cls_instance=None, cls_name_attr=None,
             entity_id:str=None, entity_name:str=None, res=None,
             auth=None, message:str=None)

base exception

sample_class = dmdu.DomoUser(display_name= 'heidi', id =1234,auth = None)

try:
    raise ClassError(
    cls_instance= sample_class,
    cls_name_attr= 'display_name'
)

except ClassError as e:
    print(e)
🛑  ClassError 🛑 - function: 🛑 DomoUser 🛑 1234 - heidi || None || error

Standard PreRequisite Errors


source

AuthNotProvidedError

 AuthNotProvidedError (entity_id, function_name, message='valid Auth
                       object not provided', status=None,
                       domo_instance=None)

base exception


source

DatasetNotProvidedError

 DatasetNotProvidedError (function_name, message='dataset_id not
                          provided', domo_instance=None, entity_id=None,
                          status=None)

base exception