Repository: google/go-github (Go)

Issue:
AuditEntry is missing referrer field
The [AuditEntry](https://github.com/google/go-github/blob/a54bc7da1d91a3d2de234741640965ac9ece6d74/github/orgs_audit_log.go#L45) structs is missing `referrer` field which is a useful information to understand more about the changes when it comes into protected_branch action in audit log.

Following is an example entry from Github API response which does have the `referrer` field.

```json
[
    {
        "@timestamp": 1702649229027,
        "_document_id": "RbYZGywxRSadhVVKTSGP5g",
        "action": "protected_branch.policy_override",
        "actor": "bob",
        "actor_id": 111111,
        "actor_location":
        {
            "country_code": "DE"
        },
        "after": "66480649c9e042c93287ce387611bd1d785a977c",
        "before": "761e880ab6459f8f5a1cd2b4e0e1f1041df74f92",
        "branch": "refs/heads/main",
        "business": "hidden",
        "business_id": 11111,
        "created_at": 1702649229027,
        "external_identity_nameid": "bob@domain.ltd",
        "external_identity_username": "bob@domain.ltd",
        "operation_type": "modify",
        "org": "hidden",
        "org_id": 111111,
        "overridden_codes":
        [
            "required_status_checks"
        ],
        "public_repo": false,
        "reasons":
        [
            {
                "code": "required_status_checks",
                "message": "3 of 3 required status checks have not succeeded: 2 expected and 1 failing."
            }
        ],
        "referrer": "https://github.com/hidden/test/pull/332",
        "repo": "hidden/test",
        "repo_id": 111111,
        "user_agent": "Mozilla/5.0 (Macintosh Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
    }
]
```


Discussion:

Patch:
diff --git a/github/github-accessors.go b/github/github-accessors.go
index 4cb34b1260a..b13ed4083ff 100644
--- a/github/github-accessors.go
+++ b/github/github-accessors.go
@@ -1454,6 +1454,14 @@ func (a *AuditEntry) GetReadOnly() string {
 	return *a.ReadOnly
 }
 
+// GetReferrer returns the Referrer field if it's non-nil, zero value otherwise.
+func (a *AuditEntry) GetReferrer() string {
+	if a == nil || a.Referrer == nil {
+		return ""
+	}
+	return *a.Referrer
+}
+
 // GetRepo returns the Repo field if it's non-nil, zero value otherwise.
 func (a *AuditEntry) GetRepo() string {
 	if a == nil || a.Repo == nil {
diff --git a/github/orgs_audit_log.go b/github/orgs_audit_log.go
index e3afd3117f5..aa3591359ef 100644
--- a/github/orgs_audit_log.go
+++ b/github/orgs_audit_log.go
@@ -95,6 +95,7 @@ type AuditEntry struct {
 	PullRequestURL           *string                 `json:"pull_request_url,omitempty"`
 	ReadOnly                 *string                 `json:"read_only,omitempty"`
 	Reasons                  []*PolicyOverrideReason `json:"reasons,omitempty"`
+	Referrer                 *string                 `json:"referrer,omitempty"`
 	Repo                     *string                 `json:"repo,omitempty"`
 	Repository               *string                 `json:"repository,omitempty"`
 	RepositoryPublic         *bool                   `json:"repository_public,omitempty"`


Test patch:
diff --git a/github/github-accessors_test.go b/github/github-accessors_test.go
index cdc27ab9966..c8bd40b5333 100644
--- a/github/github-accessors_test.go
+++ b/github/github-accessors_test.go
@@ -1731,6 +1731,16 @@ func TestAuditEntry_GetReadOnly(tt *testing.T) {
 	a.GetReadOnly()
 }
 
+func TestAuditEntry_GetReferrer(tt *testing.T) {
+	var zeroValue string
+	a := &AuditEntry{Referrer: &zeroValue}
+	a.GetReferrer()
+	a = &AuditEntry{}
+	a.GetReferrer()
+	a = nil
+	a.GetReferrer()
+}
+
 func TestAuditEntry_GetRepo(tt *testing.T) {
 	var zeroValue string
 	a := &AuditEntry{Repo: &zeroValue}