Skip to main content
Ahora la API de REST tiene control de versiones. Para obtener más información, consulta "Acerca del control de versiones de la API".

Puntos de conexión de API de REST para facturación de empresa

Usa la API REST para recuperar la información de facturación de una instancia de GitHub Enterprise Server.

Estos puntos de conexión solo admiten la autenticación mediante personal access token (classic). Para obtener más información, vea «Administración de tokens de acceso personal».

El ámbito manage_billing:enterprise es necesario para que personal access tokens (classic) accedan a estos puntos de conexión.

Get GitHub Actions billing for an enterprise

Gets the summary of the free and paid GitHub Actions minutes used.

Paid minutes only apply to workflows in private repositories that use GitHub-hosted runners. Minutes used is listed for each GitHub-hosted runner operating system. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "Managing billing for GitHub Actions".

The authenticated user must be an enterprise admin.

Tokens de acceso específicos para "Get GitHub Actions billing for an enterprise"

Este punto de conexión funciona con los siguientes tipos de token pormenorizados:

El token pormenorizado debe tener el siguiente conjunto de permisos:

  • "Enterprise administration" business permissions (write)

Parámetros para "Get GitHub Actions billing for an enterprise"

Encabezados
Nombre, Tipo, Descripción
accept string

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

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
enterprise string Requerido

The slug version of the enterprise name. You can also substitute this value with the enterprise id.

Códigos de estado de respuesta HTTP para "Get GitHub Actions billing for an enterprise"

status codeDescripción
200

OK

Ejemplos de código para "Get GitHub Actions billing for an enterprise"

Ejemplo de solicitud

get/enterprises/{enterprise}/settings/billing/actions
Copiar al Portapapeles
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/actions

Response

Status: 200
{ "total_minutes_used": 305, "total_paid_minutes_used": 0, "included_minutes": 3000, "minutes_used_breakdown": { "UBUNTU": 205, "MACOS": 10, "WINDOWS": 90 } }

Get GitHub Advanced Security active committers for an enterprise

Gets the GitHub Advanced Security active committers for an enterprise per repository.

Each distinct user login across all repositories is counted as a single Advanced Security seat, so the total_advanced_security_committers is not the sum of active_users for each repository.

The total number of repositories with committer information is tracked by the total_count field.

Tokens de acceso específicos para "Get GitHub Advanced Security active committers for an enterprise"

Este punto de conexión funciona con los siguientes tipos de token pormenorizados:

El token pormenorizado debe tener el siguiente conjunto de permisos:

  • "Enterprise administration" business permissions (write)

Parámetros para "Get GitHub Advanced Security active committers for an enterprise"

Encabezados
Nombre, Tipo, Descripción
accept string

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

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
enterprise string Requerido

The slug version of the enterprise name. You can also substitute this value with the enterprise id.

Parámetros de consulta
Nombre, Tipo, Descripción
per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

Valor predeterminado: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

Valor predeterminado: 1

Códigos de estado de respuesta HTTP para "Get GitHub Advanced Security active committers for an enterprise"

status codeDescripción
200

Success

Ejemplos de código para "Get GitHub Advanced Security active committers for an enterprise"

Ejemplo de solicitud

get/enterprises/{enterprise}/settings/billing/advanced-security
Copiar al Portapapeles
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/advanced-security

Success

Status: 200
{ "total_advanced_security_committers": 2, "total_count": 2, "maximum_advanced_security_committers": 4, "purchased_advanced_security_committers": 4, "repositories": [ { "name": "octocat-org/Hello-World", "advanced_security_committers": 2, "advanced_security_committers_breakdown": [ { "user_login": "octocat", "last_pushed_date": "2021-11-03", "last_pushed_email": "octocat@github.com" }, { "user_login": "octokitten", "last_pushed_date": "2021-10-25", "last_pushed_email": "octokitten@github.com" } ] }, { "name": "octocat-org/server", "advanced_security_committers": 1, "advanced_security_committers_breakdown": [ { "user_login": "octokitten", "last_pushed_date": "2021-10-26", "last_pushed_email": "octokitten@github.com" } ] } ] }

Get all cost centers for an enterprise

Gets a list of all the cost centers for an enterprise.

Tokens de acceso específicos para "Get all cost centers for an enterprise"

