# How to Ping an API

{% hint style="info" %}
This can be done in a Computed Field if you want to fetch from the API when the Flow gets loaded or you can do it as a Data Output if you want to trigger the fetch at some specific point or points of the Flow.
{% endhint %}

## As a Computed Field:

### Step 1: Create a Computed Field

* Go to the "All" Tab on the Left Sidebar
* Scroll to the bottom where you can find the Computed Fields area, and click on "Create New"

### Step 2: Write your Code

* Click on "Generate Sample Code" below the code editor, on the Options Tab of the Right Sidebar
* Write your code inside the created function. It should look something like this:

```
return fetch('https://example.com/api', {
  method: 'POST', // or 'GET'
  headers: {
    'Content-Type': 'application/json' // Common example of a header
  },
  body: JSON.stringify({ key: 'value' }), // For sending some data
})
  .then(response => response.json()) // This just turns the response into JSON data
  .then(data => { /* Do something with data */ })
```

## As a Data Output:

### Step 1: Create the Data Output

* Go to the "All" Tab on the Left Sidebar
* Scroll to the bottom where you can find the Data Outputs area, and click on "Create New"
* On the Options Tab of the Right Sidebar select "Custom" as an output
* Check the "Manual Trigger Only" box

### Step 2: Write your Code

* Click on "Generate Sample Code" below the code editor, on the Options Tab of the Right Sidebar
* Write your code inside the created function. It should look something like this:

```
fetch('https://example.com/api', { 
  method: 'POST', // or 'GET'
  headers: {
    'Content-Type': 'application/json' // Common example of a header
  },
  body: JSON.stringify({ key: 'value' }), // For sending some data
})
  .then(response => response.json()) // This just turns the response into JSON data
  .then(data => { /* Do something with data */ })
```

### Step 3: Trigger it!

* Select the page or component where you want to ping the API&#x20;
* Go to the Triggers Tab on the Right Sidebar
* Choose to trigger on page load, on page complete, on click, on success, etc.
* Select the Data Output you want to trigger
* Done!
