# ai_mentor_orgs_users_periodic_agents_update Endpoint to create and view, update and delete periodic agents. Periodic agents are schedulers issued for mentors. These are configured with input prompt (if any) as well as a cron schedule to trigger the periodic agent. Access to these are restricted to platform admins and tenant administrators Session information for running the periodic agent will be generated with the credentials of the user (platform administrator) who created the agent. A Periodic Agent is allowed to have a and . When a is set for a Periodic Agent, a post request with data entries containing the log and timestamp of the run will be made to the callback_url provided. Here is the payload structure: The payload is encrypted using the provided. You can validate the payload using the X-Hub-Signature-256 signature header for request data. This is a Sha256 encoded HMAC hex digest of the payload body. Endpoint: PUT /api/ai-mentor/orgs/{org}/users/{user_id}/periodic-agents/{id}/ Version: 3.59.0-ai-plus Security: PlatformApiKeyAuthentication ## Path parameters: - `id` (integer, required) A unique integer value identifying this periodic agent. - `org` (string, required) - `user_id` (string, required) ## Request fields (application/json): - `mentor` (integer, required) - `title` (string, required) - `description` (string) - `prompt` (string) Prompt for the periodic agent if any. - `task` (object, required) - `task.crontab` (object, required) - `task.crontab.minute` (string) Cron Minutes to Run. Use "*" for "all". (Example: "0,30") - `task.crontab.hour` (string) Cron Hours to Run. Use "*" for "all". (Example: "8,20") - `task.crontab.day_of_week` (string) Cron Days Of The Week to Run. Use "*" for "all", Sunday is 0 or 7, Monday is 1. (Example: "0,5") - `task.crontab.day_of_month` (string) Cron Days Of The Month to Run. Use "*" for "all". (Example: "1,15") - `task.crontab.month_of_year` (string) Cron Months (1-12) Of The Year to Run. Use "*" for "all". (Example: "1,12") - `task.one_off` (boolean) If True, the schedule will only run the task a single time - `task.start_time` (string,null) Datetime when the schedule should begin triggering the task to run - `task.enabled` (boolean) Set to False to disable the schedule - `pathway` (string) - `callback_url` (string) - `callback_secret` (string) - `parent_session_id` (string) - `parent_mentor_id` (integer,null) - `previous_agent` (integer,null) Agent that needs to run before the current agent runs. - `previous_agent_status` (string) The status that the previous agent must be in before this agent gets scheduled. * - Success * - Error * - Running * - Pending Enum: "success", "error", "running", "pending" ## Response 200 fields (application/json): - `id` (integer, required) - `mentor` (integer, required) - `title` (string, required) - `username` (string, required) - `description` (string) - `prompt` (string) Prompt for the periodic agent if any. - `task` (object, required) - `task.name` (string, required) Short Description For This Task - `task.crontab` (object, required) - `task.crontab.minute` (string) Cron Minutes to Run. Use "*" for "all". (Example: "0,30") - `task.crontab.hour` (string) Cron Hours to Run. Use "*" for "all". (Example: "8,20") - `task.crontab.day_of_week` (string) Cron Days Of The Week to Run. Use "*" for "all", Sunday is 0 or 7, Monday is 1. (Example: "0,5") - `task.crontab.day_of_month` (string) Cron Days Of The Month to Run. Use "*" for "all". (Example: "1,15") - `task.crontab.month_of_year` (string) Cron Months (1-12) Of The Year to Run. Use "*" for "all". (Example: "1,12") - `task.one_off` (boolean) If True, the schedule will only run the task a single time - `task.start_time` (string,null) Datetime when the schedule should begin triggering the task to run - `task.enabled` (boolean) Set to False to disable the schedule - `created_at` (string, required) - `modified_at` (string, required) - `enabled` (boolean, required) - `one_off` (boolean, required) - `platform_key` (string, required) - `pathway` (string) - `callback_url` (string) - `callback_secret` (string) - `parent_session_id` (string) - `parent_mentor_id` (integer,null) - `previous_agent` (integer,null) Agent that needs to run before the current agent runs. - `previous_agent_status` (string) The status that the previous agent must be in before this agent gets scheduled. * - Success * - Error * - Running * - Pending Enum: "success", "error", "running", "pending" - `previous_agent_output` (string, required) This will be fed into the run of this agent as part of its input prompt.