{
  "openapi": "3.0.1",
  "info": {
    "title": "Research Papers API - OpenAlex Works, Authors, Citations",
    "description": "Search 300M+ research papers, authors, journals, institutions, topics, publishers and funders in the OpenAlex scholarly index. Filter by year, type, open access, citations, author, institution or country, get citing works, look up DOIs, ORCIDs and RORs. Keyless or your own key.",
    "version": "0.1",
    "x-build-id": "lcJrDSRibyaI5ELUt"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~research-papers-authors-citations-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-research-papers-authors-citations-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/nabeelbaghoor~research-papers-authors-citations-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-research-papers-authors-citations-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/nabeelbaghoor~research-papers-authors-citations-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-research-papers-authors-citations-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "mode": {
            "title": "What to get",
            "enum": [
              "works",
              "citingWorks",
              "authors",
              "sources",
              "institutions",
              "topics",
              "publishers",
              "funders",
              "byId"
            ],
            "type": "string",
            "description": "Works search returns research papers, preprints, books, datasets and dissertations by keyword and filters. Citing works returns the papers that cite the work IDs you give. Authors, sources (journals, repositories, conferences), institutions, topics, publishers and funders search those OpenAlex profiles, which also give the IDs the works filters take. Lookup by ID or DOI fetches single records by OpenAlex ID, DOI, PMID, ORCID, ROR or ISSN, which are free on OpenAlex.",
            "default": "works"
          },
          "searchQueries": {
            "title": "Search",
            "type": "array",
            "description": "Works, authors, sources, institutions, topics, publishers and funders search. One search per line; each is its own lookup. Supports AND, OR, NOT and \"quoted phrases\", such as climate change AND kelp, Jennifer Doudna, Nature or MIT.",
            "items": {
              "type": "string"
            }
          },
          "searchScope": {
            "title": "Search in (works)",
            "enum": [
              "all",
              "title",
              "titleAbstract",
              "exact"
            ],
            "type": "string",
            "description": "Works search only. Which part of each work the search reads.",
            "default": "all"
          },
          "sort": {
            "title": "Sort",
            "enum": [
              "default",
              "relevance",
              "mostCited",
              "newest",
              "oldest",
              "mostWorks",
              "name"
            ],
            "type": "string",
            "description": "Order of the results. Newest and oldest apply to works; most works and name apply to profiles.",
            "default": "default"
          },
          "fromPublicationDate": {
            "title": "Published from",
            "type": "string",
            "description": "Works and citing works. Earliest publication date, YYYY-MM-DD."
          },
          "toPublicationDate": {
            "title": "Published to",
            "type": "string",
            "description": "Works and citing works. Latest publication date, YYYY-MM-DD."
          },
          "workTypes": {
            "title": "Work types",
            "type": "array",
            "description": "Works and citing works. Keep only these types, such as article, review, preprint or dataset.",
            "items": {
              "type": "string",
              "enum": [
                "article",
                "review",
                "preprint",
                "book",
                "book-chapter",
                "dataset",
                "dissertation",
                "conference-paper",
                "conference-abstract",
                "report",
                "editorial",
                "letter",
                "erratum",
                "retraction",
                "peer-review",
                "book-review",
                "reference-entry",
                "standard",
                "software",
                "data-paper",
                "software-paper",
                "supplementary-materials",
                "libguides",
                "paratext",
                "other"
              ],
              "enumTitles": [
                "Article",
                "Review",
                "Preprint",
                "Book",
                "Book chapter",
                "Dataset",
                "Dissertation",
                "Conference paper",
                "Conference abstract",
                "Report",
                "Editorial",
                "Letter",
                "Erratum",
                "Retraction",
                "Peer review",
                "Book review",
                "Reference entry",
                "Standard",
                "Software",
                "Data paper",
                "Software paper",
                "Supplementary materials",
                "Library guide",
                "Paratext",
                "Other"
              ]
            }
          },
          "openAccess": {
            "title": "Open access",
            "enum": [
              "any",
              "openOnly",
              "closedOnly"
            ],
            "type": "string",
            "description": "Works, citing works and sources.",
            "default": "any"
          },
          "oaStatuses": {
            "title": "Open access status",
            "type": "array",
            "description": "Works and citing works. Keep only these OpenAlex open access statuses.",
            "items": {
              "type": "string",
              "enum": [
                "diamond",
                "gold",
                "green",
                "hybrid",
                "bronze",
                "closed"
              ],
              "enumTitles": [
                "Diamond",
                "Gold",
                "Green",
                "Hybrid",
                "Bronze",
                "Closed"
              ]
            }
          },
          "language": {
            "title": "Language",
            "type": "string",
            "description": "Works and citing works. Two letter ISO 639-1 code, such as en, de or es."
          },
          "minCitations": {
            "title": "Minimum citations",
            "minimum": 0,
            "type": "integer",
            "description": "Works, citing works and every profile search. Keep only records cited at least this many times."
          },
          "excludeRetracted": {
            "title": "Leave out retracted works",
            "type": "boolean",
            "description": "Works and citing works.",
            "default": false
          },
          "corpus": {
            "title": "Corpus (works)",
            "enum": [
              "core",
              "all",
              "expansion"
            ],
            "type": "string",
            "description": "Works and citing works. OpenAlex keeps a curated core and a larger expansion corpus.",
            "default": "core"
          },
          "citedWorkIds": {
            "title": "Cited work IDs",
            "type": "array",
            "description": "Citing works only. OpenAlex work IDs (from a works search or lookup); the run returns the works that cite any of them. Up to 100.",
            "items": {
              "type": "string"
            }
          },
          "authorIds": {
            "title": "Author IDs",
            "type": "array",
            "description": "Works and citing works: keep works by these authors. OpenAlex author IDs from the Authors search, up to 100.",
            "items": {
              "type": "string"
            }
          },
          "institutionIds": {
            "title": "Institution IDs",
            "type": "array",
            "description": "Works and citing works: works with an author at these institutions. Authors: authors last known at them. OpenAlex institution IDs from the Institutions search, such as I63966007 for MIT.",
            "items": {
              "type": "string"
            }
          },
          "sourceIds": {
            "title": "Source IDs",
            "type": "array",
            "description": "Works and citing works: works published in these journals or repositories. OpenAlex source IDs, such as S137773608 for Nature.",
            "items": {
              "type": "string"
            }
          },
          "topicIds": {
            "title": "Topic IDs",
            "type": "array",
            "description": "Works and citing works: works on these topics. OpenAlex topic IDs from the Topics search.",
            "items": {
              "type": "string"
            }
          },
          "funderIds": {
            "title": "Funder IDs",
            "type": "array",
            "description": "Works and citing works: works funded by these funders, such as F4320332161 for the NIH.",
            "items": {
              "type": "string"
            }
          },
          "publisherIds": {
            "title": "Publisher IDs",
            "type": "array",
            "description": "Sources only: journals and other sources hosted by these publishers, such as P4310319965 for Springer Nature.",
            "items": {
              "type": "string"
            }
          },
          "countryCodes": {
            "title": "Country codes",
            "type": "array",
            "description": "Works (author institutions), authors (last known institution), sources, institutions, publishers and funders. Two letter ISO 3166 codes such as US, GB or DE.",
            "items": {
              "type": "string"
            }
          },
          "filter": {
            "title": "Extra filter (OpenAlex syntax)",
            "type": "string",
            "description": "Any list mode. Raw OpenAlex filter added to the ones above, such as publication_year:2020-2024,has_fulltext:true or summary_stats.h_index:>40. Use | for OR, ! for NOT, > and < on numbers."
          },
          "identifiers": {
            "title": "Identifiers",
            "type": "array",
            "description": "Lookup by ID only. One per line: OpenAlex IDs (W, A, S, I, T, P, F), DOIs, PMIDs as pmid:29456894, ORCIDs, ROR URLs or ISSNs. Up to 500 per run.",
            "items": {
              "type": "string"
            }
          },
          "entityType": {
            "title": "Record type",
            "enum": [
              "auto",
              "works",
              "authors",
              "sources",
              "institutions",
              "topics",
              "publishers",
              "funders"
            ],
            "type": "string",
            "description": "Lookup by ID only. Auto reads the type from the identifier; set Funders to look a ROR up as a funder rather than an institution.",
            "default": "auto"
          },
          "includeAbstract": {
            "title": "Include abstract",
            "type": "boolean",
            "description": "Works: rebuild the plain text abstract from the OpenAlex abstract index, where the publisher made one available.",
            "default": true
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Stops after this many rows. Each page of up to 100 rows is one OpenAlex API call. Without a key a lookup reads at most 10,000 results.",
            "default": 100
          },
          "requestsPerMinute": {
            "title": "Requests per minute",
            "minimum": 1,
            "maximum": 600,
            "type": "integer",
            "description": "Pacing ceiling. OpenAlex allows 10 requests a second without a key and 30 with a free key.",
            "default": 300
          },
          "apiKey": {
            "title": "API key (OpenAlex, optional)",
            "type": "string",
            "description": "Optional. Your own free OpenAlex API key, from openalex.org, Settings, API key. Without one the run uses the small keyless budget ($0.10 a day shared per IP address) and basic paging up to 10,000 results; with one you get your own $1 a day and cursor paging. Sent only to api.openalex.org in the Authorization header and never logged."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}