The audit log allows organization admins to quickly review the actions performed by members of your organization. It includes details such as who performed the action, what the action was, and when it was performed.

In this article

Accessing the audit log

The audit log lists actions performed within the last 90 days. Only owners can access an organization's audit log.

  1. In the top right corner of GitHub, click your profile photo, then click Your profile. Profile photo

  2. On the left side of your profile page, under "Organizations", click the icon for your organization. organization icons

  3. Under your organization name, click Settings. Organization settings button

  4. In the Settings sidebar, click Audit log. Org audit log settings in sidebar

Searching the audit log

The audit log lists the following information about actions made within your organization:

  • Which repository an action was performed in
  • The user that performed the action
  • The action that was performed
  • Which country the action took place in
  • The date and time the action occurred

Note that you cannot search for audit entries using text. You can, however, construct search queries using a variety of filters. Many operators used when querying the audit log—such as -, >, or < —match the same format as searching across GitHub.

Search based on repository

Use the repo qualifier to limit actions to a specific repository owned by your organization. For example:

  • repo:my-org/our-repo finds all events that occurred for the our-repo repository in the my-org organization.
  • repo:my-org/our-repo repo:my-org/another-repo finds all events that occurred for both the our-repo and another-repo repositories in the my-org organization.
  • -repo:my-org/not-this-repo excludes all events that occurred for the not-this-repo repository in the my-org organization.

Note that you must include your organization's name within the repo qualifier; searching for just repo:our-repo will not work.

Search based on the user

The actor qualifier can scope events based on the member of your organization that performed the action. For example:

  • actor:octocat finds all events performed by octocat.
  • actor:octocat actor:hubot finds all events performed by both octocat and hubot.
  • -actor:hubot excludes all events performed by hubot.

Note that you can only use a GitHub username, not an individual's real name.

Search based on the action performed

To search for specific events, use the action qualifier in your query. Actions listed in the audit log are grouped within the following categories:

Category Name Description
account Contains all activities related to your organization account.
billing Contains all activities related to your organization's billing.
hook Contains all activities related to webhooks.
marketplace_agreement_signature Contains all activities related to signing the GitHub Marketplace Developer Agreement.
marketplace_listing Contains all activities related to listing apps in GitHub Marketplace.
org Contains all activities related organization membership
payment_method Contains all activities related to how your organization pays for GitHub.
profile_picture Contains all activities related to your organization's profile picture.
project Contains all activities related to project boards.
repo Contains all activities related to the repositories owned by your organization.
team Contains all activities related to teams in your organization.

You can search for specific sets of actions using these terms. For example:

  • action:team finds all events grouped within the team category.
  • -action:hook excludes all events in the webhook category.

Each category has a set of associated events that you can filter on. For example:

  • action:team.create finds all events where a team was created.
  • -action:hook.events_changed excludes all events where the events on a webhook have been altered.

This list describes the available categories and associated events:

