Joke API

The Joke API provides access to random jokes, ideal for adding humor to your applications or for testing purposes.

Endpoint

https://freeapihub.onrender.com/api/v1/jokes

Get Joke Data by ID

To retrieve joke data by ID, you can use the following endpoint:

https://freeapihub.onrender.com/api/v1/jokes/:jokeId

Replace : jokeId with the actual joke ID you want to fetch.

Installation

To use the Joke API, you’ll need to install Axios. You can do this using either npm or pnpm:

Note: Run these commands in your project directory to install Axios.

Using npm

npm install axios

Using pnpm

pnpm add axios

Example Usage

Here’s how to fetch random joke data using Axios:

import axios from "axios";
 
axios
  .get("https://freeapihub.onrender.com/api/v1/jokes")
  .then((response) => {
    console.log(response.data);
  })
  .catch((error) => {
    console.error("Error fetching data:", error);
  });

Here’s how to fetch joke data by jokeId using Axios:

import axios from "axios";
 
const jokeId = "1a2b3c4d"; // Replace with actual joke ID
 
axios
  .get(`https://freeapihub.onrender.com/api/v1/jokes/${jokeId}`)
  .then((response) => {
    console.log(response.data);
  })
  .catch((error) => {
    console.error("Error fetching joke data by ID:", error);
  });

Response Format

Below is a sample JSON response when requesting random joke data:

{
    "success": true,
    "data": [
        {
            "id": "fd481681-bc6b-4e2d-8ed9-c95a85c23f15",
            "author": "Jane Smith",
            "content": "Why don't scientists trust atoms? Because they make up everything!",
            "rate": 4,
            "likes": 250,
            "dislikes": 5,
            "category": "Science Humor"
        },
    ],
    "message": "All jokes retrieved successfully"
}

Error Handling

When using the Joke API, it’s essential to handle potential errors effectively. Below are common error codes you may encounter:

Error CodeDescription
404Resource not found
429Too many requests (rate limit)

Example Error Handling

To manage potential errors gracefully, you can use a try...catch block in your Axios requests. Here’s an example of how to implement error handling when fetching joke data:

import axios from "axios";
 
async function fetchJoke() {
  try {
    const response = await axios.get("https://freeapihub.onrender.com/api/v1/jokes");
    console.log(response.data);
  } catch (error) {
    console.error(
      "Error fetching joke: ",
      error.response?.data?.message || "An unexpected error occurred."
    );
  }
}
 
fetchJoke();

Usage Tips

  • Utilize the Joke API to add humor to your applications or for testing purposes.
  • Experiment with different API calls to see the variety of jokes returned, helping you understand the structure and attributes available.
  • For a deeper understanding of how to effectively use APIs, refer to the API Usage Guide.

Happy coding with the Joke API! 🎉