# Remote Procedure Calls

To find the RPC debug tool:

{% stepper %}
{% step %}
Navigate to the Custom apps area.
{% endstep %}

{% step %}
Select your custom app from the list.
{% endstep %}

{% step %}
Click the **Remote Procedures** tab.
{% endstep %}

{% step %}
Select the RPC you want to debug.
{% endstep %}

{% step %}
Click **Test RPC**.

<div align="left"><figure><img src="/files/WnJes3YCfiWBRWuffTBP" alt="" width="563"><figcaption><p><br></p></figcaption></figure></div>
{% endstep %}
{% endstepper %}

## RPC page

Compare the tabs below to learn how to access information about your RPCs in Make.

### Communication tab

After creating a new RPC, you can modify the default template in the Communications tab for your needs.

{% tabs %}
{% tab title="Default Communication" %}

<div align="left"><figure><img src="/files/cXNGC4g5jXRnFzIDv8VW" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="info" %}
Inside RPC, you can use the relative path and the full form of the URL.

However, we advise using the relative path across all your RPCs and modules.

A relative path is added to the `"baseUrl"` that you need to specify inside the app Base.
{% endhint %}
{% endtab %}

{% tab title="Customized Communication" %}

<div align="left"><figure><img src="/files/6RkhJHKfMbgEGzO6FR1F" alt="" width="563"><figcaption></figcaption></figure></div>
{% endtab %}
{% endtabs %}

### Parameters tab

By default, the Parameters tab is empty. Here you can add any parameter you need. You can also add mappable parameters from a module. [Learn more about using RPC parameters](/custom-apps-documentation/app-components/rpcs/dynamic-options-rpc.md#select-parameter-with-rpc-options).

{% tabs %}
{% tab title="Default parameters" %}

<div align="left"><figure><img src="/files/nga2VlB4OxxPWbRBbSP3" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="info" %}
Any parameter created inside an RPC will be available only for RPC debugging. It will not be visible inside your modules or inside scenarios.

To preview and test parameters, click on the **Test RPC** button.
{% endhint %}
{% endtab %}

{% tab title="Customized parameters" %}

<div align="left"><figure><img src="/files/x2jnxAKOj2jDOVKDtZcH" alt="" width="563"><figcaption></figcaption></figure></div>
{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Default preview" %}

<div align="left"><figure><img src="/files/fwPeqH8g9JIo4yuGchMR" alt="" width="563"><figcaption></figcaption></figure></div>
{% endtab %}

{% tab title="Customized preview with parameters" %}

<div align="left"><figure><img src="/files/4qZwbeJVGg2Rkltnx0WQ" alt="" width="563"><figcaption></figcaption></figure></div>
{% endtab %}
{% endtabs %}

## RPC debug tool

The RPC debug tool works the same way modules do.

1. Specify the connection and other fields (parameters) if needed.
2. Click the **Test** button.
3. The call, which you specified before in the RPC communication, will be executed.

You will see the `output` that you specified in the RPC communication.

If you specified output as "`label"` and `"value"` (with the purpose of using it inside a Select parameter), do not expect to see the full server response there.

{% hint style="info" %}
Sometimes you might get an empty array as a response. If that's not the response that you expected, check that you correctly specified the path to the object, which you use inside `iterate`.
{% endhint %}

{% tabs %}
{% tab title="Input" %}

<div align="left"><figure><img src="/files/j8fCPKa05tEFyfjIZiyV" alt="" width="563"><figcaption></figcaption></figure></div>
{% endtab %}

{% tab title="Output" %}

<div align="left"><figure><img src="/files/jLT7orGSvYB3g8vGFFYF" alt="" width="563"><figcaption></figcaption></figure></div>
{% endtab %}

{% tab title="Communication code" %}

<div align="left"><figure><img src="/files/6RkhJHKfMbgEGzO6FR1F" alt="" width="563"><figcaption></figcaption></figure></div>
{% endtab %}
{% endtabs %}

## Debug RPCs in the dev console

Sometimes you may need to look into the request you're sending and the response from the API.

You can see more details about the RPC you're testing by opening your browser's dev console: Network tab.

The `debug` values show the request being sent and the response received by the API.

<div align="left"><figure><img src="/files/KSmygQia6VwL2tbWkaMi" alt="" width="563"><figcaption></figcaption></figure></div>


---

# 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://developers.make.com/custom-apps-documentation/debug-your-app/debugging-rpc.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.
