Workflow Trigger after Manual Task Completed

Hi All, I would like to ask you all about how can I trigger and apply to call API or do another task after manual task completed?

In my case I have a lot of changing on the APP_A, that is the csv file, then it is difficult for source or app owner to add it on csv, I would like to apply it in API or another way that be easier than the manual way, is it has solution for this?

Screenshot

if your source is a delimited file you can use an API that will update the source account attribute values through an external UI.

I built a python dash app to do this.

1. Configuration Tab:

  • This tab must contain input fields for:

    • Tenant Name

    • Source ID

    • Client ID

    • Client Secret

  • Include a button labeled “Fetch Accounts”.

2. Account Management Tab:

  • This tab should feature a dash_table.DataTable that will display the account data.

  • The table must be interactive, allowing users to:

    • Directly edit the values in any cell.

    • Delete entire rows.

    • Sort and filter the data.

  • Include a button labeled “Submit Updates”.

Application Workflow and Logic:

  1. Fetching Data:

    • When the user clicks “Fetch Accounts,” the application must first make a POST request to the SailPoint /oauth/token endpoint to get an access token using the provided credentials.

    • Using this token, it will then make a paginated GET request to the /beta/accounts endpoint, filtering by the sourceId to retrieve all accounts from the specified source.

    • The fetched data should be stored client-side in a dcc.Store component in JSON format.

  2. Displaying Data:

    • The data from the dcc.Store should be loaded into a pandas DataFrame and displayed in the interactive dash_table.DataTable on the “Account Management” tab.
  3. Updating Data:

    • After the user has finished editing or deleting accounts in the table, they will click “Submit Updates.”

    • This action must take the current state of the data from the table, convert it into a CSV format in memory, and then upload it.

    • The upload will be performed by making a POST request with multipart/form-data to the /beta/sources/{source_id}/load-accounts endpoint. This will replace the existing accounts on the source with the new data from the CSV.

Finally, please include a status display area (e.g., a Div) to provide feedback to the user, confirming successful operations or showing any API errors that occur."

Thank you @fredriclundgren