Pontos de extremidade da API REST para logs de auditoria corporativa
Use a API REST para recuperar os logs de auditoria de uma empresa.
Note
Esses pontos de extremidade só dão suporte à autenticação por meio de um personal access token (classic). Para obter mais informações, confira "Gerenciar seus tokens de acesso pessoal".
Get the audit log for an enterprise
Gets the audit log for an enterprise.
This endpoint has a rate limit of 1,750 queries per hour per user and IP address. If your integration receives a rate limit error (typically a 403 or 429 response), it should wait before making another request to the GitHub API. For more information, see "Rate limits for the REST API" and "Best practices for integrators."
The authenticated user must be an enterprise admin to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the read:audit_log
scope to use this endpoint.
Tokens de acesso refinados para "Get the audit log for an enterprise"
Esse ponto de extremidade funciona com os seguintes tipos de token refinados:
- Tokens de acesso de usuário do aplicativo GitHub
- Tokens de acesso à instalação do aplicativo GitHub
- Tokens de acesso pessoal refinados
O token refinado deve ter os seguintes conjuntos de permissões:
- "Enterprise administration" business permissions (read)
Parâmetros para "Get the audit log for an enterprise"
Nome, Tipo, Descrição |
---|
accept string Setting to |
Nome, Tipo, Descrição |
---|
enterprise string ObrigatórioThe slug version of the enterprise name. You can also substitute this value with the enterprise id. |
Nome, Tipo, Descrição |
---|
phrase string A search phrase. For more information, see Searching the audit log. |
include string The event types to include:
The default is Pode ser um dos: |
after string A cursor, as given in the Link header. If specified, the query only searches for events after this cursor. |
before string A cursor, as given in the Link header. If specified, the query only searches for events before this cursor. |
order string The order of audit log events. To list newest events first, specify The default is Pode ser um dos: |
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." Padrão: |
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." Padrão: |
Códigos de status de resposta HTTP para "Get the audit log for an enterprise"
Código de status | Descrição |
---|---|
200 | OK |
Exemplos de código para "Get the audit log for an enterprise"
Se você acessar o GitHub em GHE.com, substitua api.github.com
pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com
.
Exemplo de solicitação
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/audit-log
Response
Status: 200
[
{
"@timestamp": 1606929874512,
"action": "team.add_member",
"actor": "octocat",
"created_at": 1606929874512,
"_document_id": "xJJFlFOhQ6b-5vaAFy9Rjw",
"org": "octo-corp",
"team": "octo-corp/example-team",
"user": "monalisa"
},
{
"@timestamp": 1606507117008,
"action": "org.create",
"actor": "octocat",
"created_at": 1606507117008,
"_document_id": "Vqvg6kZ4MYqwWRKFDzlMoQ",
"org": "octocat-test-org"
},
{
"@timestamp": 1605719148837,
"action": "repo.destroy",
"actor": "monalisa",
"created_at": 1605719148837,
"_document_id": "LwW2vpJZCDS-WUmo9Z-ifw",
"org": "mona-org",
"repo": "mona-org/mona-test-repo",
"visibility": "private"
}
]
Get the audit log stream key for encrypting secrets
Retrieves the audit log streaming public key for encrypting secrets.
When using this endpoint, you must encrypt the credentials following the same encryption steps as outlined in the guide on encrypting secrets. See "Encrypting secrets for the REST API."
Tokens de acesso refinados para "Get the audit log stream key for encrypting secrets"
Esse ponto de extremidade não funciona com tokens de acesso de usuário do aplicativo GitHub, tokens de acesso de instalação do aplicativo GitHub ou tokens de acesso pessoal refinados.
Parâmetros para "Get the audit log stream key for encrypting secrets"
Nome, Tipo, Descrição |
---|
accept string Setting to |
Nome, Tipo, Descrição |
---|
enterprise string ObrigatórioThe slug version of the enterprise name. You can also substitute this value with the enterprise id. |
Códigos de status de resposta HTTP para "Get the audit log stream key for encrypting secrets"
Código de status | Descrição |
---|---|
200 | The stream key for the audit log streaming configuration was retrieved successfully. |
Exemplos de código para "Get the audit log stream key for encrypting secrets"
Se você acessar o GitHub em GHE.com, substitua api.github.com
pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com
.
Exemplo de solicitação
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/audit-log/stream-key
The stream key for the audit log streaming configuration was retrieved successfully.
Status: 200
{
"key_id": "123",
"key": "actual-public-key-value"
}
List audit log stream configurations for an enterprise
Lists the configured audit log streaming configurations for an enterprise. This only lists configured streams for supported providers.
When using this endpoint, you must encrypt the credentials following the same encryption steps as outlined in the guide on encrypting secrets. See "Encrypting secrets for the REST API."
Tokens de acesso refinados para "List audit log stream configurations for an enterprise"
Esse ponto de extremidade não funciona com tokens de acesso de usuário do aplicativo GitHub, tokens de acesso de instalação do aplicativo GitHub ou tokens de acesso pessoal refinados.
Parâmetros para "List audit log stream configurations for an enterprise"
Nome, Tipo, Descrição |
---|
accept string Setting to |
Nome, Tipo, Descrição |
---|
enterprise string ObrigatórioThe slug version of the enterprise name. You can also substitute this value with the enterprise id. |
Códigos de status de resposta HTTP para "List audit log stream configurations for an enterprise"
Código de status | Descrição |
---|---|
200 | OK |
Exemplos de código para "List audit log stream configurations for an enterprise"
Se você acessar o GitHub em GHE.com, substitua api.github.com
pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com
.
Exemplo de solicitação
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/audit-log/streams
OK
Status: 200
[
{
"id": 1,
"stream_type": "Splunk",
"stream_details": "US",
"enabled": true,
"created_at": "2024-06-06T08:00:00Z",
"updated_at": "2024-06-06T08:00:00Z",
"paused_at": null
}
]
Create an audit log streaming configuration for an enterprise
Creates an audit log streaming configuration for any of the supported streaming endpoints: Azure Blob Storage, Azure Event Hubs, Amazon S3, Splunk, Google Cloud Storage, Datadog.
When using this endpoint, you must encrypt the credentials following the same encryption steps as outlined in the guide on encrypting secrets. See "Encrypting secrets for the REST API."
Tokens de acesso refinados para "Create an audit log streaming configuration for an enterprise"
Esse ponto de extremidade não funciona com tokens de acesso de usuário do aplicativo GitHub, tokens de acesso de instalação do aplicativo GitHub ou tokens de acesso pessoal refinados.
Parâmetros para "Create an audit log streaming configuration for an enterprise"
Nome, Tipo, Descrição |
---|
accept string Setting to |
Nome, Tipo, Descrição |
---|
enterprise string ObrigatórioThe slug version of the enterprise name. You can also substitute this value with the enterprise id. |
Nome, Tipo, Descrição | |||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
enabled boolean ObrigatórioThis setting pauses or resumes a stream. | |||||||||||||||||||||||||||||||||||||||||||||||||
stream_type string ObrigatórioThe audit log streaming provider. The name is case sensitive. Pode ser um dos: | |||||||||||||||||||||||||||||||||||||||||||||||||
vendor_specific object Obrigatório | |||||||||||||||||||||||||||||||||||||||||||||||||
Can be one of these objects:
AzureHubConfig object ObrigatórioAzure Event Hubs Config for audit log streaming configuration. Properties of |
Nome, Tipo, Descrição |
---|
name string ObrigatórioInstance name of Azure Event Hubs |
encrypted_connstring string ObrigatórioEncrypted Connection String for Azure Event Hubs |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
AmazonS3OIDCConfig
object ObrigatórioAmazon S3 OIDC Config for audit log streaming configuration.
Properties of AmazonS3OIDCConfig
Nome, Tipo, Descrição |
---|
bucket string ObrigatórioAmazon S3 Bucket Name. |
region string ObrigatórioAWS S3 Bucket Region. |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
authentication_type string ObrigatórioAuthentication Type for Amazon S3. Valor: |
arn_role string Obrigatório |
AmazonS3AccessKeysConfig
object ObrigatórioAmazon S3 Access Keys Config for audit log streaming configuration.
Properties of AmazonS3AccessKeysConfig
Nome, Tipo, Descrição |
---|
bucket string ObrigatórioAmazon S3 Bucket Name. |
region string ObrigatórioAmazon S3 Bucket Name. |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
authentication_type string ObrigatórioAuthentication Type for Amazon S3. Valor: |
encrypted_secret_key string ObrigatórioEncrypted AWS Secret Key. |
encrypted_access_key_id string ObrigatórioEncrypted AWS Access Key ID. |
SplunkConfig
object ObrigatórioSplunk Config for Audit Log Stream Configuration
Properties of SplunkConfig
Nome, Tipo, Descrição |
---|
domain string ObrigatórioDomain of Splunk instance. |
port integer ObrigatórioThe port number for connecting to Splunk. |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
encrypted_token string ObrigatórioEncrypted Token. |
ssl_verify boolean ObrigatórioSSL verification helps ensure your events are sent to your Splunk endpoint securely. |
GoogleCloudConfig
object ObrigatórioGoogle Cloud Config for audit log streaming configuration.
Properties of GoogleCloudConfig
Nome, Tipo, Descrição |
---|
bucket string ObrigatórioGoogle Cloud Bucket Name |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
encrypted_json_credentials string Obrigatório |
DatadogConfig
object ObrigatórioDatadog Config for audit log streaming configuration.
Properties of DatadogConfig
Nome, Tipo, Descrição |
---|
encrypted_token string ObrigatórioEncrypted Splunk token. |
site string ObrigatórioDatadog Site to use. Pode ser um dos: |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
Códigos de status de resposta HTTP para "Create an audit log streaming configuration for an enterprise"
Código de status | Descrição |
---|---|
200 | The audit log stream configuration was created successfully. |
Exemplos de código para "Create an audit log streaming configuration for an enterprise"
Se você acessar o GitHub em GHE.com, substitua api.github.com
pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com
.
Exemplo de solicitação
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/audit-log/streams \
-d '{"enabled":false,"stream_type":"Azure Event Hubs","vendor_specific":{"namespace":"newnamespace","shared_access_key_name":"newaccesskeyname","shared_access_key":"newaccesskey","event_hub_name":"neweventhub"}}'
The audit log stream configuration was created successfully.
Status: 200
{
"id": 1,
"stream_type": "Splunk",
"stream_details": "US",
"enabled": true,
"created_at": "2024-06-06T08:00:00Z",
"updated_at": "2024-06-06T08:00:00Z",
"paused_at": null
}
List one audit log streaming configuration via a stream ID
Lists one audit log stream configuration via a stream ID.
When using this endpoint, you must encrypt the credentials following the same encryption steps as outlined in the guide on encrypting secrets. See "Encrypting secrets for the REST API."
Tokens de acesso refinados para "List one audit log streaming configuration via a stream ID"
Esse ponto de extremidade não funciona com tokens de acesso de usuário do aplicativo GitHub, tokens de acesso de instalação do aplicativo GitHub ou tokens de acesso pessoal refinados.
Parâmetros para "List one audit log streaming configuration via a stream ID"
Nome, Tipo, Descrição |
---|
accept string Setting to |
Nome, Tipo, Descrição |
---|
enterprise string ObrigatórioThe slug version of the enterprise name. You can also substitute this value with the enterprise id. |
stream_id integer ObrigatórioThe ID of the audit log stream configuration. |
Códigos de status de resposta HTTP para "List one audit log streaming configuration via a stream ID"
Código de status | Descrição |
---|---|
200 | Lists one audit log stream configuration via stream ID. |
Exemplos de código para "List one audit log streaming configuration via a stream ID"
Se você acessar o GitHub em GHE.com, substitua api.github.com
pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com
.
Exemplo de solicitação
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/audit-log/streams/STREAM_ID
Lists one audit log stream configuration via stream ID.
Status: 200
{
"id": 1,
"stream_type": "Splunk",
"stream_details": "US",
"enabled": true,
"created_at": "2024-06-06T08:00:00Z",
"updated_at": "2024-06-06T08:00:00Z",
"paused_at": null
}
Update an existing audit log stream configuration
Updates an existing audit log stream configuration for an enterprise.
When using this endpoint, you must encrypt the credentials following the same encryption steps as outlined in the guide on encrypting secrets. See "Encrypting secrets for the REST API."
Tokens de acesso refinados para "Update an existing audit log stream configuration"
Esse ponto de extremidade não funciona com tokens de acesso de usuário do aplicativo GitHub, tokens de acesso de instalação do aplicativo GitHub ou tokens de acesso pessoal refinados.
Parâmetros para "Update an existing audit log stream configuration"
Nome, Tipo, Descrição |
---|
accept string Setting to |
Nome, Tipo, Descrição |
---|
enterprise string ObrigatórioThe slug version of the enterprise name. You can also substitute this value with the enterprise id. |
stream_id integer ObrigatórioThe ID of the audit log stream configuration. |
Nome, Tipo, Descrição | |||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
enabled boolean ObrigatórioThis setting pauses or resumes a stream. | |||||||||||||||||||||||||||||||||||||||||||||||||
stream_type string ObrigatórioThe audit log streaming provider. The name is case sensitive. Pode ser um dos: | |||||||||||||||||||||||||||||||||||||||||||||||||
vendor_specific object Obrigatório | |||||||||||||||||||||||||||||||||||||||||||||||||
Can be one of these objects:
AzureHubConfig object ObrigatórioAzure Event Hubs Config for audit log streaming configuration. Properties of |
Nome, Tipo, Descrição |
---|
name string ObrigatórioInstance name of Azure Event Hubs |
encrypted_connstring string ObrigatórioEncrypted Connection String for Azure Event Hubs |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
AmazonS3OIDCConfig
object ObrigatórioAmazon S3 OIDC Config for audit log streaming configuration.
Properties of AmazonS3OIDCConfig
Nome, Tipo, Descrição |
---|
bucket string ObrigatórioAmazon S3 Bucket Name. |
region string ObrigatórioAWS S3 Bucket Region. |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
authentication_type string ObrigatórioAuthentication Type for Amazon S3. Valor: |
arn_role string Obrigatório |
AmazonS3AccessKeysConfig
object ObrigatórioAmazon S3 Access Keys Config for audit log streaming configuration.
Properties of AmazonS3AccessKeysConfig
Nome, Tipo, Descrição |
---|
bucket string ObrigatórioAmazon S3 Bucket Name. |
region string ObrigatórioAmazon S3 Bucket Name. |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
authentication_type string ObrigatórioAuthentication Type for Amazon S3. Valor: |
encrypted_secret_key string ObrigatórioEncrypted AWS Secret Key. |
encrypted_access_key_id string ObrigatórioEncrypted AWS Access Key ID. |
SplunkConfig
object ObrigatórioSplunk Config for Audit Log Stream Configuration
Properties of SplunkConfig
Nome, Tipo, Descrição |
---|
domain string ObrigatórioDomain of Splunk instance. |
port integer ObrigatórioThe port number for connecting to Splunk. |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
encrypted_token string ObrigatórioEncrypted Token. |
ssl_verify boolean ObrigatórioSSL verification helps ensure your events are sent to your Splunk endpoint securely. |
GoogleCloudConfig
object ObrigatórioGoogle Cloud Config for audit log streaming configuration.
Properties of GoogleCloudConfig
Nome, Tipo, Descrição |
---|
bucket string ObrigatórioGoogle Cloud Bucket Name |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
encrypted_json_credentials string Obrigatório |
DatadogConfig
object ObrigatórioDatadog Config for audit log streaming configuration.
Properties of DatadogConfig
Nome, Tipo, Descrição |
---|
encrypted_token string ObrigatórioEncrypted Splunk token. |
site string ObrigatórioDatadog Site to use. Pode ser um dos: |
key_id string ObrigatórioKey ID obtained from the audit log stream key endpoint used to encrypt secrets. |
Códigos de status de resposta HTTP para "Update an existing audit log stream configuration"
Código de status | Descrição |
---|---|
200 | Successful update |
422 | Validation error |
Exemplos de código para "Update an existing audit log stream configuration"
Se você acessar o GitHub em GHE.com, substitua api.github.com
pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com
.
Exemplo de solicitação
curl -L \
-X PUT \
-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/audit-log/streams/STREAM_ID \
-d '{"enabled":false,"stream_type":"Azure Event Hubs","vendor_specific":{"namespace":"newnamespace","shared_access_key_name":"newaccesskeyname","shared_access_key":"newaccesskey","event_hub_name":"neweventhub"}}'
Successful update
Status: 200
{
"id": 1,
"stream_type": "Splunk",
"stream_details": "US",
"enabled": true,
"created_at": "2024-06-06T08:00:00Z",
"updated_at": "2024-06-06T08:00:00Z",
"paused_at": null
}
Delete an audit log streaming configuration for an enterprise
Deletes an existing audit log stream configuration for an enterprise.
When using this endpoint, you must encrypt the credentials following the same encryption steps as outlined in the guide on encrypting secrets. See "Encrypting secrets for the REST API."
Tokens de acesso refinados para "Delete an audit log streaming configuration for an enterprise"
Esse ponto de extremidade não funciona com tokens de acesso de usuário do aplicativo GitHub, tokens de acesso de instalação do aplicativo GitHub ou tokens de acesso pessoal refinados.
Parâmetros para "Delete an audit log streaming configuration for an enterprise"
Nome, Tipo, Descrição |
---|
accept string Setting to |
Nome, Tipo, Descrição |
---|
enterprise string ObrigatórioThe slug version of the enterprise name. You can also substitute this value with the enterprise id. |
stream_id integer ObrigatórioThe ID of the audit log stream configuration. |
Códigos de status de resposta HTTP para "Delete an audit log streaming configuration for an enterprise"
Código de status | Descrição |
---|---|
204 | The audit log stream configuration was deleted successfully. |
Exemplos de código para "Delete an audit log streaming configuration for an enterprise"
Se você acessar o GitHub em GHE.com, substitua api.github.com
pelo subdomínio dedicado da sua empresa em api.SUBDOMAIN.ghe.com
.
Exemplo de solicitação
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/audit-log/streams/STREAM_ID
The audit log stream configuration was deleted successfully.
Status: 204