Ensure an IAM role or user has glue:StartJobRun and glue:GetJobRun permissions; the Glue job itself must have an associated IAM role with access to the relevant data sources.
Call the StartJobRun API via AWS CLI (aws glue start-job-run --job-name JOB_NAME) or the AWS SDK, optionally passing --arguments to override default job parameters.
Capture the JobRunId from the response.
Poll GetJobRun (aws glue get-job-run --job-name JOB_NAME --run-id JOB_RUN_ID) until JobRun.JobRunState is SUCCEEDED, FAILED, STOPPED, or TIMEOUT.
On failure, read the ErrorMessage field in the GetJobRun response to identify the cause.
Known gotchas
Glue job arguments must be prefixed with -- (double dash) as keys, e.g. {"--my_param": "value"}; unprefixed keys are silently ignored.
The job must exist and not be in a concurrent run limit; if MaxConcurrentRuns is set to 1 and a run is active, StartJobRun returns a ConcurrentRunsExceededException.
Glue billing is per DPU-second; forgetting to set an appropriate timeout or number of workers can lead to unexpectedly high costs.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp