Programmatic access to Future Science data and submission endpoints
The Future Science Public API provides free, read-only access to all published initiatives and contributions on the platform. No authentication is required. All responses are returned in JSON format.
All API endpoints are available under the following base path:
https://future-science.org/api/v1/public/No authentication is required. The public API is open to everyone. All endpoints are read-only.
List endpoints support pagination through query parameters. The response includes a meta object with pagination details.
| Parameter | Type | Description |
|---|---|---|
cursor | number | Page number (starts at 1) |
limit | number | Number of items per page (1–100, default 10) |
search | string | Search term to filter results by text content |
sort | string | Sort field and order (e.g. title:asc, createdAt:desc) |
{
"meta": {
"pagination": {
"page": 1,
"pageSize": 10,
"total": 42,
"pageCount": 5
}
}
}/api/v1/public/initiativesReturns a paginated list of all published initiatives with their metadata.
| Parameter | Type | Description |
|---|---|---|
cursor | number | Page number (starts at 1) |
limit | number | Number of items per page (1–100, default 10) |
search | string | Search term to filter results by text content |
sort | string | Sort field and order (e.g. title:asc, createdAt:desc) |
{
"data": [
{
"id": 1,
"documentId": "abc123def456",
"title": "Archive of Academic Commentary",
"type": "Open Review Archive",
"presentation": "An open archive for...",
"logo": { "url": "/strapi/uploads/logo.png" },
"leadEditor": {
"firstName": "Jane",
"lastName": "Doe",
"institution": "University of Example"
},
"editorialBoard": [...],
"contributions": [...],
"supportingDocuments": [...],
"publishedAt": "2025-06-15T10:30:00.000Z"
}
],
"meta": {
"pagination": {
"page": 1, "pageSize": 10,
"total": 8, "pageCount": 1
}
}
}/api/v1/public/initiatives/:idReturns a single published initiative by its document ID, including its associated contributions.
| Parameter | Type | Description |
|---|---|---|
id | string | The document ID of the resource |
{
"data": {
"id": 1,
"documentId": "abc123def456",
"title": "Archive of Academic Commentary",
"type": "Open Review Archive",
"presentation": "An open archive for...",
"logo": { "url": "/strapi/uploads/logo.png" },
"leadEditor": {
"firstName": "Jane",
"lastName": "Doe",
"institution": "University of Example",
"links": [{ "url": "https://..." }]
},
"editorialBoard": [
{ "firstName": "John", "lastName": "Smith", ... }
],
"contributions": [
{ "id": 10, "title": "A Study on...", "type": "Article", ... }
],
"supportingDocuments": [...],
"institutionalPartners": [...],
"publishedAt": "2025-06-15T10:30:00.000Z"
}
}/api/v1/public/contributionsReturns a paginated list of all published contributions with their metadata.
| Parameter | Type | Description |
|---|---|---|
cursor | number | Page number (starts at 1) |
limit | number | Number of items per page (1–100, default 10) |
search | string | Search term to filter results by text content |
sort | string | Sort field and order (e.g. title:asc, createdAt:desc) |
{
"data": [
{
"id": 10,
"documentId": "xyz789abc012",
"title": "Toward Open Peer Review",
"subtitle": "A comparative analysis",
"type": "Article",
"abstract": "This paper explores...",
"language": "English",
"author": { "firstName": "Jane", "lastName": "Doe" },
"keywords": [{ "keyword": "open access" }],
"publishedAt": "2025-07-01T08:00:00.000Z"
}
],
"meta": {
"pagination": {
"page": 1, "pageSize": 10,
"total": 42, "pageCount": 5
}
}
}/api/v1/public/contributions/:idReturns a single published contribution by its document ID, including full details such as authors, keywords, abstract, and files.
| Parameter | Type | Description |
|---|---|---|
id | string | The document ID of the resource |
{
"data": {
"id": 10,
"documentId": "xyz789abc012",
"title": "Toward Open Peer Review",
"subtitle": "A comparative analysis",
"type": "Article",
"otherType": null,
"abstract": "This paper explores...",
"language": "English",
"author": {
"firstName": "Jane", "lastName": "Doe"
},
"keywords": [{ "keyword": "open access" }],
"submittedFiles": [
{ "name": "paper.pdf", "url": "/uploads/paper.pdf" }
],
"additionalMaterials": [...],
"selfArchive": true,
"isOriginal": true,
"publishedAt": "2025-07-01T08:00:00.000Z"
}
}| Field | Description |
|---|---|
documentId | Unique document identifier |
title | Title of the initiative |
type | Type of initiative |
presentation | Description text of the initiative |
logo | Logo image object |
leadEditor | Lead editor details (name, institution, links) |
editorialBoard | List of editorial board members |
supportingDocuments | Attached supporting documents |
publishedAt | Publication timestamp |
| Field | Description |
|---|---|
documentId | Unique document identifier |
title | Title of the contribution |
subtitle | Subtitle (optional) |
type | Type of contribution |
otherType | Custom type label when type is "Other" |
abstract | Abstract text |
language | Language of the contribution |
author | List of authors (name, institution, email, links) |
keywords | List of keywords |
submittedFiles | Submitted files and cover |
additionalMaterials | Additional material links |
selfArchive | Self-archiving details (DOI, license, copyright, reference) |
isOriginal | Whether this is an original submission |
publishedAt | Publication timestamp |
Initiatives on Future Science are categorized into the following types:
Contributions submitted to initiatives can be of the following types:
GET /api/v1/public/initiatives?cursor=1&limit=2{
"data": [
{
"id": 1,
"documentId": "abc123def456",
"title": "Archive of Academic Commentary",
"type": "Open Review Archive",
"presentation": "An open archive for...",
"logo": { "url": "/uploads/logo.png" },
"leadEditor": {
"firstName": "Jane",
"lastName": "Doe",
"institution": "University of Example"
},
"editorialBoard": [...],
"contributions": [...],
"publishedAt": "2025-06-15T10:30:00.000Z"
}
],
"meta": {
"pagination": {
"page": 1,
"pageSize": 2,
"total": 8,
"pageCount": 4
}
}
}When a resource is not found, the API returns a 404 status with an error message:
// 404 Not Found
{
"error": "Initiative not found"
}
// 404 Not Found
{
"error": "Contribution not found"
}The public API has no strict rate limits, but please use it responsibly. Excessive automated requests may be throttled.