Skip to main content
The REST API is now versioned. For more information, see "About API versioning."

Usage reports

Use the REST API to create and retrieve usage report exports for an enterprise.

List usage report exports

Note

This endpoint is in public preview and is subject to change.

Lists all usage report exports for an enterprise. The authenticated user must be an enterprise admin or billing manager.

Fine-grained access tokens for "List usage report exports"

This endpoint works with the following fine-grained token types:

The fine-grained token must have the following permission set:

  • "Enterprise administration" enterprise permissions (write)

Parameters for "List usage report exports"

Headers
Name, Type, Description
accept string

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
enterprise string Required

The slug version of the enterprise name.

HTTP response status codes for "List usage report exports"

Status codeDescription
200

List of usage report exports

401

Requires authentication

403

Forbidden

404

Resource not found

500

Internal Error

503

Service unavailable

Code samples for "List usage report exports"

If you access GitHub at GHE.com, replace api.github.com with your enterprise's dedicated subdomain at api.SUBDOMAIN.ghe.com.

Request example

get/enterprises/{enterprise}/settings/billing/reports
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/enterprises/ENTERPRISE/settings/billing/reports

List of usage report exports

Status: 200
{ "usage_report_exports": [ { "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "report_type": "detailed", "start_date": "2024-01-01", "end_date": "2024-01-31", "status": "completed", "download_urls": [ "https://github.com/enterprises/github/metered_exports/1234" ], "created_at": "2024-01-15T10:30:00Z", "actor": "monalisa" }, { "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "report_type": "summarized", "start_date": "2024-01-01", "end_date": "2024-01-31", "status": "processing", "created_at": "2024-01-14T09:00:00Z", "actor": "monalisa" }, { "id": "c3d4e5f6-a7b8-9012-cdef-123456789012", "report_type": "premium_request", "start_date": "2024-01-01", "end_date": "2024-01-31", "status": "processing", "created_at": "2024-01-13T08:00:00Z", "actor": "octocat" } ] }

Create a usage report export

Note

This endpoint is in public preview and is subject to change.

Initiates the generation of a usage report export for an enterprise. The report will be processed asynchronously and can be downloaded once completed. The authenticated user must be an enterprise admin or billing manager.

Fine-grained access tokens for "Create a usage report export"

This endpoint works with the following fine-grained token types:

The fine-grained token must have the following permission set:

  • "Enterprise administration" enterprise permissions (write)

Parameters for "Create a usage report export"

Headers
Name, Type, Description
accept string

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
enterprise string Required

The slug version of the enterprise name.

Body parameters
Name, Type, Description
report_type string Required

The type of usage report to generate

Can be one of: detailed, summarized, premium_request

start_date string Required

The start date for the report in YYYY-MM-DD format

end_date string

The end date for the report in YYYY-MM-DD format. Defaults to today (UTC) if not provided.

send_email boolean

Whether to send an email notification to the requester when the report is ready. Defaults to false.

Default: false

HTTP response status codes for "Create a usage report export"

Status codeDescription
202

Report export request accepted

400

Bad Request

401

Requires authentication

403

Forbidden

404

Resource not found

500

Internal Error

503

Service unavailable

Code samples for "Create a usage report export"

If you access GitHub at GHE.com, replace api.github.com with your enterprise's dedicated subdomain at api.SUBDOMAIN.ghe.com.

Request example

post/enterprises/{enterprise}/settings/billing/reports
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/enterprises/ENTERPRISE/settings/billing/reports \ -d '{"report_type":"detailed","start_date":"2024-01-01","end_date":"2024-01-31"}'

Report export request accepted

Status: 202
{ "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "report_type": "detailed", "start_date": "2024-01-01", "end_date": "2024-01-31", "status": "completed", "download_urls": [ "https://github.com/enterprises/github/metered_exports/1234" ], "created_at": "2024-01-15T10:30:00Z", "actor": "monalisa" }

Get a usage report export

Note

This endpoint is in public preview and is subject to change.

Gets the status and details of a usage report export by ID. The authenticated user must be an enterprise admin or billing manager.

Fine-grained access tokens for "Get a usage report export"

This endpoint works with the following fine-grained token types:

The fine-grained token must have the following permission set:

  • "Enterprise administration" enterprise permissions (write)

Parameters for "Get a usage report export"

Headers
Name, Type, Description
accept string

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
enterprise string Required

The slug version of the enterprise name.

report_id string Required

The unique identifier (UUID) for the usage report export.

HTTP response status codes for "Get a usage report export"

Status codeDescription
200

Usage report export details

401

Requires authentication

403

Forbidden

404

Resource not found

500

Internal Error

503

Service unavailable

Code samples for "Get a usage report export"

If you access GitHub at GHE.com, replace api.github.com with your enterprise's dedicated subdomain at api.SUBDOMAIN.ghe.com.

Request example

get/enterprises/{enterprise}/settings/billing/reports/{report_id}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/enterprises/ENTERPRISE/settings/billing/reports/REPORT_ID

Usage report export details

Status: 200
{ "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "report_type": "detailed", "start_date": "2024-01-01", "end_date": "2024-01-31", "status": "completed", "download_urls": [ "https://github.com/enterprises/github/metered_exports/1234" ], "created_at": "2024-01-15T10:30:00Z", "actor": "monalisa" }