The account category
Action Description
billing_plan_change Triggered when an organization's billing cycle changes.
plan_change Triggered when an organization's billing plan changes.
The billing category
Action Description
change_billing_type Triggered when your organization changes how it pays for GitHub.
change_email Triggered when your organization's billing email address changes.
The hook category
Action Description
create Triggered when a new hook was added to a repository owned by your organization.
config_changed Triggered when an existing hook has its configuration altered.
destroy Triggered when an existing hook was removed from a repository.
events_changed Triggered when the events on a hook have been altered.
The marketplace_agreement_signature category
Action Description
create Triggered when you sign the GitHub Marketplace Developer Agreement.
The marketplace_listing category
Action Description
approve Triggered when your listing is approved for inclusion in GitHub Marketplace.
create Triggered when you create a listing for your app in GitHub Marketplace.
delist Triggered when your listing is removed from GitHub Marketplace.
redraft Triggered when your listing is sent back to draft state.
reject Triggered when your listing is not accepted for inclusion in GitHub Marketplace.
The org category
Action Description
audit_log_export Triggered when an organization admin creates an export of the organization audit log. If the export included a query, the log will list the query used and the number of audit log entries matching that query.
block_user Triggered when an organization owner blocks a user from accessing the organization's repositories.
cancel_invitation Triggered when an organization invitation has been revoked.
disable_oauth_app_restrictions Triggered when an owner disables OAuth App access restrictions for your organization.
disable_saml Triggered when an organization admin disables SAML single sign-on for an organization.
disable_two_factor_requirement Triggered when an owner disables a two-factor authentication requirement for all members, billing managers, and outside collaborators in an organization.
enable_oauth_app_restrictions Triggered when an owner enables OAuth App access restrictions for your organization.
enable_saml Triggered when an organization admin enables SAML single sign-on for an organization.
enable_two_factor_requirement Triggered when an owner requires two-factor authentication for all members, billing managers, and outside collaborators in an organization.
invite_member Triggered when a new user was invited to join your organization.
oauth_app_access_approved Triggered when an owner grants organization access to an OAuth App.
oauth_app_access_denied Triggered when an owner disables a previously approved OAuth App's access to your organization.
oauth_app_access_requested Triggered when an organization member requests that an owner grant an OAuth App access to your organization.
remove_billing_manager Triggered when an owner removes a billing manager from an organization or when two-factor authentication is required in an organization and a billing manager doesn't use 2FA or disables 2FA.
remove_member Triggered when an owner removes a member from an organization or when two-factor authentication is required in an organization and an organization member doesn't use 2FA or disables 2FA. Also triggered when an organization member removes themselves from an organization.
remove_outside_collaborator Triggered when an owner removes an outside collaborator from an organization or when two-factor authentication is required in an organization and an outside collaborator does not use 2FA or disables 2FA.
unblock_user Triggered when an organization owner unblocks a user from an organization.
update_default_repository_permission Triggered when an owner changes the default repository permission level for organization members.
update_member Triggered when an owner changes a person's role from owner to member or member to owner.
update_member_repository_creation_permission Triggered when an owner changes the create repository permission for organization members.
update_saml_provider_settings Triggered when an organization's SAML provider settings are updated.
The oauth_application category
Action Description
create Triggered when a new OAuth App is created.
destroy Triggered when an existing OAuth App is deleted.
reset_secret Triggered when an OAuth App's client secret is reset.
revoke_tokens Triggered when an OAuth App's user tokens are revoked.
transfer Triggered when an existing OAuth App is transferred to a new organization.
The payment_method category
Action Description
clear Triggered when a payment method on file is removed.
create Triggered when a new payment method is added, such as a new credit card or PayPal account.
update Triggered when an existing payment method is updated.
The profile_picture category
Action Description
update Triggered when you set or update your organization's profile picture.
The project category
Action Description
create Triggered when a project board is created.
rename Triggered when a project board is renamed.
delete Triggered when a project board is deleted.
The repo category
Action Description
access Triggered when a repository owned by an organization is switched from "private" to "public" (or vice versa).
add_member Triggered when a user is invited to have collaboration access to a repository.
add_topic Triggered when a repository admin adds a topic to a repository.
create Triggered when a new repository is created.
destroy Triggered when a repository is deleted.
disable Triggered when a repository is disabled (e.g., for insufficient funds).
enable Triggered when a repository is reenabled.
remove_member Triggered when a user is removed from a repository as a collaborator.
remove_topic Triggered when a repository admin removes a topic from a repository.
rename Triggered when a repository is renamed.
transfer Triggered when a repository is transferred.
transfer_start Triggered when a repository transfer is about to occur.
The team category
Action Description
add_member Triggered when a member of an organization is added to a team.
add_repository Triggered when a team is given control of a repository.
change_parent_team Triggered when a child team is created or a child team's parent is changed.
change_privacy Triggered when a team's privacy level is changed.
create Triggered when a new team is created.
destroy Triggered when a team is deleted from the organization.
remove_member Triggered when a member of an organization is removed from a team.
remove_repository Triggered when a repository is no longer under a team's control.

Search based on time of action

Use the created qualifier to filter actions in the audit log based on when they occurred. Date formatting must follow the ISO8601 standard, which is YYYY-MM-DD--that's year-month-day. You may also add some optional time information, formatted as THH:MM:SS+07:00--that's hour-minutes-seconds (HH:MM:SS), followed by a UTC offset (+07:00)

Dates support greater than, less than, and range qualifiers. For example:

  • created:2014-07-08 finds all events that occurred on July 8th, 2014.
  • created:>=2014-07-08 finds all events that occurred on or after July 8th, 2014.
  • created:<=2014-07-08 finds all events that occurred on or before July 8th, 2014.
  • created:2014-07-01..2014-07-31 finds all events that occurred in the month of July 2014.

The audit log contains data for the past 90 days, but you can use the created qualifier to search for events earlier than that.

Search based on location

Using the qualifier country, you can filter actions in the audit log based on the originating country. You can use a country's two-letter short code or its full name. Keep in mind that countries with spaces in their name will need to be wrapped in quotation marks. For example:

  • country:de finds all events that occurred in Germany.
  • country:Mexico finds all events that occurred in Mexico.
  • country:"United States" all finds events that occurred in the United States.

Exporting the audit log

You can export your organization's audit log as JSON data or a comma-separated value (CSV) file, with or without a specified search.

Full audit log export button

When exporting the results of a specific search, these fields can be included:

key example value
action team.create
actor dewski
user shayfrendt
org octo-org
repo octo-org/documentation
created_at 1429548104000
data.hook_id 245
data.events ["issues", "issue_comment", "pull_request", "pull_request_review_comment"]
data.events_were ["push", "pull_request", "issues"]
data.target_login octocat
data.old_user hubot
data.team octo-org/engineering

Further reading