StudyMate AI

StudyMate AI · Actions GPT

Gutendex API

Provides access to Project Gutenberg ebook metadata.

  • GET /booksRetrieve a list of books
  • GET /books/{id}Retrieve details of a specific book
Schéma original API
{
  "openapi": "3.0.0",
  "info": {
    "title": "Gutendex API",
    "description": "Provides access to Project Gutenberg ebook metadata.",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://gutendex.com",
      "description": "Main Gutendex API server"
    }
  ],
  "paths": {
    "/books": {
      "get": {
        "operationId": "listBooks",
        "summary": "Retrieve a list of books",
        "parameters": [
          {
            "name": "author_year_start",
            "in": "query",
            "required": false,
            "description": "Find books with at least one author alive after this year",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "author_year_end",
            "in": "query",
            "required": false,
            "description": "Find books with at least one author alive before this year",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A list of books",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "count": {
                      "type": "integer"
                    },
                    "next": {
                      "type": "string"
                    },
                    "previous": {
                      "type": "string"
                    },
                    "results": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "integer"
                          },
                          "title": {
                            "type": "string"
                          },
                          "subjects": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          },
                          "authors": {
                            "type": "array",
                            "items": {
                              "$ref": "#/components/schemas/Person"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/books/{id}": {
      "get": {
        "operationId": "getBook",
        "summary": "Retrieve details of a specific book",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "Project Gutenberg ID of the book",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Details of a specific book",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Book"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Book": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "title": {
            "type": "string"
          },
          "subjects": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "authors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Person"
            }
          },
          "translators": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Person"
            }
          },
          "bookshelves": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "languages": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "copyright": {
            "type": "boolean"
          },
          "media_type": {
            "type": "string"
          },
          "formats": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "download_count": {
            "type": "integer"
          }
        }
      },
      "Person": {
        "type": "object",
        "properties": {
          "birth_year": {
            "type": "integer"
          },
          "death_year": {
            "type": "integer"
          },
          "name": {
            "type": "string"
          }
        }
      }
    }
  }
}

Math.js API

RESTful API for evaluating mathematical expressions using Math.js.

  • GET /Evaluate a mathematical expression (GET request)
  • POST /Evaluate one or more expressions (POST request)
