ScheduleService gRPC API

ScheduleService provides runtime schedule management for gRPC plugins. Plugins use this to create, pause, resume, and delete recurring Pulse schedules.

Proto file: plugin/grpc/protocol/schedule.proto

Service Methods

MethodRequestResponseStreaming
CreateScheduleCreateScheduleRequestCreateScheduleResponseNo
PauseSchedulePauseScheduleRequestPauseScheduleResponseNo
ResumeScheduleResumeScheduleRequestResumeScheduleResponseNo
DeleteScheduleDeleteScheduleRequestDeleteScheduleResponseNo
GetScheduleGetScheduleRequestGetScheduleResponseNo

CreateSchedule

CreateSchedule creates a new recurring schedule in Pulse


PauseSchedule

PauseSchedule pauses an active schedule


ResumeSchedule

ResumeSchedule resumes a paused schedule


DeleteSchedule

DeleteSchedule soft-deletes a schedule


GetSchedule

GetSchedule retrieves a schedule by ID


Message Types

ScheduleDeclaration

A schedule as declared — what someone decided, and all of it (ADR-028). Changes when a person or a plugin changes it, never on a tick.

FieldTypeDescription
idstring-
ats_codestring-
handler_namestring-
payloadbytes-
source_urlstring-
interval_secondsint32-
statestring-
created_from_docstring-
metadatastring-
created_at_msint64-
first_run_at_msint64-

ScheduleTick

One thing that happened to a schedule. An empty execution_id means the next run moved without a run happening — a force trigger.

FieldTypeDescription
schedule_idstring-
at_msint64-
execution_idstring-
next_run_at_msint64-

Execution

One run of a scheduled job: timing, status, output, and the async job it linked to. Execution history for debugging and failure troubleshooting. optional marks what Go holds as a pointer with omitempty, so absence stays absence and the JSON the web reads does not change shape.

FieldTypeDescription
idstring-
scheduled_job_idstring-
statusstring-
started_atstring-
created_atstring-
updated_atstring-

TaskInfo

A task within a stage, with its log count.

FieldTypeDescription
task_idstring-

StageInfo

A stage with its tasks.

FieldTypeDescription
stagestring-
tasksTaskInfo-

ListExecutionsResponse

GET /pulse/jobs/{id}/executions

FieldTypeDescription
executionsExecution-
countint32-
totalint32-
has_morebool-

JobStagesResponse

GET /jobs/{job_id}/stages

FieldTypeDescription
job_idstring-
stagesStageInfo-

TaskLogsResponse

GET /tasks/{task_id}/logs

FieldTypeDescription
task_idstring-
logsLogEntry-

LogEntry

A single log line from a task execution.

FieldTypeDescription
timestampstring-
levelstring-
messagestring-
metadatagoogle.protobuf.Struct-

ForceTriggerParams

The inputs a force trigger needs.

FieldTypeDescription
ats_codestring-
handler_namestring-
payloadbytes-
source_urlstring-
async_job_idstring-

ForceTriggerResult

What a force trigger created.

FieldTypeDescription
scheduled_job_idstring-
execution_idstring-
created_new_jobbool-

ScheduleProgress

What the ticks derive. The mutable columns of scheduled_pulse_jobs, which this shape computes rather than stores.

FieldTypeDescription
run_countint64-
last_run_at_msint64-
last_execution_idstring-
next_run_at_msint64-

ScheduledJob

ScheduledJob is the read view: the declaration plus what the ticks derive. Storage holds the two above; this is what a caller is handed.

FieldTypeDescription
idstring-
ats_codestring-
handler_namestring-
payloadbytes-
source_urlstring-
interval_secondsint32-
next_run_atstring-
last_run_atstring-
last_execution_idstring-
statestring-
metadatastring-
created_atstring-
updated_atstring-
created_from_docstring-

CreateScheduleRequest

FieldTypeDescription
auth_tokenstring-
handler_namestring-
interval_secondsint32-
payloadbytes-
metadatamap<string, string>-

CreateScheduleResponse

FieldTypeDescription
successbool-
errorstring-
schedule_idstring-

PauseScheduleRequest

FieldTypeDescription
auth_tokenstring-
schedule_idstring-

PauseScheduleResponse

FieldTypeDescription
successbool-
errorstring-

ResumeScheduleRequest

FieldTypeDescription
auth_tokenstring-
schedule_idstring-

ResumeScheduleResponse

FieldTypeDescription
successbool-
errorstring-

DeleteScheduleRequest

FieldTypeDescription
auth_tokenstring-
schedule_idstring-

DeleteScheduleResponse

FieldTypeDescription
successbool-
errorstring-

GetScheduleRequest

FieldTypeDescription
auth_tokenstring-
schedule_idstring-

GetScheduleResponse

FieldTypeDescription
successbool-
errorstring-
jobScheduledJob-

← Back to API Index