Types¶
flowtask.components.Workday.types
¶
LocationType
¶
Bases: WorkdayTypeBase
Handler for the Workday Get_Locations operation.
execute
async
¶
Execute the Get_Locations operation and return a pandas DataFrame.
Supported parameters: - location_id: Specific location ID to fetch (uses Request_References) - location_name: Filter by location name (uses Request_Criteria) - location_type: Filter by location type - location_usage: Filter by location usage - inactive: Filter by inactive status (True/False)
get_location_by_id
async
¶
Convenience method to get a specific location by ID.
get_location_by_name
async
¶
Convenience method to get a specific location by name.
get_locations_by_type
async
¶
Convenience method to get locations by type.
OrganizationType
¶
Bases: WorkdayTypeBase
Handler for the Workday Get_Organizations operation.
execute
async
¶
Execute the Get_Organizations operation and return a pandas DataFrame.
Supported parameters: - organization_id: Specific organization ID to fetch (uses Request_References) - organization_id_type: Type of organization ID (WID, Organization_Reference_ID, Cost_Center_Reference_ID, etc.) - organization_type: Filter by organization type (Company, Cost Center, Custom, Matrix, Pay Group, Region, Retiree, Supervisory, etc.) - include_inactive: Include inactive organizations (True/False) - enable_transaction_log_lite: Enable transaction log lite (True/False)
get_active_organizations
async
¶
Get only active organizations.
:return: DataFrame with active organizations data
get_all_organizations
async
¶
Get all organizations (active and optionally inactive).
:param include_inactive: Whether to include inactive organizations :return: DataFrame with all organizations data
get_companies
async
¶
Get only company organizations.
:return: DataFrame with company organizations data
get_cost_centers
async
¶
Get only cost center organizations.
:return: DataFrame with cost center organizations data
get_organization_by_cost_center_id
async
¶
Get a specific organization by Cost Center Reference ID.
:param cost_center_id: The organization Cost Center Reference ID to fetch :return: DataFrame with organization data
get_organization_by_id
async
¶
Get a specific organization by ID.
:param organization_id: The organization ID to fetch :param id_type: Type of ID (WID, Organization_Reference_ID, Cost_Center_Reference_ID, etc.) :return: DataFrame with organization data
get_organization_by_wid
async
¶
Get a specific organization by WID.
:param wid: The organization WID to fetch :return: DataFrame with organization data
get_organizations_by_type
async
¶
Get organizations filtered by type.
:param organization_type: Organization type (Company, Cost Center, Custom, Matrix, Pay Group, Region, Retiree, Supervisory, etc.) :return: DataFrame with organizations data
get_supervisory_organizations
async
¶
Get only supervisory organizations.
:return: DataFrame with supervisory organizations data
TimeBlockType
¶
Bases: WorkdayTypeBase
Handler for the Workday Get_Calculated_Time_Blocks operation.
execute
async
¶
Execute the Get_Calculated_Time_Blocks operation and return a pandas DataFrame.
Supported parameters: - worker_id: Specific worker ID to fetch time blocks for - start_date: Start date for date range filter (YYYY-MM-DD) - end_date: End date for date range filter (YYYY-MM-DD) - time_block_id: Specific time block ID to fetch - status: Filter by status - supervisory_org: Filter by supervisory organization - include_deleted: Whether to include deleted time blocks (default: False)
get_time_blocks_by_date_range
async
¶
Convenience method to get time blocks for a date range.
get_time_blocks_by_worker
async
¶
Convenience method to get time blocks for a specific worker.
TimeRequestType
¶
Bases: WorkdayTypeBase
Handles Get_Time_Requests operation for Workday Time Tracking API.
get_time_request_by_id
async
¶
Get a specific time request by ID.
get_time_requests_by_date_range
async
¶
Get all time requests within a date range.
get_time_requests_by_organization
async
¶
Get time requests for a specific organization within an optional date range.
get_time_requests_by_worker
async
¶
Get time requests for a specific worker within an optional date range.
WorkerType
¶
Bases: WorkdayTypeBase
Handler for the Workday Get_Workers operation, batching pages
so that no more than max_parallel requests run concurrently.
:param component: Component instance :param max_retries: Maximum retry attempts (default: 5 for connection resilience) :param retry_delay: Base delay between retries in seconds (default: 0.5 for exponential backoff)
execute
async
¶
Execute the Get_Workers operation and return a pandas DataFrame.
If worker_id is provided, fetches only that one; otherwise
fetches all pages in batches of at most max_parallel concurrent requests.
base
¶
WorkdayTypeBase
¶
Bases: ABC
Base class for Workday operation types.
Provides
- Default payload structure for all Workday operations.
- Generic pagination logic with retries and logging.
- Common SOAP response handling utilities.
:param component: Component instance (used for run, logger, metrics). :param max_retries: Maximum number of retry attempts per page on failure. :param retry_delay: Seconds to wait between retry attempts.
execute
abstractmethod
async
¶
Execute the specific operation logic. Must be implemented by subclasses.
location_hierarchy_assignments
¶
Get_Location_Hierarchy_Organization_Assignments operation handler.
This module handles the Get_Location_Hierarchy_Organization_Assignments operation which retrieves organization assignments for location hierarchies.
LocationHierarchyAssignmentsType
¶
Bases: WorkdayTypeBase
Handler for Get_Location_Hierarchy_Organization_Assignments operation.
Retrieves organization assignments for location hierarchies.
:param component: Component instance :param max_retries: Maximum retry attempts (default: 5 for connection resilience) :param retry_delay: Delay between retries in seconds (default: 2.0 for API rate limiting) :param kwargs: Additional parameters
execute
async
¶
Execute Get_Location_Hierarchy_Organization_Assignments operation.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
**kwargs
|
Additional parameters including: - location_hierarchy_ids: List of location hierarchy IDs to fetch - location_hierarchy_id_type: Type of ID (WID, Organization_Reference_ID) - as_of_effective_date: Date for effective data - as_of_entry_datetime: Date/time for entry data - page: Page number for pagination - count: Number of results per page |
{}
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
pandas DataFrame containing the location hierarchy organization assignments |
get_all_assignments
async
¶
Get all location hierarchy organization assignments.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
**kwargs
|
Additional parameters for filtering |
{}
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
DataFrame with all location hierarchy organization assignments |
get_assignments_by_location_hierarchy
async
¶
Get organization assignments for a specific location hierarchy.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
location_hierarchy_id
|
str
|
The location hierarchy ID to fetch |
required |
id_type
|
str
|
Type of ID (WID, Organization_Reference_ID) |
'Organization_Reference_ID'
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
DataFrame with organization assignments for the location hierarchy |
locations
¶
LocationType
¶
Bases: WorkdayTypeBase
Handler for the Workday Get_Locations operation.
execute
async
¶
Execute the Get_Locations operation and return a pandas DataFrame.
Supported parameters: - location_id: Specific location ID to fetch (uses Request_References) - location_name: Filter by location name (uses Request_Criteria) - location_type: Filter by location type - location_usage: Filter by location usage - inactive: Filter by inactive status (True/False)
get_location_by_id
async
¶
Convenience method to get a specific location by ID.
get_location_by_name
async
¶
Convenience method to get a specific location by name.
get_locations_by_type
async
¶
Convenience method to get locations by type.
organization_single
¶
Get_Organization operation handler.
This module handles the Get_Organization operation which retrieves a specific organization by its ID (singular, not plural).
GetOrganization
¶
Bases: WorkdayTypeBase
Handler for Get_Organization operation.
Retrieves a specific organization by its ID.
execute
async
¶
Execute Get_Organization operation to retrieve a specific organization.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
organization_id
|
str
|
The ID of the organization to retrieve |
required |
organization_id_type
|
str
|
The type of ID (Organization_Reference_ID, WID, etc.) |
'Organization_Reference_ID'
|
**kwargs
|
Additional parameters |
{}
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
pandas DataFrame containing the organization data |
get_organization_by_custom_id
async
¶
Get organization by Custom_Organization_Reference_ID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
custom_id
|
str
|
The Custom_Organization_Reference_ID |
required |
**kwargs
|
Additional parameters |
{}
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
pandas DataFrame containing the organization data |
get_organization_by_reference_id
async
¶
Get organization by Organization_Reference_ID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
reference_id
|
str
|
The Organization_Reference_ID |
required |
**kwargs
|
Additional parameters |
{}
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
pandas DataFrame containing the organization data |
get_organization_by_wid
async
¶
Get organization by WID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
wid
|
str
|
The WID of the organization |
required |
**kwargs
|
Additional parameters |
{}
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
pandas DataFrame containing the organization data |
organizations
¶
OrganizationType
¶
Bases: WorkdayTypeBase
Handler for the Workday Get_Organizations operation.
execute
async
¶
Execute the Get_Organizations operation and return a pandas DataFrame.
Supported parameters: - organization_id: Specific organization ID to fetch (uses Request_References) - organization_id_type: Type of organization ID (WID, Organization_Reference_ID, Cost_Center_Reference_ID, etc.) - organization_type: Filter by organization type (Company, Cost Center, Custom, Matrix, Pay Group, Region, Retiree, Supervisory, etc.) - include_inactive: Include inactive organizations (True/False) - enable_transaction_log_lite: Enable transaction log lite (True/False)
get_active_organizations
async
¶
Get only active organizations.
:return: DataFrame with active organizations data
get_all_organizations
async
¶
Get all organizations (active and optionally inactive).
:param include_inactive: Whether to include inactive organizations :return: DataFrame with all organizations data
get_companies
async
¶
Get only company organizations.
:return: DataFrame with company organizations data
get_cost_centers
async
¶
Get only cost center organizations.
:return: DataFrame with cost center organizations data
get_organization_by_cost_center_id
async
¶
Get a specific organization by Cost Center Reference ID.
:param cost_center_id: The organization Cost Center Reference ID to fetch :return: DataFrame with organization data
get_organization_by_id
async
¶
Get a specific organization by ID.
:param organization_id: The organization ID to fetch :param id_type: Type of ID (WID, Organization_Reference_ID, Cost_Center_Reference_ID, etc.) :return: DataFrame with organization data
get_organization_by_wid
async
¶
Get a specific organization by WID.
:param wid: The organization WID to fetch :return: DataFrame with organization data
get_organizations_by_type
async
¶
Get organizations filtered by type.
:param organization_type: Organization type (Company, Cost Center, Custom, Matrix, Pay Group, Region, Retiree, Supervisory, etc.) :return: DataFrame with organizations data
get_supervisory_organizations
async
¶
Get only supervisory organizations.
:return: DataFrame with supervisory organizations data
time_blocks
¶
TimeBlockType
¶
Bases: WorkdayTypeBase
Handler for the Workday Get_Calculated_Time_Blocks operation.
execute
async
¶
Execute the Get_Calculated_Time_Blocks operation and return a pandas DataFrame.
Supported parameters: - worker_id: Specific worker ID to fetch time blocks for - start_date: Start date for date range filter (YYYY-MM-DD) - end_date: End date for date range filter (YYYY-MM-DD) - time_block_id: Specific time block ID to fetch - status: Filter by status - supervisory_org: Filter by supervisory organization - include_deleted: Whether to include deleted time blocks (default: False)
get_time_blocks_by_date_range
async
¶
Convenience method to get time blocks for a date range.
get_time_blocks_by_worker
async
¶
Convenience method to get time blocks for a specific worker.
time_requests
¶
TimeRequestType
¶
Bases: WorkdayTypeBase
Handles Get_Time_Requests operation for Workday Time Tracking API.
get_time_request_by_id
async
¶
Get a specific time request by ID.
get_time_requests_by_date_range
async
¶
Get all time requests within a date range.
get_time_requests_by_organization
async
¶
Get time requests for a specific organization within an optional date range.
get_time_requests_by_worker
async
¶
Get time requests for a specific worker within an optional date range.
workers
¶
WorkerType
¶
Bases: WorkdayTypeBase
Handler for the Workday Get_Workers operation, batching pages
so that no more than max_parallel requests run concurrently.
:param component: Component instance :param max_retries: Maximum retry attempts (default: 5 for connection resilience) :param retry_delay: Base delay between retries in seconds (default: 0.5 for exponential backoff)
execute
async
¶
Execute the Get_Workers operation and return a pandas DataFrame.
If worker_id is provided, fetches only that one; otherwise
fetches all pages in batches of at most max_parallel concurrent requests.