get_etl_job_details¶
- EtlJobsApi.get_etl_job_details(id, role_id, projection_expression=None, action=None, _request_timeout=None, _request_auth=None, _content_type=None, _headers=None, _host_index=0)¶
Get job details or code generation status
Returns ETL job details for a job the caller can access. Use action=generate-code to retrieve AI code-generation status (requires AI services and Jobs AI enabled).
- Parameters:
id (str) – UUID v4 of the ETL job. Invalid UUID format is rejected. (required)
role_id (str) – Amorphic role ID sent for authorization. Missing this header returns AUTH-1001. (required)
projection_expression (str) – Comma-separated attribute names to include. When omitted, the full formatted job object is returned. Example: Id,JobName,ScriptLocation.
action (str) – Set to generate-code to return AI code-generation status (and a presigned URL when a result file exists) instead of job details. Omit this parameter to return the job object.
_request_timeout (int, tuple(int, int), optional) – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.
_request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.
_content_type (str, Optional) – force content-type for the request.
_headers (dict, optional) – set to override the headers for a single request; this effectively ignores the headers in the spec for a single request.
_host_index (int, optional) – set to override the host_index for a single request; this effectively ignores the host_index in the spec for a single request.
- Return type:
- Returns:
Returns the result object.
Request and Response Examples¶
HTTP: GET /jobs/{id}
Success (HTTP 200)¶
Job details (ETLJobByIdResponse), or code-generation status / in-progress Message when action=generate-code.
Job details
{
"Id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"JobName": "sales_etl_daily",
"ETLJobType": "spark",
"Description": "Daily sales transform",
"AccessType": "owner",
"RegistrationStatus": "completed",
"GlueVersion": "4.0",
"WorkerType": "G.1X",
"NumberOfWorkers": 2,
"Timeout": 60,
"JobBookmarkOption": "disable",
"IsAutoScalingEnabled": false,
"IsDataLineageEnabled": "no",
"NetworkConfiguration": "general-public-network",
"ScriptLocation": "s3://example-etl-bucket/3fa85f64-5717-4562-b3fc-2c963f66afa6/script.py",
"LastModified": "2026-08-15 10:00:00"
}
action=generate-code while generation is running
{
"Message": "Code generation is in progress for this job"
}
Errors¶
Documented error codes: IPV-1002, AUTH-1010, GE-1008.
HTTP 400
Invalid JobId, missing permission, or Jobs AI not enabled for generate-code. Body is {“Message”: “<CODE> - <text>”}.
Job does not exist
{
"Message": "IPV-1002 - Invalid JobId - 3fa85f64-5717-4562-b3fc-2c963f66afa6, resource not found."
}
Caller cannot access the job
{
"Message": "AUTH-1010 - User jdoe is not authorized to perform this operation"
}
HTTP 500
Uncaught backend failure. Typical Message is “GE-1008 - Could not complete the request. Please try again.”
Request / response example
{
"Message": "GE-1008 - Could not complete the request. Please try again."
}