RapidAPI · Schema

RapidAPI API Listing

Schema representing an API listing on the RapidAPI platform, including metadata, versioning, endpoint definitions, and pricing plans.

API MarketplaceAPI ManagementAPI TestingAPI GatewayAPI DesignEnterprise

Properties

Name Type Description
id string Unique identifier for the API listing on the platform
name string Display name of the API as shown on the marketplace
slug string URL-friendly slug used in the API's marketplace URL
description string Short description of the API displayed on the endpoints tab
longDescription string Detailed description with use cases and documentation, displayed on the about tab
category string The category the API is listed under for organization and discovery
tags array Custom tags applied to the API for filtering and search
websiteUrl string URL to the website providing the API, shown on the about tab
imageUrl string URL to the API icon image, recommended 500x500 px in PNG or JPG format
status string Current publication status of the API listing
isVerified boolean Whether the API provider has been verified by RapidAPI
provider object Information about the organization or user providing the API
versions array Available versions of the API
endpoints array Endpoint definitions for the current active version
plans array Subscription pricing plans available for this API
averageRating number Average user rating on a scale of 0 to 5
totalRatings integer Total number of user ratings
createdAt string Timestamp when the API listing was first created
updatedAt string Timestamp when the API listing was last modified
View JSON Schema on GitHub

JSON Schema

rapidapi-api-listing-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://rapidapi.com/schemas/rapidapi/api-listing.json",
  "title": "RapidAPI API Listing",
  "description": "Schema representing an API listing on the RapidAPI platform, including metadata, versioning, endpoint definitions, and pricing plans.",
  "type": "object",
  "required": ["name", "description", "category"],
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the API listing on the platform"
    },
    "name": {
      "type": "string",
      "description": "Display name of the API as shown on the marketplace",
      "minLength": 1,
      "maxLength": 200
    },
    "slug": {
      "type": "string",
      "description": "URL-friendly slug used in the API's marketplace URL",
      "pattern": "^[a-z0-9-]+$"
    },
    "description": {
      "type": "string",
      "description": "Short description of the API displayed on the endpoints tab",
      "maxLength": 500
    },
    "longDescription": {
      "type": "string",
      "description": "Detailed description with use cases and documentation, displayed on the about tab"
    },
    "category": {
      "type": "string",
      "description": "The category the API is listed under for organization and discovery"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Custom tags applied to the API for filtering and search"
    },
    "websiteUrl": {
      "type": "string",
      "format": "uri",
      "description": "URL to the website providing the API, shown on the about tab"
    },
    "imageUrl": {
      "type": "string",
      "format": "uri",
      "description": "URL to the API icon image, recommended 500x500 px in PNG or JPG format"
    },
    "status": {
      "type": "string",
      "enum": ["active", "inactive", "deprecated"],
      "description": "Current publication status of the API listing"
    },
    "isVerified": {
      "type": "boolean",
      "description": "Whether the API provider has been verified by RapidAPI"
    },
    "provider": {
      "$ref": "#/$defs/Provider",
      "description": "Information about the organization or user providing the API"
    },
    "versions": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ApiVersion"
      },
      "description": "Available versions of the API"
    },
    "endpoints": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ApiEndpoint"
      },
      "description": "Endpoint definitions for the current active version"
    },
    "plans": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/PricingPlan"
      },
      "description": "Subscription pricing plans available for this API"
    },
    "averageRating": {
      "type": "number",
      "format": "float",
      "minimum": 0,
      "maximum": 5,
      "description": "Average user rating on a scale of 0 to 5"
    },
    "totalRatings": {
      "type": "integer",
      "minimum": 0,
      "description": "Total number of user ratings"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the API listing was first created"
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the API listing was last modified"
    }
  },
  "$defs": {
    "Provider": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the API provider"
        },
        "name": {
          "type": "string",
          "description": "Display name of the API provider"
        },
        "organizationId": {
          "type": "string",
          "description": "Organization the provider belongs to, if applicable"
        },
        "isVerified": {
          "type": "boolean",
          "description": "Whether the provider has been verified"
        }
      },
      "description": "Information about an API provider on the platform"
    },
    "ApiVersion": {
      "type": "object",
      "required": ["name"],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the version"
        },
        "name": {
          "type": "string",
          "description": "Version name or label"
        },
        "status": {
          "type": "string",
          "enum": ["active", "deprecated", "draft"],
          "description": "Current status of the version"
        },
        "createdAt": {
          "type": "string",
          "format": "date-time",
          "description": "Timestamp when the version was created"
        }
      },
      "description": "A version of an API listing"
    },
    "ApiEndpoint": {
      "type": "object",
      "required": ["name", "method", "path"],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the endpoint"
        },
        "name": {
          "type": "string",
          "description": "Display name of the endpoint"
        },
        "method": {
          "type": "string",
          "enum": ["GET", "POST", "PUT", "PATCH", "DELETE"],
          "description": "HTTP method for the endpoint"
        },
        "path": {
          "type": "string",
          "description": "URL path for the endpoint"
        },
        "group": {
          "type": "string",
          "description": "Endpoint group for organizational purposes"
        },
        "description": {
          "type": "string",
          "description": "Description of what the endpoint does"
        },
        "parameters": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/EndpointParameter"
          },
          "description": "Parameters accepted by this endpoint"
        }
      },
      "description": "An individual endpoint within an API"
    },
    "EndpointParameter": {
      "type": "object",
      "required": ["name", "location"],
      "properties": {
        "name": {
          "type": "string",
          "description": "Parameter name"
        },
        "type": {
          "type": "string",
          "description": "Data type of the parameter"
        },
        "required": {
          "type": "boolean",
          "description": "Whether the parameter is required"
        },
        "description": {
          "type": "string",
          "description": "Description of the parameter"
        },
        "defaultValue": {
          "type": "string",
          "description": "Default value if not provided"
        },
        "location": {
          "type": "string",
          "enum": ["query", "path", "header", "body"],
          "description": "Where the parameter is sent in the request"
        }
      },
      "description": "A parameter accepted by an API endpoint"
    },
    "PricingPlan": {
      "type": "object",
      "required": ["name"],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the plan"
        },
        "name": {
          "type": "string",
          "description": "Plan name such as Basic, Pro, or Ultra"
        },
        "price": {
          "type": "number",
          "format": "double",
          "minimum": 0,
          "description": "Monthly price in USD, 0 for free tier"
        },
        "rateLimit": {
          "type": "integer",
          "minimum": 0,
          "description": "Maximum number of requests allowed per month"
        },
        "quotaType": {
          "type": "string",
          "enum": ["hard", "soft"],
          "description": "Whether exceeding the limit blocks requests or incurs overage charges"
        },
        "features": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Features included in this plan"
        }
      },
      "description": "A subscription pricing plan for an API"
    }
  }
}