Properties
| Name | Type | Description |
|---|---|---|
| assetIDs | arraynull | Asset IDs the research report covers. Use it to find every report written about an asset. |
| assets | arraynull | Assets the research report covers, including id, name, symbol and slug. Only published assets resolve, so a report may carry an assetID with no matching entry here. |
| authorNames | arraynull | Names of the research report's authors. Use it to filter by author. |
| authors | arraynull | Authors of the research report, including id, name, image and linkedinUrl. |
| category | stringnull | The editorial category of the research report (e.g. Standard Reports, Deep Dives, Quarterly Reports, Recaps). Null for content that carries no category. |
| content | stringnull | The full body of the research report as markdown. Omit it from selections to page through reports without transferring the bodies. |
| createdAt | stringnull | When the research report was first created in the content system. |
| hook | stringnull | A one-line hook introducing the research report. |
| previewImageURL | stringnull | URL of the preview image for the research report. |
| publishDate | stringnull | When the research report was published. Reports embargoed for a future date are not returned until that date passes. |
| readingTimeInMinutes | numbernull | The estimated time to read the research report, in minutes. |
| reportID | stringnull | The unique identifier of the research report. |
| reportType | stringnull | The kind of content the row is (e.g. research, enterprise_research, hub, summary, blog, podcast, strapi_article). |
| slug | stringnull | The URL slug of the research report. Slugs are not unique across reports, so use reportID to address a single one. |
| subscriptionTier | stringnull | The subscription tier the research report is published under (basic, pro, or enterprise). |
| summary | stringnull | A short summary of the research report. |
| tagNames | arraynull | Display names of the tags on the research report. Use it to filter by tag. |
| tags | arraynull | Tags on the research report, including id and name. |
| title | stringnull | The title of the research report. |
| updatedAt | stringnull | When the research report was last edited in the content system. Filter on it to pull only what changed since your last sync. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/blockworks/main/json-schema/blockworks-research-reports-row-schema.json",
"title": "ResearchReportsRow",
"x-generated": "2026-09-29",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/data-api-openapi.json#/components/schemas/ResearchReportsRow",
"properties": {
"assetIDs": {
"description": "Asset IDs the research report covers. Use it to find every report written about an asset.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"assets": {
"description": "Assets the research report covers, including id, name, symbol and slug. Only published assets resolve, so a report may carry an assetID with no matching entry here.",
"items": {
"type": "object"
},
"type": [
"array",
"null"
]
},
"authorNames": {
"description": "Names of the research report's authors. Use it to filter by author.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"authors": {
"description": "Authors of the research report, including id, name, image and linkedinUrl.",
"items": {
"type": "object"
},
"type": [
"array",
"null"
]
},
"category": {
"description": "The editorial category of the research report (e.g. Standard Reports, Deep Dives, Quarterly Reports, Recaps). Null for content that carries no category.",
"type": [
"string",
"null"
]
},
"content": {
"description": "The full body of the research report as markdown. Omit it from selections to page through reports without transferring the bodies.",
"type": [
"string",
"null"
]
},
"createdAt": {
"description": "When the research report was first created in the content system.",
"format": "date-time",
"type": [
"string",
"null"
]
},
"hook": {
"description": "A one-line hook introducing the research report.",
"type": [
"string",
"null"
]
},
"previewImageURL": {
"description": "URL of the preview image for the research report.",
"type": [
"string",
"null"
]
},
"publishDate": {
"description": "When the research report was published. Reports embargoed for a future date are not returned until that date passes.",
"format": "date-time",
"type": [
"string",
"null"
]
},
"readingTimeInMinutes": {
"description": "The estimated time to read the research report, in minutes.",
"type": [
"number",
"null"
]
},
"reportID": {
"description": "The unique identifier of the research report.",
"type": [
"string",
"null"
]
},
"reportType": {
"description": "The kind of content the row is (e.g. research, enterprise_research, hub, summary, blog, podcast, strapi_article).",
"type": [
"string",
"null"
]
},
"slug": {
"description": "The URL slug of the research report. Slugs are not unique across reports, so use reportID to address a single one.",
"type": [
"string",
"null"
]
},
"subscriptionTier": {
"description": "The subscription tier the research report is published under (basic, pro, or enterprise).",
"type": [
"string",
"null"
]
},
"summary": {
"description": "A short summary of the research report.",
"type": [
"string",
"null"
]
},
"tagNames": {
"description": "Display names of the tags on the research report. Use it to filter by tag.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"tags": {
"description": "Tags on the research report, including id and name.",
"items": {
"type": "object"
},
"type": [
"array",
"null"
]
},
"title": {
"description": "The title of the research report.",
"type": [
"string",
"null"
]
},
"updatedAt": {
"description": "When the research report was last edited in the content system. Filter on it to pull only what changed since your last sync.",
"format": "date-time",
"type": [
"string",
"null"
]
}
},
"type": "object"
}
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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/blockworks-research-reports-row"
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.