Announcing the PyImageSearch Web API


Today I am super excited to officially announce the PyImageSearch web API.

I’ve been planning on building this API for awhile now, and finally last weeks blog post on building a face detection Web API was just the kick in the ass I needed to finish up the project and push it online.

The PyImageSearch Web API is meant to be a teaching tool used further facilitate high quality computer vision tutorials on the PyImageSearch blog.

Right now the only endpoint is for face detection in images, but as I release more articles on the PyImageSearch blog, the list of endpoints will continue to grow.

For example, imagine being able to interact with the image search engine we built to search through vacation photos.

How about an API endpoint to handle mobile document scanning?

Or maybe we can wrap a deep learning classifier to recognize handwritten digits?

As you can see, there are quite the number of possibilities — and I think we are going to have a lot of fun with this API.

So keep your eyes out as new PyImageSearch blog posts are released. When appropriate I’ll be including new API endpoints.

Where can I access the PyImageSearch Web API?

The PyImageSearch Web API can be found over at, which also includes documentation for each endpoint.

Is the PyImageSearch Web API free?

You bet! The PyImageSearch Web API is 100% free. Use it in good health to aide you in your computer vision education.

Can I use the PyImageSearch Web API in my own app?

I would recommend against doing this. The PyImageSearch web API is meant to be a teaching tool, so if you are abusing the API, I will have to start issuing API keys — which is something that I really, really don’t want to do.

Is there a commercial version of the PyImageSearch Web API?

Perhaps in the future there will be a commercial version of the PyImageSearch Web API that you can use in your own applications, but not right now. If there is enough interest in the API as it grows I could certainly imagine creating a commercial, production level version of the API that can be licensed to developers.

Can I contribute the PyImageSearch Web API?

If you have developed a computer vision app that you think would make for a a great endpoint, please send me a message. I will also suggest that you wrap your app using my boilerplate Django view template (which can be found about halfway down the page) for building computer vision based web APIs.

How can I support the PyImageSearch Web API?

I personally pay out-of-pocket for the server and hosting to run the PyImageSearch Web API. If you enjoy it, find it useful, or learn anything from it, you can support myself and the PyImageSearch blog by picking up a copy of my book, Practical Python and OpenCV. Otherwise, please enjoy the API!

Have a request for an API endpoint?

Do you think a previous post on the PyImageSearch blog would make for a good API endpoint? Or have a suggestion for a computer vision tutorial that could include an API endpoint? Just comment on this post below to let me know or send me a message.

, , , , ,

6 Responses to Announcing the PyImageSearch Web API

  1. Zia Ullah Baig May 28, 2015 at 8:32 pm #


  2. Tim Clemans October 12, 2015 at 1:59 pm #

    I’m looking into doing with AWS API Gateway using Lambda. First I need to figure out how to add OpenCV to Lambda.

  3. sagar November 9, 2016 at 12:16 am #

    If i want to call this API from my HTML page. Can you provide me example, How to call this ?
    Because what you have explained is to call this API from terminal using cUrl But, if one needs to call this from HTML Page then what should be the modification.

    • Adrian Rosebrock November 10, 2016 at 8:40 am #

      Are you trying to call the API before the page is loaded and rendered or client side once the page is loaded?

  4. Aniruddha Tapas February 28, 2017 at 10:36 am #

    Hey Adrian, thanks for your amazing tutorials. I wanted to ask how did you host your API and the face detection web application. I am having trouble to upload my OpenCV image processing web demo using Heroku. Any suggestions would be greatly appreciated. Thanks 🙂

    • Adrian Rosebrock March 2, 2017 at 6:59 am #

      I simply used a Digital Ocean droplet and an Apache web server (which is overkill for sure).

Before you leave a comment...

Hey, Adrian here, author of the PyImageSearch blog. I'd love to hear from you, but before you submit a comment, please follow these guidelines:

  1. If you have a question, read the comments first. You should also search this page (i.e., ctrl + f) for keywords related to your question. It's likely that I have already addressed your question in the comments.
  2. If you are copying and pasting code/terminal output, please don't. Reviewing another programmers’ code is a very time consuming and tedious task, and due to the volume of emails and contact requests I receive, I simply cannot do it.
  3. Be respectful of the space. I put a lot of my own personal time into creating these free weekly tutorials. On average, each tutorial takes me 15-20 hours to put together. I love offering these guides to you and I take pride in the content I create. Therefore, I will not approve comments that include large code blocks/terminal output as it destroys the formatting of the page. Kindly be respectful of this space.
  4. Be patient. I receive 200+ comments and emails per day. Due to spam, and my desire to personally answer as many questions as I can, I hand moderate all new comments (typically once per week). I try to answer as many questions as I can, but I'm only one person. Please don't be offended if I cannot get to your question
  5. Do you need priority support? Consider purchasing one of my books and courses. I place customer questions and emails in a separate, special priority queue and answer them first. If you are a customer of mine you will receive a guaranteed response from me. If there's any time left over, I focus on the community at large and attempt to answer as many of those questions as I possibly can.

Thank you for keeping these guidelines in mind before submitting your comment.

Leave a Reply