openapi: 3.0.3 info: title: Numbers Date 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: Date paths: /{month}/{day}/date: get: operationId: getDateFact summary: Get a date fact for a specific month and day description: 'Returns an interesting historical fact about the specified date (month/day). The number in the JSON response is the 1-indexed day of the leap year (e.g., 61 would be March 1st). ' parameters: - name: month in: path required: true description: Month number (1-12) schema: type: integer minimum: 1 maximum: 12 example: 2 - name: day in: path required: true description: Day of month schema: type: integer minimum: 1 maximum: 31 example: 29 - $ref: '#/components/parameters/json' - $ref: '#/components/parameters/fragment' - $ref: '#/components/parameters/notfound' - $ref: '#/components/parameters/default' - $ref: '#/components/parameters/callback' responses: '200': description: A date fact about the specified date (plain text or JSON) content: text/plain: schema: type: string example: February 29 is the day in 1504 that Christopher Columbus uses his knowledge of a lunar eclipse to convince Native Americans to provide him with supplies. application/json: schema: $ref: '#/components/schemas/DateFact' tags: - Date 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 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 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: DateFact: type: object description: A fact about a calendar date with associated metadata required: - text - found - number - type properties: text: type: string description: The fact text itself example: February 29 is the day in 1504 that Christopher Columbus uses his knowledge of a lunar eclipse to convince Native Americans to provide him with supplies. found: type: boolean description: Whether a fact was found for the requested date example: true number: type: number description: 'The 1-indexed day of a leap year (e.g., 61 would be March 1st) ' example: 60 type: type: string description: The category of the returned fact example: date year: type: string description: A year associated with some date facts example: '1504'