> For the complete documentation index, see [llms.txt](https://help.security.gallagher.com/knowledge-hub/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.security.gallagher.com/knowledge-hub/products/cc-software/configure/interface-options/api/representational-state-transfer-rest-api/rest-api-setting-up-rest-api-in-command-center.md).

# REST API - setting up REST API in Command Centre

Enable the REST API and create a secured REST Client in Command Centre.

> 📋 **Prerequisites:** Create a [REST operator](/knowledge-hub/products/cc-software/configure/interface-options/api/representational-state-transfer-rest-api/rest-api-create-rest-operator.md) first. You will also need a [client certificate](/knowledge-hub/products/cc-software/configure/interface-options/api/representational-state-transfer-rest-api/rest-api-creating-the-client-certificate.md).

This page covers the two steps that stand the API up in Command Centre: turning on the web server, then creating a REST Client item.

## 1. Turn on the web server

In the Configuration Client, go to **File → Server Properties → Web Services** (about 15 rows down):

1. Enable the **REST API** and, initially, tick the checkbox to the right of the port. Watch the status. It is the first sign of a socket-binding problem.
2. For production, ensure **"Do not require pinned client certificates"** is **OFF**. In 8.50 this is labelled *"Enable REST Clients with no client certificate"*. Requiring pre-shared client certificates is the server's best protection against network attackers.

The web server listens on **port 8904**.

## 2. Create the REST Client item

In the Configuration Client, go to **Configure → Services and Workstations** (at the bottom), right-click, then choose **New → REST Client**:

1. Set a **name**, then go to the **API Key** tab.
2. Drag your operator (from **Manage → Cardholders**) into the **"REST Client Operator"** box. The box looks like it holds more than one operator, but it holds exactly one.
3. Note the **API key**. Your client needs it (a sample app, Chrome, or Postman).
4. Set **IP filtering**. A space works as well as a comma. This is an extra layer that makes an attack harder.
5. Populate the **Client Certificate Thumbprint** from the certificate's Details tab (spaces are allowed). Use either a thumbprint you were provided or one you create yourself.

## Verification

Browse to `https://<server name or ip>:8904/api/` and ignore the key and certificate at first. If the service is listening and the port is open, the connection is refused for an invalid API key rather than timing out. See [REST API - Connection](/knowledge-hub/products/cc-software/configure/interface-options/api/representational-state-transfer-rest-api/rest-api-connection.md) for the full connection check.

***

🔗 **Related**

* [REST API - Create REST Operator](/knowledge-hub/products/cc-software/configure/interface-options/api/representational-state-transfer-rest-api/rest-api-create-rest-operator.md). The operator every REST change is pinned to.
* [REST API - What is an API Key?](/knowledge-hub/products/cc-software/configure/interface-options/api/representational-state-transfer-rest-api/rest-api-what-is-an-api-key.md). What the key contains and how to protect it.
* [REST API - Connection](/knowledge-hub/products/cc-software/configure/interface-options/api/representational-state-transfer-rest-api/rest-api-connection.md). Confirm the service is reachable.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.security.gallagher.com/knowledge-hub/products/cc-software/configure/interface-options/api/representational-state-transfer-rest-api/rest-api-setting-up-rest-api-in-command-center.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