Este punto de conexión no funciona con tokens de acceso de usuario de aplicación de GitHub, tokens de acceso de instalación de aplicaciones de GitHub ni tokens de acceso personales específicos.

Parámetros para "Get all cost centers for an enterprise"

Encabezados
Nombre, Tipo, Descripción
accept string

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

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
enterprise string Requerido

The slug version of the enterprise name. You can also substitute this value with the enterprise id.

Códigos de estado de respuesta HTTP para "Get all cost centers for an enterprise"

status codeDescripción
200

Response when getting cost centers

400

Bad Request

403

Forbidden

500

Internal Error

503

Service unavailable

Ejemplos de código para "Get all cost centers for an enterprise"

Ejemplo de solicitud

get/enterprises/{enterprise}/settings/billing/cost-centers
Copiar al Portapapeles
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/cost-centers

Response when getting cost centers

Status: 200
{ "costCenters": [ { "id": "2eeb8ffe-6903-11ee-8c99-0242ac120002", "name": "Cost Center Name", "resources": [ { "type": "User", "name": "Monalisa" } ] } ] }

Add users to a cost center

Adds users to a cost center.

The usage for the users will be charged to the cost center's budget. The authenticated user must be an enterprise admin in order to use this endpoint.

Tokens de acceso específicos para "Add users to a cost center"

Este punto de conexión no funciona con tokens de acceso de usuario de aplicación de GitHub, tokens de acceso de instalación de aplicaciones de GitHub ni tokens de acceso personales específicos.

Parámetros para "Add users to a cost center"

Encabezados
Nombre, Tipo, Descripción
accept string

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

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
enterprise string Requerido

The slug version of the enterprise name. You can also substitute this value with the enterprise id.

cost_center_id string Requerido

The ID corresponding to the cost center.

Parámetros del cuerpo
Nombre, Tipo, Descripción
users array of strings Requerido

The usernames of the users to add to the cost center.

Códigos de estado de respuesta HTTP para "Add users to a cost center"

status codeDescripción
200

Response when adding resources to a cost center

400

Bad Request

403

Forbidden

500

Internal Error

503

Service unavailable

Ejemplos de código para "Add users to a cost center"

Ejemplo de solicitud

post/enterprises/{enterprise}/settings/billing/cost-centers/{cost_center_id}/resource
Copiar al Portapapeles
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/cost-centers/COST_CENTER_ID/resource \ -d '{"users":["monalisa"]}'

Response when adding resources to a cost center

Status: 200
{ "message": "Resources successfully added to the cost center." }

Remove users from a cost center

Remove users from a cost center.

The usage for the users will no longer be charged to the cost center's budget. The authenticated user must be an enterprise admin in order to use this endpoint.

Tokens de acceso específicos para "Remove users from a cost center"

Este punto de conexión no funciona con tokens de acceso de usuario de aplicación de GitHub, tokens de acceso de instalación de aplicaciones de GitHub ni tokens de acceso personales específicos.

Parámetros para "Remove users from a cost center"

Encabezados
Nombre, Tipo, Descripción
accept string

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

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
enterprise string Requerido

The slug version of the enterprise name. You can also substitute this value with the enterprise id.

cost_center_id string Requerido

The ID corresponding to the cost center.

Parámetros del cuerpo
Nombre, Tipo, Descripción
users array of strings Requerido

The usernames of the users to remove from the cost center.

Códigos de estado de respuesta HTTP para "Remove users from a cost center"

status codeDescripción
200

Response when removing resources from a cost center

400

Bad Request

403

Forbidden

500

Internal Error

503

Service unavailable

Ejemplos de código para "Remove users from a cost center"

Ejemplo de solicitud

delete/enterprises/{enterprise}/settings/billing/cost-centers/{cost_center_id}/resource
Copiar al Portapapeles
curl -L \ -X DELETE \ -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/cost-centers/COST_CENTER_ID/resource \ -d '{"users":["monalisa"]}'

Response when removing resources from a cost center

Status: 200
{ "message": "Resources successfully removed from the cost center." }

Get GitHub Packages billing for an enterprise

Gets the free and paid storage used for GitHub Packages in gigabytes.

Paid minutes only apply to packages stored for private repositories. For more information, see "Managing billing for GitHub Packages."

The authenticated user must be an enterprise admin.

Tokens de acceso específicos para "Get GitHub Packages billing for an enterprise"

