Block all API calls


  • It has been observed a lot of threads and slow requests like
"Handling GET /job/FOLDER1/job/JOB1/api/json from : RequestHandlerThread[#2246]" Id=614605 ...
  • It would great to have a way to filter out the number of requests which are processed by Jenkins, so the load can be reduced.



Install the CloudBees Request Filter Plugin and add one of the following rules in Manage Jenkins > Configure System to get the desired behavior:

Block all the api requests excepting those which use the tree parameter (Recommended)


Block all the api requests which do not use parameters


Block all the api requests including those which use tree and depth parameters


Have more questions?


  • 0
    Ryan Campbell

    Note that this will only block API calls which don't pass a parameter, such as the tree parameter.

  • 0
    Steven Christenson

    I don't have a quibble (much) with the content, but the title is misleading. Should not be "Block all api calls" but "Restrict API Calls" or "Block SOME API Calls".

    I also believe none of the supplied examples are sufficient or complete.

    We have something like this:


    But the above doesn't deal with the problem of a missing tree parameter.

    The problem is that some items will be innocuous without the tree parameter... e.g. retrieving the results of one particular build:


    But a request with a tree that also has e.g. depth=5 is able to crush jenkins.

    Edited by Steven Christenson
Please sign in to leave a comment.