Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/feedback1-ai:feedback1-ai-products-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: Feedback1 Public Products API
description: '## Feedback1 Public API
REST API for programmatic access to Feedback1 data.
### Authentication
All endpoints require a Bearer token (API key) in the `Authorization` header:
```
Authorization: Bearer your_api_key_here
```
You can create API keys in the Feedback1 dashboard under Settings > API Keys.
### Rate Limits
- 200 requests per minute per API key
- Rate limit headers are included in responses
### Base URL
```
https://app.feedback1.ai/api/v1
```'
version: 1.0.0
servers:
- url: /api/v1
tags:
- name: Products
description: Product management
paths:
/products:
get:
tags:
- Products
summary: List Products
description: 'List all products for the authenticated tenant.
Products are the top-level organizational unit in Feedback1.
Each product has its own feedback, features, roadmap, and changelog.'
operationId: list_products_products_get
security:
- HTTPBearer: []
parameters:
- name: page
in: query
required: false
schema:
type: integer
minimum: 1
description: Page number (1-based)
default: 1
title: Page
description: Page number (1-based)
- name: page_size
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
description: Items per page (max 100)
default: 20
title: Page Size
description: Items per page (max 100)
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProductListResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/products/{product_id}:
get:
tags:
- Products
summary: Get Product
description: 'Get a specific product by ID.
You can use either the internal ID (product_xxx) or the public ID (ABC123).'
operationId: get_product_products__product_id__get
security:
- HTTPBearer: []
parameters:
- name: product_id
in: path
required: true
schema:
type: string
title: Product Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProductResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
ProductResponse:
properties:
id:
type: string
title: Id
pub_id:
type: string
title: Pub Id
name:
type: string
title: Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
website_url:
anyOf:
- type: string
- type: 'null'
title: Website Url
created_at:
type: string
format: date-time
title: Created At
updated_at:
type: string
format: date-time
title: Updated At
type: object
required:
- id
- pub_id
- name
- created_at
- updated_at
title: ProductResponse
description: Product response schema for Public API
ProductListResponse:
properties:
items:
items:
$ref: '#/components/schemas/ProductResponse'
type: array
title: Items
total:
type: integer
title: Total
page:
type: integer
title: Page
page_size:
type: integer
title: Page Size
has_more:
type: boolean
title: Has More
type: object
required:
- items
- total
- page
- page_size
- has_more
title: ProductListResponse
description: Paginated list of products
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
securitySchemes:
HTTPBearer:
type: http
scheme: bearer