---
updatedAt: 2026-04-09T13:27:58.000Z
---

Fetch the complete documentation index at: https://developer.productboard.com/llms.txt. Use this file to discover all available pages before exploring further. Append .md to any documentation page URL to get its markdown version.

# Getting started

This Quickstart walks you through your first API call using Productboard's REST API v2. In just a few steps, you’ll authenticate, send a request, and see real data come back.

## 1. What You'll Need

* A **Productboard account** on the [Pro plan](https://www.productboard.com/pricing/) or higher
* A valid **Public API Access Token**
  * [How to generate a token](authentication#api-token) in Workspace Settings
* A **terminal with `curl` installed**
  * macOS and most Linux systems include it by default
  * On Windows, use Command Prompt, PowerShell, or install curl manually

***

## 2. Base URL

All API v2 requests use this base URL:

```
https://api.productboard.com/v2
```

***

## 3. Make Your First API Call

Follow these steps to fetch data from your workspace using the `/notes` endpoint.

### Step 1 – Open your terminal

Launch your terminal or command line.

### Step 2 – Run this command to fetch a list of notes

This request calls the `/notes` endpoint and retrieves the first page of notes from your workspace.

Replace `<your-token>` with your actual API access token:

```curl
curl -X GET "https://api.productboard.com/v2/notes" \
  -H "Authorization: Bearer <your-token>" \
  -H "Accept: application/json"
```

### Step 3 – Review the response

If everything is set up correctly, you’ll see a JSON response like this:

```json
{
  "data": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "type": "textNote",
      "fields": {
        "name": "Customer feedback",
        "content": "Customer reported slow loading times on mobile app",
        "owner": {
          "id": "923e4567-e89b-12d3-a456-426614174008",
          "email": "john.doe@example.com"
        },
        "creator": {
          "id": "e23e4567-e89b-12d3-a456-426614174013",
          "email": "creator@example.com"
        },
        "processed": false,
        "archived": false
      },
      "links": {
        "self": "https://api.productboard.com/v2/notes/123e4567-e89b-12d3-a456-426614174000"
      }
    },
    {
      "id": "223e4567-e89b-12d3-a456-426614174001",
      "type": "textNote",
      "fields": {
        "name": "Feature request – dark mode",
        "content": "Customer wants dark mode for the app",
        "owner": {
          "id": "923e4567-e89b-12d3-a456-426614174008",
          "email": "john.doe@example.com"
        },
        "creator": {
          "id": "e23e4567-e89b-12d3-a456-426614174013",
          "email": "creator@example.com"
        },
        "processed": true,
        "archived": false
      },
      "links": {
        "self": "https://api.productboard.com/v2/notes/223e4567-e89b-12d3-a456-426614174001"
      }
    }
  ],
  "links": {
    "next": "https://api.productboard.com/v2/notes?pageCursor=abc123"
  }
}
```

<Callout icon="💡" theme="default">
  Use the `links.next` field to paginate through large result sets.
</Callout>

***

## 4. What Just Happened?

You:

* Authenticated with a **Bearer token**
* Sent a `GET` request to the `/notes` endpoint
* Received a paginated list of notes from your workspace

***

## 5. Authentication Methods

This Quickstart uses a **Personal Access Token**, but we also support:

* **OAuth 2.0 Authorization Code Flow**
* **OAuth 2.0 JWT Bearer Flow**

→ See [Authentication](authentication) for details and examples.

***

## 6. What’s Next?

Now that you’ve successfully made your first request, you can:

* Explore available endpoints:
  * [Notes API](listnotes)
  * [Entities API](listentities)
* Review [Rate Limits](rate-limits)
* Learn about [Pagination](pagination)

***

[Need help or want to share feedback?](feedback-help)