MSP Software · Schema

SoftwareSummary

DirectoryMSPSoftwareComparisonReviewsOpenAPI

Properties

Name Type Description
slug string The product name in lower case with hyphens, e.g. "datto-rmm".
name string
tagline string
vendor object
category objectnull The primary category only. Null while that category is not published.
url string
rating object
starting_price object
free_trial booleannull
deployment array
featured boolean Deprecated: the same value as sponsored.
sponsored boolean The product has a live paid placement somewhere on the site.
sponsorship_label stringnull The label the site shows on a paid placement: "Sponsored" when sponsored is true, else null.
match stringnull Present on search results only: the field q matched, the best-ranked one when several do (a slug match counts as product_name). Null when there is no q.
placement string Present on search results only: "sponsored" for the at most two paid placements whose name matches q, shown first and labelled Sponsored; every other result is "organic" and ranked without regard to p
via_vendor objectnull Present on a vendor's products only: the child company that makes this product, or null when the vendor makes it itself.
compare_url stringnull Present on alternatives only: the side-by-side comparison page for this product and the one it is an alternative to, or null when that pair is not comparable.
View JSON Schema on GitHub

JSON Schema

mspsoftware-net-software-summary-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/mspsoftware-net/json-schema/mspsoftware-net-software-summary-schema.json",
  "title": "SoftwareSummary",
  "x-generated": "2026-10-29",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/mspsoftware-directory-api-openapi.json#/components/schemas/SoftwareSummary",
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "The product name in lower case with hyphens, e.g. \"datto-rmm\"."
    },
    "name": {
      "type": "string"
    },
    "tagline": {
      "type": "string"
    },
    "vendor": {
      "type": "object",
      "properties": {
        "slug": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "category": {
      "type": [
        "object",
        "null"
      ],
      "description": "The primary category only. Null while that category is not published.",
      "properties": {
        "slug": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "url": {
      "type": "string",
      "format": "uri"
    },
    "rating": {
      "$ref": "#/$defs/Rating"
    },
    "starting_price": {
      "$ref": "#/$defs/StartingPrice"
    },
    "free_trial": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "deployment": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "featured": {
      "type": "boolean",
      "description": "Deprecated: the same value as sponsored."
    },
    "sponsored": {
      "type": "boolean",
      "description": "The product has a live paid placement somewhere on the site."
    },
    "sponsorship_label": {
      "type": [
        "string",
        "null"
      ],
      "enum": [
        "Sponsored",
        null
      ],
      "description": "The label the site shows on a paid placement: \"Sponsored\" when sponsored is true, else null."
    },
    "match": {
      "type": [
        "string",
        "null"
      ],
      "enum": [
        "product_name",
        "vendor_name",
        "previous_name",
        "parent_vendor_name",
        "domain",
        "tagline",
        null
      ],
      "description": "Present on search results only: the field q matched, the best-ranked one when several do (a slug match counts as product_name). Null when there is no q."
    },
    "placement": {
      "type": "string",
      "enum": [
        "sponsored",
        "organic"
      ],
      "description": "Present on search results only: \"sponsored\" for the at most two paid placements whose name matches q, shown first and labelled Sponsored; every other result is \"organic\" and ranked without regard to payment."
    },
    "via_vendor": {
      "type": [
        "object",
        "null"
      ],
      "description": "Present on a vendor's products only: the child company that makes this product, or null when the vendor makes it itself.",
      "properties": {
        "slug": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "compare_url": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri",
      "description": "Present on alternatives only: the side-by-side comparison page for this product and the one it is an alternative to, or null when that pair is not comparable."
    }
  },
  "$defs": {
    "Rating": {
      "type": [
        "object",
        "null"
      ],
      "title": "Rating",
      "properties": {
        "average": {
          "type": "number",
          "description": "Mean rating, one decimal place, out of 5."
        },
        "count": {
          "type": "integer",
          "description": "Published reviews counted in the average."
        }
      }
    },
    "StartingPrice": {
      "type": [
        "object",
        "null"
      ],
      "title": "StartingPrice",
      "description": "The vendor-published entry price. Null when the vendor publishes none.",
      "properties": {
        "minor": {
          "type": "integer",
          "description": "Integer minor units (pence, cents), never a decimal."
        },
        "currency": {
          "type": "string",
          "enum": [
            "GBP",
            "USD",
            "EUR",
            "AUD",
            "CAD"
          ]
        },
        "unit": {
          "type": "string",
          "enum": [
            "endpoint",
            "workstation",
            "server",
            "user",
            "technician",
            "site",
            "mailbox",
            "tb",
            "tenant",
            "network_device",
            "connection",
            "client",
            "flat"
          ],
          "description": "What the price is charged per: endpoint, workstation, server, user, technician, site, mailbox, tb, tenant, network_device, connection (a concurrent remote session), client (a managed client organisation), or flat (one price for the account, read as \"per month\")."
        },
        "period": {
          "type": "string",
          "enum": [
            "month",
            "year"
          ],
          "description": "How often the unit price recurs."
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/mspsoftware-net-software-summary"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

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

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.