Skip to main content

This version of GitHub Enterprise Server was discontinued on 2024-03-26. No patch releases will be made, even for critical security issues. For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise Server. For help with the upgrade, contact GitHub Enterprise support.

After a site administrator upgrades your Enterprise Server instance to Enterprise Server 3.9 or later, the REST API will be versioned. To learn how to find your instance's version, see "About versions of GitHub Docs". For more information, see "About API versioning."

REST API endpoints for global announcements

Use the REST API to manage the global announcement banner in your enterprise.

About announcements

You can use the REST API to manage the global announcement banner in your enterprise. For more information, see "Customizing user messages for your enterprise."

Get the global announcement banner

Gets the current message and expiration date of the global announcement banner in your enterprise.

HTTP response status codes for "Get the global announcement banner"

Status codeDescription
200

OK

Code samples for "Get the global announcement banner"

Request example

get/enterprise/announcement
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/enterprise/announcement

Announcement banner

Status: 200
{ "announcement": "Very **important** announcement about _something_.", "expires_at": "2021-01-01T00:00:00.000+00:00", "user_dismissible": false }

Set the global announcement banner

Sets the message and expiration time for the global announcement banner in your enterprise.

Parameters for "Set the global announcement banner"

Headers
Name, Type, Description
accept string

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

Body parameters
Name, Type, Description
announcement string or null Required

The announcement text in GitHub Flavored Markdown. For more information about GitHub Flavored Markdown, see "Basic writing and formatting syntax."

expires_at string or null

The time at which the announcement expires. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ. To set an announcement that never expires, omit this parameter, set it to null, or set it to an empty string.

HTTP response status codes for "Set the global announcement banner"

Status codeDescription
200

OK

Code samples for "Set the global announcement banner"

Request example

patch/enterprise/announcement
curl -L \ -X PATCH \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/enterprise/announcement \ -d '{"announcement":"Very **important** announcement about _something_.","expires_at":"2021-01-01T00:00:00.000+00:00"}'

Announcement banner

Status: 200
{ "announcement": "Very **important** announcement about _something_.", "expires_at": "2021-01-01T00:00:00.000+00:00", "user_dismissible": false }

Remove the global announcement banner

Removes the global announcement banner in your enterprise.

HTTP response status codes for "Remove the global announcement banner"

Status codeDescription
204

No Content

Code samples for "Remove the global announcement banner"

Request example

delete/enterprise/announcement
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/enterprise/announcement

Response

Status: 204