Schéma original API
{
  "openapi": "3.0.0",
  "info": {
    "title": "Math.js API",
    "description": "RESTful API for evaluating mathematical expressions using Math.js.",
    "version": "4.0.0"
  },
  "servers": [
    {
      "url": "https://api.mathjs.org/v4",
      "description": "Main Math.js API server"
    }
  ],
  "paths": {
    "/": {
      "get": {
        "operationId": "evaluateExpression",
        "summary": "Evaluate a mathematical expression (GET request)",
        "parameters": [
          {
            "name": "expr",
            "in": "query",
            "required": true,
            "description": "The expression to be evaluated",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "precision",
            "in": "query",
            "required": false,
            "description": "Number of significant digits in formatted output",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Result of the expression",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Error message",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "evaluateMultipleExpressions",
        "summary": "Evaluate one or more expressions (POST request)",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "expr": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "precision": {
                    "type": "integer"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Results of the expressions",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "result": {
                      "oneOf": [
                        {
                          "type": "string"
                        },
                        {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        }
                      ]
                    },
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Error message",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

arXiv API

Provides access to e-prints in fields like computer science, mathematics, physics, quantitative biology, and more.

  • GET /querySearch for articles in arXiv
Schéma original API
{
  "openapi": "3.0.0",
  "info": {
    "title": "arXiv API",
    "description": "Provides access to e-prints in fields like computer science, mathematics, physics, quantitative biology, and more.",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://export.arxiv.org/api",
      "description": "Main arXiv API server"
    }
  ],
  "paths": {
    "/query": {
      "get": {
        "operationId": "searchArticles",
        "summary": "Search for articles in arXiv",
        "parameters": [
          {
            "name": "search_query",
            "in": "query",
            "required": false,
            "description": "The search query string, combining terms like title (ti), author (au), abstract (abs), etc.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id_list",
            "in": "query",
            "required": false,
            "description": "A list of arXiv record IDs",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "start",
            "in": "query",
            "required": false,
            "description": "The offset of the first result returned (pagination)",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "max_results",
            "in": "query",
            "required": false,
            "description": "The maximum number of results to return",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "sort_by",
            "in": "query",
            "required": false,
            "description": "Sorting criterion (submitted, updated, relevance)",
            "schema": {
              "type": "string",
              "enum": [
                "submitted",
                "updated",
                "relevance"
              ]
            }
          },
          {
            "name": "ascending",
            "in": "query",
            "required": false,
            "description": "Sort order (ascending or descending)",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Atom feed containing the search results",
            "content": {
              "application/xml": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "feed": {
                      "type": "object",
                      "properties": {
                        "title": {
                          "type": "string",
                          "description": "Title of the feed, containing the canonicalized version of the query"
                        },
                        "id": {
                          "type": "string",
                          "description": "Unique ID for the query"
                        },
                        "link": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "description": "URL to retrieve the feed again"
                            },
                            "rel": {
                              "type": "string",
                              "description": "Relation type of the link (e.g., 'self')"
                            },
                            "type": {
                              "type": "string",
                              "description": "MIME type of the linked content"
                            }
                          }
                        },
                        "updated": {
                          "type": "string",
                          "description": "Last time the contents of the feed were updated"
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

Chronicling America API

Provides access to historic newspaper pages and information about American newspapers published between 1690-present.

  • GET /search/titles/results/Search the newspaper directory
  • GET /search/pages/results/Search digitized newspaper pages
  • GET /suggest/titles/Auto-suggest API for newspaper titles
Schéma original API
{
  "openapi": "3.0.0",
  "info": {
    "title": "Chronicling America API",
    "description": "Provides access to historic newspaper pages and information about American newspapers published between 1690-present.",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://chroniclingamerica.loc.gov",
      "description": "Main Chronicling America API server"
    }
  ],
  "paths": {
    "/search/titles/results/": {
      "get": {
        "operationId": "searchTitles",
        "summary": "Search the newspaper directory",
        "parameters": [
          {
            "name": "terms",
            "in": "query",
            "required": true,
            "description": "The search query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "format",
            "in": "query",
            "required": false,
            "description": "Response format ('html', 'json', 'atom')",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Page number for paging results",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Search results in specified format",
            "content": {
              "application/json": {
                "schema": null
              }
            }
          }
        }
      }
    },
    "/search/pages/results/": {
      "get": {
        "operationId": "searchPages",
        "summary": "Search digitized newspaper pages",
        "parameters": [
          {
            "name": "andtext",
            "in": "query",
            "required": true,
            "description": "The search query for page contents",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "format",
            "in": "query",
            "required": false,
            "description": "Response format ('html', 'json', 'atom')",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Page number for paging results",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Search results in specified format",
            "content": {
              "application/json": {
                "schema": null
              }
            }
          }
        }
      }
    },
    "/suggest/titles/": {
      "get": {
        "operationId": "suggestTitles",
        "summary": "Auto-suggest API for newspaper titles",
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": true,
            "description": "Query for title suggestions",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Suggestion results",
            "content": {
              "application/x-suggestions+json": {
                "schema": null
              }
            }
          }
        }
      }
    }
  }
}

Dictionary API

Provides definitions, phonetics, origins, and more for words.

  • GET /entries/{language_code}/{word}Retrieve definitions and details of a word
Schéma original API
{
  "openapi": "3.0.0",
  "info": {
    "title": "Dictionary API",
    "description": "Provides definitions, phonetics, origins, and more for words.",
    "version": 2
  },
  "servers": [
    {
      "url": "https://api.dictionaryapi.dev/api/v2",
      "description": "Main Dictionary API server"
    }
  ],
  "paths": {
    "/entries/{language_code}/{word}": {
      "get": {
        "operationId": "getWordDefinition",
        "summary": "Retrieve definitions and details of a word",
        "parameters": [
          {
            "name": "language_code",
            "in": "path",
            "required": true,
            "description": "Language code (e.g., 'en' for English)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "word",
            "in": "path",
            "required": true,
            "description": "The word to get definitions for",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Word details including definitions, phonetics, and origin",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "word": {
                        "type": "string"
                      },
                      "phonetic": {
                        "type": "string"
                      },
                      "phonetics": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "text": {
                              "type": "string"
                            },
                            "audio": {
                              "type": "string"
                            }
                          }
                        }
                      },
                      "origin": {
                        "type": "string"
                      },
                      "meanings": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "partOfSpeech": {
                              "type": "string"
                            },
                            "definitions": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "definition": {
                                    "type": "string"
                                  },
                                  "example": {
                                    "type": "string"
                                  },
                                  "synonyms": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    }
                                  },
                                  "antonyms": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Word not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

PLOS Search API

Programmatic access to the PLOS corpus of research articles using Solr.

  • GET /Search for articles in PLOS
Schéma original API
{
  "openapi": "3.0.0",
  "info": {
    "title": "PLOS Search API",
    "description": "Programmatic access to the PLOS corpus of research articles using Solr.",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://api.plos.org/search",
      "description": "Main PLOS Search API server"
    }
  ],
  "paths": {
    "/": {
      "get": {
        "operationId": "searchArticles",
        "summary": "Search for articles in PLOS",
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": true,
            "description": "The Solr query string for searching articles.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "start",
            "in": "query",
            "required": false,
            "description": "The offset of the first result returned (pagination).",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "rows",
            "in": "query",
            "required": false,
            "description": "Number of results to return (maximum 100).",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Sorting parameter in the format 'field direction'.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Search results in Solr format",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "response": {
                      "type": "object",
                      "properties": {
                        "numFound": {
                          "type": "integer"
                        },
                        "start": {
                          "type": "integer"
                        },
                        "docs": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "title": {
                                "type": "string"
                              },
                              "author": {
                                "type": "string"
                              },
                              "abstract": {
                                "type": "string"
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}