Product Fruits Events API

Custom event tracking

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.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/product-fruits-events-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

product-fruits-events-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Product Fruits REST Events API
  description: REST API for the Product Fruits product adoption platform. Provides programmatic control over user identification, event tracking, knowledge base management, and feedback collection for SaaS teams.
  version: 1.0.0
  contact:
    name: Product Fruits Support
    url: https://help.productfruits.com
    email: info@productfruits.com
  termsOfService: https://productfruits.com/terms
servers:
- url: https://api.productfruits.com
  description: Production API server
security:
- BearerAuth: []
tags:
- name: Events
  description: Custom event tracking
paths:
  /v1/events/track:
    post:
      operationId: trackEvent
      summary: Track a custom event for a user
      description: Syncs a custom event from backend systems to a specified user. Custom properties in the properties object are available for future use in segmentation and targeting.
      tags:
      - Events
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TrackEventRequest'
            example:
              event: feature_activated
              properties:
                username: user-123
                featureName: analytics
                isFirstTime: true
      responses:
        '200':
          description: Event tracked successfully
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimitExceeded'
components:
  schemas:
    Error:
      type: object
      properties:
        message:
          type: string
          description: Error message
    TrackEventRequest:
      type: object
      required:
      - event
      - properties
      properties:
        event:
          type: string
          description: Name of the event to track
        properties:
          type: object
          required:
          - username
          properties:
            username:
              type: string
              description: Username of the user receiving the event
          additionalProperties:
            oneOf:
            - type: number
            - type: boolean
            - type: string
  responses:
    RateLimitExceeded:
      description: Rate limit exceeded (5 requests per second)
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Missing or invalid API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: API key generated from the Integrations section in Product Fruits. Should never be exposed in front-end environments.