# Registering Your First APIs with digiRunner

Register external APIs to digiRunner, and after they are enabled, the APIs can be called through digiRunner.

## Registering APIs <a href="#toc164347043" id="toc164347043"></a>

The system can register the APIs saved on the AP Server into the system, and then have the system manage the APIs.

1. Go to **API Management** > **API Registration**, and click **CUSTOMIZE** to enter the registration page.
2. Fill in the required fields: **Target URL, API Name, digiRunner Proxy Path** and **Http Methods**.
3. Since authentication is not required for now, select **No Auth**.
4. Click **Register** to complete the registration of that API.

<div align="left"><img src="/files/anhJE4iLlmceeaY2AZKP" alt=""></div>

5. Go to **API Management** > **API List** to query the API just registered, the default status of the API is disabled (![](/files/j0OXh94o0hxqcmDTgzFB)).

For more information on creating an API proxy, please refer to [API Registry](/guide/api-management/api-registry.md).

## Enabling/Disabling APIs <a href="#toc164347044" id="toc164347044"></a>

Enable/Disable can be used to restrict the calling of APIs registered into system management.

1. Go to **API Management** > **API List** to query APIs that have been registered successfully.

<div align="left"><img src="/files/Iuqi2uWEhWqHAAvZ4JeW" alt=""></div>

2. Click on the ![](/files/L3grXXyoTDJTAhVZJUL7) icon to open the testing area, and select **No Auth** for **Authorization**.
3. Click **Test** to view the response. In this example, the **Status** code returned is *503*, and the **Body** contains the data `"API was disabled"`.

<div align="left"><img src="/files/B3xUfYZqozcs3iONbAhG" alt=""></div>

4. Return to the list and select the API; the default status at this time is disabled (![](/files/D7P4rOYHZCwU7krSzWdM)). Select the API, and click **Enable**.
5. A confirmation window for enabling will pop up, click **Confirm**, and the API status will be updated to enabled (![](/files/Vydg6JBbh0owIwsNwfya)).

<div align="left"><img src="/files/ls6dsiFFwSWR8Yj15OpE" alt=""></div>

6. Click on the ![](/files/L3grXXyoTDJTAhVZJUL7) icon to open the testing area, and select **No Auth** for **Authorization**.
7. Click **Test** to view the response. In this example, the **Status** code returned is *200*, indicating a successful call, and the **Body** contains the data defined by that API.

<div align="left"><img src="/files/CDmtphDXXwwQAz9HIDs1" alt=""></div>

## Testing APIs <a href="#toc164347045" id="toc164347045"></a>

APIs registered into system management can be called from the API test area. NO Auth is used as the example below.

1. Go to **API Management** > **API List**, and query APIs that have been registered successfully into API, then click on the ![](/files/L3grXXyoTDJTAhVZJUL7) icon to open the testing area.

<div align="left"><img src="/files/LllMI4PhEPDGH6VYhAtO" alt=""></div>

2. Select **No Auth** for **Authorization**. The target URL will be retrieved automatically for the **digiRunner URL** field, and the default **Http Method** is **GET**.
3. Click **Test** to view the response. In this example, the **Status** code returned is *200*, and the **Body** contains the data defined by that API.

<div align="left"><img src="/files/sxrv3eBoo2GhW7IPZuel" alt=""></div>

4. Go to **API Management** > **API Test**, and fill in the **digiRunner URL** field with the target URL.
5. Select **No Auth** for **Authorization**.
6. Click **Test** to view the response. In this example, the **Status** code returned is *200*, and the **Body** contains the data defined by that API.

<div align="left"><img src="/files/iRdFch5C6XLLnZm1curL" alt=""></div>

Next, you can try our most common use cases.

<table data-column-title-hidden data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Client Authorization and Calling APIs</td><td><a href="/pages/5fgaZsHQLVWeh02pCAi5">/pages/5fgaZsHQLVWeh02pCAi5</a></td></tr><tr><td>Rate Limiting</td><td><a href="/pages/OMHGwDXZbj4c6Sv07IGU">/pages/OMHGwDXZbj4c6Sv07IGU</a></td></tr><tr><td>Proxy Caching</td><td><a href="/pages/3nXeoVG3l2JKtTAv1LeQ">/pages/3nXeoVG3l2JKtTAv1LeQ</a></td></tr><tr><td>Load Blancing</td><td><a href="/pages/s5IohNRsqrD2DGcZNPYi">/pages/s5IohNRsqrD2DGcZNPYi</a></td></tr><tr><td>Sandbox Testing</td><td><a href="/pages/QtEQfPLiF7Axx4LOIhwl">/pages/QtEQfPLiF7Axx4LOIhwl</a></td></tr><tr><td>VIP Gateway Priprity Settings</td><td><a href="/pages/8BzGWjSuxnpOhT4HhoRR">/pages/8BzGWjSuxnpOhT4HhoRR</a></td></tr><tr><td>JWE Certificate</td><td></td></tr></tbody></table>

{% content-ref url="/pages/e7hehbDbOxYy0OvQ2PrH" %}
[Most common use cases](/most-common-use-cases/obtaining-api-keys-and-calling-apis.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tpi.dev/get-started/registering-your-first-apis-with-digirunner.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
