GET /org_metrics/job_runner_recommendations
Returns, for every GitHub job in the organization's last 7 days that should move to a different runner size, a right-sizing recommendation (derived from the job's aggregate CPU/memory usage across all its runs) plus a sample of its most recent runs.
Authorization
JWTKeyAuth In: header
Query Parameters
Text search across repository, workflow name, and job name
Repository/workflow pairs to filter by, each formatted as repository and workflow name joined by a newline
VCS account id (GitHub org/user) to filter by; keeps only repositories owned by that account
Page number, 1-based (default 1)
Results per page (default 50, max 200)
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/org_metrics/job_runner_recommendations"{ "available_filters": { "repos": [ { "repository": "string", "workflows": [ "string" ] } ] }, "next": 0, "organization_id": "string", "page": 0, "per_page": 0, "recommendations": [ { "job_name": "string", "recommendation": { "already_at_max_size": true, "current_label": "string", "current_memory_gb": 0, "current_vcpu": 0, "recommended_label": "string", "recommended_memory_gb": 0, "recommended_vcpu": 0, "resources": [ "string" ], "type": "string" }, "repository": "string", "runs": [ { "avg_filesystem_utilization": 0, "ended_at": "string", "job_link": "string", "max_filesystem_utilization": 0, "max_memory_utilization": 0, "max_sustained_cpu": 0, "max_sustained_disk_io_bytes": 0, "max_sustained_network_bytes": 0, "runner_display_name": "string", "runner_instance_id": "string", "started_at": "string" } ], "total_runs": 0, "workflow_name": "string", "workflow_url": "string" } ], "total_pages": 0, "total_rows": 0}PUT /organization/config/telemetry-export
Points runner telemetry at an OTLP endpoint the organization owns. `secret` is write-only: omit it to keep the stored credential, send an empty string to clear it.
POST /reports/exports
Queues a background job that generates the report CSV, uploads it to storage, and emails the requester when the download is ready. Params mirror the query parameters of the corresponding sync report endpoint.