Jokeapi Joke Submission Structure
Submission payload for `POST /submit`.
Type: object
Properties: 8
Required: 5
JokesHumorEntertainmentOpen SourceREST APIGames And ComicsPublic APIs
JokeSubmission is a JSON Structure definition published by JokeAPI, describing 8 properties, of which 5 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
{
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/jokeapi/refs/heads/main/json-structure/jokeapi-joke-submission-structure.json",
"name": "JokeSubmission",
"description": "Submission payload for `POST /submit`.",
"type": "object",
"properties": {
"formatVersion": {
"type": "int32",
"description": "Submission format version. Currently `3`.",
"example": 3
},
"category": {
"type": "string",
"description": "Target category for the joke.",
"enum": [
"Misc",
"Programming",
"Dark",
"Pun",
"Spooky",
"Christmas"
],
"example": "Programming"
},
"type": {
"type": "string",
"description": "Joke shape.",
"enum": [
"single",
"twopart"
],
"example": "twopart"
},
"joke": {
"type": "string",
"description": "Joke text (required when `type` is `single`).",
"example": "Why do programmers prefer dark mode? Because light attracts bugs."
},
"setup": {
"type": "string",
"description": "Setup line (required when `type` is `twopart`).",
"example": "Why don't programmers like nature?"
},
"delivery": {
"type": "string",
"description": "Punchline (required when `type` is `twopart`).",
"example": "It has too many bugs."
},
"flags": {
"type": "object",
"description": "Content classification flags carried on every joke.",
"properties": {
"nsfw": {
"type": "boolean",
"description": "Joke contains adult or explicit sexual content.",
"example": false
},
"religious": {
"type": "boolean",
"description": "Joke references or mocks religion.",
"example": false
},
"political": {
"type": "boolean",
"description": "Joke references politics or political figures.",
"example": false
},
"racist": {
"type": "boolean",
"description": "Joke contains racist content.",
"example": false
},
"sexist": {
"type": "boolean",
"description": "Joke contains sexist content.",
"example": false
},
"explicit": {
"type": "boolean",
"description": "Joke contains explicit language unrelated to NSFW.",
"example": false
}
},
"required": [
"nsfw",
"religious",
"political",
"racist",
"sexist",
"explicit"
]
},
"lang": {
"type": "string",
"description": "ISO 639-1 language code of the joke.",
"example": "en"
}
},
"required": [
"formatVersion",
"category",
"type",
"flags",
"lang"
]
}