Legacy Dev Forum Posts

 View Only

Sign Up

Debugging Error - missing attribute in WorkForce Management Client API

  • 1.  Debugging Error - missing attribute in WorkForce Management Client API

    Posted 06-05-2025 18:08

    hloomba | 2022-07-27 01:08:39 UTC | #1

    Team,

    Im trying to figure out the following error. My assumption is it's because connection config mostly hitting the previous version of the WFM API. But that shouldn't be the case because same connection config I used in local testing and it's working fine. But when I setup this connection on Airflow I do see this issue -

    The following connection config Im using -

    import time from typing import TypeVar, Iterable, Callable import PureCloudPlatformClientV2

    host = "https://api.usw2.pure.cloud" clientid = "" clientsecret = ""

    return PureCloudPlatformClientV2.api_client.ApiClient()

    PureCloudPlatformClientV2.configuration.host = host apiinst = PureCloudPlatformClientV2.apiclient.ApiClient().getclientcredentialstoken(clientid, clientsecret) PureCloudPlatformClientV2.configuration.accesstoken = apiinst.accesstoken api_instance = PureCloudPlatformClientV2.WorkforceManagementApi()

    Brief on error - Few attributes are missing from the API instance and the one resource path Im triggering is "getworkforcemanagementadherencehistoricaljob(job_id)" and the referred documentation is here

    ERROR - Traceback (most recent call last): File "/usr/local/lib/python3.8/site-packages/airflow/models/taskinstance.py", line 984, in runrawtask result = taskcopy.execute(context=context) File "/usr/local/lib/python3.8/site-packages/airflow/operators/pythonoperator.py", line 113, in execute returnvalue = self.executecallable() File "/usr/local/lib/python3.8/site-packages/airflow/operators/pythonoperator.py", line 118, in executecallable return self.pythoncallable(self.op_args, *self.op_kwargs) File "/home/airflow/credify/upflow/upflow/dags/dwgenesysredshift/dailywfmload.py", line 70, in determinewfmdaymetricsintervals hookinstance = GenesysWFMAdherenceDayMetricsAPIHook() File "/home/airflow/credify/upflow/upflow/hooks/genesys/workforcemanagement/genesyswfmjobapihook.py", line 74, in _init_ self.checkjobstatuscallable = self.client.getworkforcemanagementadherencehistorical_job


    AttributeError: 'WorkforceManagementApi' object has no attribute 'getworkforcemanagementadherencehistoricaljob'*

    Appreciate the immediate response. Thanks!


    hloomba | 2022-07-27 16:38:41 UTC | #2

    The API definition is the following and its missing *getworkforcemanagementadherencehistoricaljob* ->` methods in the api - ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'api_client', 'delete_workforcemanagement_businessunit', 'delete_workforcemanagement_businessunit_activitycode', 'delete_workforcemanagement_businessunit_planninggroup', 'delete_workforcemanagement_businessunit_scheduling_run', 'delete_workforcemanagement_businessunit_servicegoaltemplate', 'delete_workforcemanagement_businessunit_week_schedule', 'delete_workforcemanagement_businessunit_week_shorttermforecast', 'delete_workforcemanagement_managementunit', 'delete_workforcemanagement_managementunit_workplan', 'delete_workforcemanagement_managementunit_workplanrotation', 'get_workforcemanagement_adherence', 'get_workforcemanagement_adhocmodelingjob', 'get_workforcemanagement_agent_managementunit', 'get_workforcemanagement_agents_me_managementunit', 'get_workforcemanagement_businessunit', 'get_workforcemanagement_businessunit_activitycode', 'get_workforcemanagement_businessunit_activitycodes', 'get_workforcemanagement_businessunit_intraday_planninggroups', 'get_workforcemanagement_businessunit_managementunits', 'get_workforcemanagement_businessunit_planninggroup', 'get_workforcemanagement_businessunit_planninggroups', 'get_workforcemanagement_businessunit_scheduling_run', 'get_workforcemanagement_businessunit_scheduling_run_result', 'get_workforcemanagement_businessunit_scheduling_runs', 'get_workforcemanagement_businessunit_servicegoaltemplate', 'get_workforcemanagement_businessunit_servicegoaltemplates', 'get_workforcemanagement_businessunit_week_schedule', 'get_workforcemanagement_businessunit_week_schedule_generationresults', 'get_workforcemanagement_businessunit_week_schedule_headcountforecast', 'get_workforcemanagement_businessunit_week_schedule_history_agent', 'get_workforcemanagement_businessunit_week_schedules', 'get_workforcemanagement_businessunit_week_shorttermforecast', 'get_workforcemanagement_businessunit_week_shorttermforecast_data', 'get_workforcemanagement_businessunit_week_shorttermforecast_generationresults', 'get_workforcemanagement_businessunit_week_shorttermforecast_longtermforecastdata', 'get_workforcemanagement_businessunit_week_shorttermforecast_planninggroups', 'get_workforcemanagement_businessunit_week_shorttermforecasts', 'get_workforcemanagement_businessunits', 'get_workforcemanagement_businessunits_divisionviews', 'get_workforcemanagement_historicaldata_deletejob', 'get_workforcemanagement_historicaldata_importstatus', 'get_workforcemanagement_managementunit', 'get_workforcemanagement_managementunit_activitycodes', 'get_workforcemanagement_managementunit_adherence', 'get_workforcemanagement_managementunit_agent', 'get_workforcemanagement_managementunit_agent_shifttrades', 'get_workforcemanagement_managementunit_shifttrades_matched', 'get_workforcemanagement_managementunit_shifttrades_users', 'get_workforcemanagement_managementunit_user_timeoffrequest', 'get_workforcemanagement_managementunit_user_timeoffrequests', 'get_workforcemanagement_managementunit_users', 'get_workforcemanagement_managementunit_week_schedule', 'get_workforcemanagement_managementunit_week_schedules', 'get_workforcemanagement_managementunit_week_shifttrades', 'get_workforcemanagement_managementunit_workplan', 'get_workforcemanagement_managementunit_workplanrotation', 'get_workforcemanagement_managementunit_workplanrotations', 'get_workforcemanagement_managementunit_workplans', 'get_workforcemanagement_managementunits', 'get_workforcemanagement_managementunits_divisionviews', 'get_workforcemanagement_notifications', 'get_workforcemanagement_schedulingjob', 'get_workforcemanagement_shifttrades', 'get_workforcemanagement_timeoffrequest', 'get_workforcemanagement_timeoffrequests', 'patch_workforcemanagement_businessunit', 'patch_workforcemanagement_businessunit_activitycode', 'patch_workforcemanagement_businessunit_planninggroup', 'patch_workforcemanagement_businessunit_scheduling_run', 'patch_workforcemanagement_businessunit_servicegoaltemplate', 'patch_workforcemanagement_managementunit', 'patch_workforcemanagement_managementunit_user_timeoffrequest', 'patch_workforcemanagement_managementunit_week_shifttrade', 'patch_workforcemanagement_managementunit_workplan', 'patch_workforcemanagement_managementunit_workplanrotation', 'patch_workforcemanagement_timeoffrequest', 'post_workforcemanagement_adherence_historical', 'post_workforcemanagement_agentschedules_mine', 'post_workforcemanagement_businessunit_activitycodes', 'post_workforcemanagement_businessunit_agentschedules_search', 'post_workforcemanagement_businessunit_intraday', 'post_workforcemanagement_businessunit_planninggroups', 'post_workforcemanagement_businessunit_servicegoaltemplates', 'post_workforcemanagement_businessunit_week_schedule_agentschedules_query', 'post_workforcemanagement_businessunit_week_schedule_copy', 'post_workforcemanagement_businessunit_week_schedule_reschedule', 'post_workforcemanagement_businessunit_week_schedules', 'post_workforcemanagement_businessunit_week_schedules_generate', 'post_workforcemanagement_businessunit_week_shorttermforecast_copy', 'post_workforcemanagement_businessunit_week_shorttermforecasts_generate', 'post_workforcemanagement_businessunits', 'post_workforcemanagement_historicaldata_deletejob', 'post_workforcemanagement_historicaldata_validate', 'post_workforcemanagement_managementunit_agentschedules_search', 'post_workforcemanagement_managementunit_historicaladherencequery', 'post_workforcemanagement_managementunit_move', 'post_workforcemanagement_managementunit_schedules_search', 'post_workforcemanagement_managementunit_timeoffrequests', 'post_workforcemanagement_managementunit_timeoffrequests_query', 'post_workforcemanagement_managementunit_week_shifttrade_match', 'post_workforcemanagement_managementunit_week_shifttrades', 'post_workforcemanagement_managementunit_week_shifttrades_search', 'post_workforcemanagement_managementunit_week_shifttrades_state_bulk', 'post_workforcemanagement_managementunit_workplan_copy', 'post_workforcemanagement_managementunit_workplan_validate', 'post_workforcemanagement_managementunit_workplanrotation_copy', 'post_workforcemanagement_managementunit_workplanrotations', 'post_workforcemanagement_managementunit_workplans', 'post_workforcemanagement_managementunits', 'post_workforcemanagement_notifications_update', 'post_workforcemanagement_schedules', 'post_workforcemanagement_timeoffrequests'] `


    tim.smith | 2022-07-27 16:59:00 UTC | #3

    hloomba, post:1, topic:15695
    AttributeError: 'WorkforceManagementApi' object has no attribute 'getworkforcemanagementadherencehistoricaljob'

    Hello, it sounds like you're probably using an old version of the SDK that doesn't contain those methods. The recommended best practice is to keep your application updated with the latest version of the package. That method is confirmed to be in the SDK's source code here: https://github.com/MyPureCloud/platform-client-sdk-python/blob/master/build/PureCloudPlatformClientV2/apis/workforce_management_api.py#L1207


    system | 2022-08-27 16:59:50 UTC | #4

    This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.


    This post was migrated from the old Developer Forum.

    ref: 15695