Este punto de conexión funciona con los siguientes tipos de token pormenorizados:

El token pormenorizado debe tener el siguiente conjunto de permisos:

  • "Enterprise administration" business permissions (write)

Parámetros para "Get GitHub Packages billing for an enterprise"

Encabezados
Nombre, Tipo, Descripción
accept string

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

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
enterprise string Requerido

The slug version of the enterprise name. You can also substitute this value with the enterprise id.

Códigos de estado de respuesta HTTP para "Get GitHub Packages billing for an enterprise"

status codeDescripción
200

OK

Ejemplos de código para "Get GitHub Packages billing for an enterprise"

Ejemplo de solicitud

get/enterprises/{enterprise}/settings/billing/packages
Copiar al Portapapeles
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/packages

Response

Status: 200
{ "total_gigabytes_bandwidth_used": 50, "total_paid_gigabytes_bandwidth_used": 40, "included_gigabytes_bandwidth": 10 }

Get shared storage billing for an enterprise

Gets the estimated paid and estimated total storage used for GitHub Actions and GitHub Packages.

Paid minutes only apply to packages stored for private repositories. For more information, see "Managing billing for GitHub Packages."

The authenticated user must be an enterprise admin.

Tokens de acceso específicos para "Get shared storage billing for an enterprise"

Este punto de conexión funciona con los siguientes tipos de token pormenorizados:

El token pormenorizado debe tener el siguiente conjunto de permisos:

  • "Enterprise administration" business permissions (write)

Parámetros para "Get shared storage billing for an enterprise"

Encabezados
Nombre, Tipo, Descripción
accept string

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

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
enterprise string Requerido

The slug version of the enterprise name. You can also substitute this value with the enterprise id.

Códigos de estado de respuesta HTTP para "Get shared storage billing for an enterprise"

status codeDescripción
200

OK

Ejemplos de código para "Get shared storage billing for an enterprise"

Ejemplo de solicitud

get/enterprises/{enterprise}/settings/billing/shared-storage
Copiar al Portapapeles
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/shared-storage

Response

Status: 200
{ "days_left_in_billing_cycle": 20, "estimated_paid_storage_for_month": 15, "estimated_storage_for_month": 40 }

Get billing usage report for an enterprise

Gets a report of the total usage for an enterprise. To use this endpoint, you must be an administrator or billing manager of the enterprise.

Note: This endpoint is only available to enterprises with access to the enhanced billing platform. For more information, see "About the enhanced billing platform for enterprises."

Tokens de acceso específicos para "Get billing usage report for an enterprise"

Este punto de conexión no funciona con tokens de acceso de usuario de aplicación de GitHub, tokens de acceso de instalación de aplicaciones de GitHub ni tokens de acceso personales específicos.

Parámetros para "Get billing usage report for an enterprise"

Encabezados
Nombre, Tipo, Descripción
accept string

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

Parámetros de la ruta de acceso
Nombre, Tipo, Descripción
enterprise string Requerido

The slug version of the enterprise name. You can also substitute this value with the enterprise id.

Parámetros de consulta
Nombre, Tipo, Descripción
year integer

If specified, only return results for a single year. The value of year is an integer with four digits representing a year. For example, 2023.

month integer

If specified, only return results for a single month. The value of month is an integer between 1 and 12.

day integer

If specified, only return results for a single day. The value of day is an integer between 1 and 31.

hour integer

If specified, only return results for a single hour. The value of hour is an integer between 0 and 23.

cost_center_id string

The ID corresponding to a cost center.

Códigos de estado de respuesta HTTP para "Get billing usage report for an enterprise"

status codeDescripción
200

Response when getting a billing usage report

400

Bad Request

403

Forbidden

500

Internal Error

503

Service unavailable

Ejemplos de código para "Get billing usage report for an enterprise"

Ejemplo de solicitud

get/enterprises/{enterprise}/settings/billing/usage
Copiar al Portapapeles
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/usage

Response when getting a billing usage report

Status: 200
{ "usageItems": [ { "date": "2023-08-01", "product": "Actions", "sku": "Actions Linux", "quantity": 100, "unitType": "minutes", "pricePerUnit": 0.008, "grossAmount": 0.8, "discountAmount": 0, "netAmount": 0.8, "organizationName": "GitHub", "repositoryName": "github/example" } ] }