Chuck Norris once ordered a Big Mac at Burger King, and got one.

Personally, I love Chuck Norris jokes, can’t get enough of them. But there isn’t a good repository of these jokes on the web – yet. Recently, I started an online Chuck Norris jokes database at for this purpose. As as a bonus, the database also allows you to star in the jokes yourself by changing the name of the main character. Right now, I’m working on adding as much jokes as I can and on building some apps for sharing the jokes.

Plans for the future

I intend to support the Chuck Norris database for a while and want to keep on adding features. A first idea for the future is to add categories to the database. Some of the jokes are a bit offensive and I can image people who want to keep these jokes from their home page. Others are geeky and again, some of you wouldn’t like this – while others would especially want them.

A second idea is to add language support. Now, all jokes are in English, but wouldn’t it be great to have all of them in your own language? It’s a great idea, but I also think it’s a lot of work. Something on the long term probably.

Got any other ideas for future features? Or want to help? Post a comment below.


67 Responses to About

  1. Hi,

    I have created a mobile phone client for Nokia N9 (MeeGo) phone and it is pending to Ovi Store. The price point is free.

    It uses the “random” api.

    Juhapekka Piiroinen

    • admin says:

      Nice! When it gets accepted, be sure to post the link here.

      • Hello admin,
        My name is Joey Richardson. I am making an apple application that will tell jokes and riddles to the user. I want to have more categories of jokes to display for the user. I do plan on selling a version of my app on the app store and I was wondering if I could user your database of chuck norris jokes? Please let me know asap. Thank you!

        – Joey Richardson

        • admin says:

          Hi Joey,

          Everybody is free to use the API, it’s not a problem for me that you plan to sell you product. However:
          1. I provide this service for fun. I do not guarantee any up-time of the service. It’s best-effort and it will go down from time to time. I also do not guarantee anything about the contents (e.g., spelling errors). Actually, I do not guarantee anything about this service :)
          2. I provide this service for fun. I do not make money off it and while I do not care that you do, I’m not sure about the rightful owner of the jokes.

          Not trying to scare you, just being clear. If this is still ok for you, go ahead. I’m still interested in seeing you final product!

  2. MDKWales says:

    The ability to submit chuck norris jokes would be great – even if you have to approve them before they become available

  3. Mattias Persson says:

    API looks nice! Will try and use it too.

    There exist a “Chuck Norris Facts Generator” at google+, maybe you’ll get more there?


  4. Alex says:

    I created a TrayIcon which uses the random function from your API.
    It is free and deployed at Sourceforge ->
    Your API and the database are great!
    Thank a lot.

  5. Hi, I just spotted an error for the joke with id 358. Quotes are returned as question marks

  6. mayank gupta says:

    Hi, I have developed a zero click plugin for the search engine “duckduckgo” powered by your API.
    So whenever you search for chuck norris fact(s)/joke(s) it will pop up a random joke before the search results. Every joke has an attribution link to this site. It’s going to be live soon.

  7. Can I use your API for developing a windows phone application? I don’t intend to make it a free application.

  8. Alex says:


    I created a client for iOS which is waiting for review in the App Store. Of course its free ;)

    It uses the “random” api.


    • admin says:

      Nice! Let me know if it hits the App Store :)

      • Alex says:

        “We found that your app contains features that may infringe on rights owned by Chuck Norris, which is not in compliance with the App Store Review Guidelines.”


        as long as chuck does not tell them that i can use his name, this won’t happen :(

  9. TheAssassin says:

    I’ve started PyICNDb, a Python implementation of your database. So far, it’s got initial features like downloading jokes by ID or with its own random ID generator (that makes it more failsafe, because at the moment it tries until it can fetch a joke). It shall help future Python developers to use the database. All features described on the website are already useable and available as option. There is a class for Joke and Category, you can also request all categories (feature lacking for Joke, working on it).

    Read the defails on LaunchPad: PyICNDb in Launchpad
    Clone the code: Code : PyICNDb
    Browse the code: ~theassassin/pyicndb/trunk

    I’d like you to review it (since Python is easy to read ;) ) and as soon as a documentation is available, you might add it to the list of client libraries.

    P.S.: I’m the only developer at the moment, if you’ve got API changes please contact me with the e-mail adress given.

    • admin says:


      Great initiative, I like it! I don’t plan on changing the API (and if I do, it should be backwards compatible), so you’re safe for now :)

      Since you asked me to review the code, here are some comments:
      * The init method of the Joke class could be simpler with kwargs, no? Similar code, but easier to call, I think.
      * You could also cache the joke count so you only have to fetch it once.
      * And finally, it is also a good idea to hardcode some jokes (say, three) in case the service is down. It’s best effort for now since I don’t have any funding :)

      When you have the documentation ready, let me know and I’ll add you to the client libraries.

      • TheAssassin says:


        I’ll have a look at your changes in the next days, but now I’m busy at some (payed ;) ) code.
        I think caching a few single jokes is not such a good idea, I’d like to deliver an “” file with the whole database decoded to Python data types.
        And since querying a joke count is not that much traffic, people should cache it inside their programs (imagine a 24/7 IRC bot (I have one) that does not know how many jokes really exist after running a few weeks, so it can update it).

        You could also offer dumps of the database for mirroring, and apart from that you should change the MIME type of your API to “application/json”.

        About **kwargs: inside __init__ it makes no difference, and the call won’t become more difficult (**{dict} can be used instead of sending just a dict as keyword argument) –> you’re right, so please add it to the bug tracker (if you find time for it), I can’t at the moment. Makes it easier for me to remember, all my devices receive a mail then.

        If you like (what I wanted to do anyway, I’m on writing a test suite) I’ll post a link to an automatic testing for your web API, which will make it easier to resolve errors.

        (P.S.: You might add it as beta library, then I can find more testers for that, I cannot play all usage cases.)

  10. Jeff Hansen says:

    Hey there! I created a native Windows Phone app that uses the API, it is available for free (no ads at all) –

    I added a reference to this site in the About + the app description. Thanks for providing this service!

  11. Simpleapp Android says:

    Hello, I have made a free Android app using your offline json output from your api. Here is the link:

  12. admin says:

    Nice, thanks for mentioning it!

  13. BhEaN says:

    Hi admin,

    Very nice idea, and very good work with this service… thank you!
    Just a question: Do you think to allow “multi-language” support to your API?

    I think it will be a very good feature, and a big step to make grown!

    I have a small blog in spanish language, and I like to included this “quotes” in it… but my content is in spanish…

    I’m a spanish developer, so if I can help you with the jokes in spanish or with the code, just tell me!

    Regards, and thank you!!

    • admin says:


      Good idea. I thought about this myself actually. However, what stopped me so far is that someone has to fill the database with jokes in other languages. To do this effectively, this would require a front-end and maybe some language checking etc. To be honest, I’m only maintaining ICNDb, not extending it. But the code of the API is on GitHub, feel free!

  14. Rohit says:

    Thanks for putting this together. I wrote some stuff around your API – basically, it sends me a randomly generated CN joke via SMS, daily. I wake up every day to it :)

  15. Talat Shaikh says:

    Hi, created a GUI application specially for this API in C#. Are you taking joke requests? I am also planning on creating a library in Python for the same.

  16. Here’s another Python Library I finished writing it before I say the package TheAssassin wrote

  17. ocke says:

    Great site,

    I was using your API, but it’s http only, meaning from my https site I can’t make any requests :-(. Any change for SSL?


  18. Gamah says:

    Could the API be updated to not add an additional empty space when last name is passed with an empty string?

  19. Steven says:

    Used your API as part of my freeCodeCamp ( project submissions.

  20. Mahmoud Khater says:

    I’ve created Skill(App if you wish) for the Amazon Echo(Alexa) that you tell her your name then ask for jokes.

    Alexa, open Chuck Norris.
    My name is Foo.
    Tell me a joke.
    It will use api to retrieve a joke.

    I want to publish this skill as free item in Amazon Echo Skill store However, Amazon said this:

    “Please provide documentation demonstrating that you have the right to use the Chuck Norris IP. The documentation must be either a confirmation letter from the intellectual property rights holder or a copy of the applicable license.”

    So are you OK with publishing this skill, if so can you send me a confirmation letter?


    More Info about Alexa Skill kit:

    • admin says:

      Hi Mahmoud,

      I can’t give you the right to use the Chuck Norris IP because that’s not mine to give. The jokes in this database are not my property, their Chuck’s. I’m just a fan who collected the jokes, so I can’t give you that confirmation letter. Maybe mail the legend himself? :)



  21. Hello,

    I have developed Android app using your API. It is free of course and you can see and download the code here:

    I hope you like it.

    Ignacio Avila.

  22. Damian D says:

    Just to let ya know there’s a spelling mistake on one of your facts.

    “Little known medical fact: Chuck Norris invented the Caesarean section when he roundhouse-kicked his way out of his (monther’s) womb.”
    It should be the “mother’s womb.”

  23. TuxInvader says:


    Epic site! I’ve just created a StackStorm plugin for the API. Had to be done!


  24. Adrian Abreu says:

    Me and a friend have developed an Angular App using your api, it is hosted on github and you can test it here:

    It allows to filter based on the categories of the jokes.

    I hope you enjoy it.
    Best Regards

  25. Arvalon says:

    Please tell me how often you add new jokes?

  26. Saadullah Saeed says:

    Great API! I wrote a quick GoLang client which I am using to power a custom Alexa skill for the jokes.

  27. ferborva says:

    ‘Chuck Norris can make Angular circular.

  28. asda says:

    Hi, I think that rating system would be awesome.

  29. dave says:

    Have a look at


    It returns nearly 600 jokes

  30. Can I create an iOS app using this API?

  31. Centurion says:

    Hi, I don’t know if you maintain this database currently. I ‘ve submitted some material. I am using your database for a FreeCodeCamp exercise. Thank you for sharing this great API.

    Kind regards,


  32. Centurion says:

    You can look at my exercise at and then choose for “Server 2”, your API :)

  33. Chris says:


    I made an R package for the Chuck Norris API – norris.

    Documentation is here:

  34. reg says:

    Thank you for this! There’s a Mastodon bot at

  35. RedRose says:

    I have created an iOS Siri Shortcut and user your API in it:

    Nice web site.

  36. Serdar Mustafa says:

    Is this still working? I am trying to use it in JS/AJAX as part of my course and it returns: jquery.min.js:2 GET https://api.icndb.comundefined/?limitTo=%5Bundefined%5D net::ERR_NAME_NOT_RESOLVED.

  37. Anibal V. says:

    Have you considered going open-source with the code base so you can have other developers help out to add features?

  38. Iván López says:


    Thank you for this amazing service! Have you noticed that the API service is down?

    Trying to open leads to:

    Internal Server Error
    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator at to inform them of the time this error occurred, and the actions you performed just before this error.

    More information about this error may be available in the server error log.

  39. Eik says:

    Hi, is the API down only temporarily or for longer? I am getting an Internal Server Error.

  40. Philipp says:

    The API is down, I get a 500 whatever endpoint I use :( Could you please have a look into that?

Leave a Reply to Ivan Vlaevski Cancel reply

Your email address will not be published.

Set your Twitter account name in your settings to use the TwitterBar Section.