openapi: 3.0.3 info: title: Numbers Date Numbers API API description: 'Free REST API providing interesting mathematical facts, trivia, dates, and year facts about numbers for educational and fun applications. Returns short, readable facts about any number or date across four categories: trivia, mathematical properties, notable years, and day-of-year historical events. No authentication or API key required. ' version: 1.0.0 contact: url: http://numbersapi.com license: name: MIT servers: - url: http://numbersapi.com description: Numbers API production server tags: - name: Numbers API paths: /{number}: get: operationId: getNumberFact summary: Get a trivia fact about a number description: 'Returns an interesting trivia fact about the specified number. Defaults to the trivia type if no type is specified. ' parameters: - $ref: '#/components/parameters/number' - $ref: '#/components/parameters/json' - $ref: '#/components/parameters/fragment' - $ref: '#/components/parameters/notfound' - $ref: '#/components/parameters/default' - $ref: '#/components/parameters/min' - $ref: '#/components/parameters/max' - $ref: '#/components/parameters/callback' responses: '200': description: A fact about the requested number (plain text or JSON) content: text/plain: schema: type: string example: 42 is the result given by Google and Bing for the query "the answer to life the universe and everything". application/json: schema: $ref: '#/components/schemas/NumberFact' tags: - Numbers API components: parameters: callback: name: callback in: query required: false description: '(Deprecated) JSONP callback function name. The response will be wrapped in a call to this function. ' schema: type: string deprecated: true min: name: min in: query required: false description: 'Minimum value for random number generation. Used with `random` number to constrain the range. ' schema: type: integer max: name: max in: query required: false description: 'Maximum value for random number generation. Used with `random` number to constrain the range. ' schema: type: integer notfound: name: notfound in: query required: false description: 'What to do if the number is not found. Options: `default` (return a pre-written missing message), `floor` (round down to the largest number with a fact), `ceil` (round up to the smallest number with a fact). ' schema: type: string enum: - default - floor - ceil default: default fragment: name: fragment in: query required: false description: 'Return the fact as a sentence fragment that can be easily included as part of a larger sentence. The first word is lowercase and ending punctuation is omitted. ' schema: type: boolean number: name: number in: path required: true description: 'An integer, the keyword `random`, a day of year in the form `month/day` (for date type), or a range like `1..10` or comma-separated values like `1,2,3` for batch requests. ' schema: type: string example: '42' json: name: json in: query required: false description: 'Return the fact and associated metadata as a JSON object instead of plain text. Can also be triggered by setting the Accept or Content-Type header to application/json. ' schema: type: boolean default: name: default in: query required: false description: 'A custom message to return if no fact is found for the requested number. Used in conjunction with `notfound=default`. ' schema: type: string schemas: NumberFact: type: object description: A fact about a number with associated metadata required: - text - found - number - type properties: text: type: string description: The fact text itself example: 42 is the result given by Google and Bing for the query "the answer to life the universe and everything". found: type: boolean description: Whether a fact was found for the requested number example: true number: type: number description: The number that the fact pertains to example: 42 type: type: string description: The category of the returned fact enum: - trivia - math - year - date example: trivia