Skip to content

Pro API

Ted Behling edited this page Aug 25, 2023 · 24 revisions

Sidekiq Pro adds a few API extensions:

  • Sidekiq::Queue#delete_job - takes a JID and deletes the corresponding job from the given queue, if it exists. Returns the deleted job or nil. Executes as a Lua script directly in the Redis process for maximum performance.
jid = MyWorker.perform_async
queue = Sidekiq::Queue.new
queue.delete_job(jid)
  • Sidekiq::Queue#delete_by_class - takes a class and deletes all corresponding jobs from the queue. Returns the number of jobs deleted. The Standard API notes apply to this method.
MyWorker.perform_async
queue = Sidekiq::Queue.new
queue.delete_by_class(MyWorker)

Pausing Queues

Sidekiq Pro allows you to pause processing on any queue via the API:

q = Sidekiq::Queue.new('critical')
q.pause!
q.paused? # => true
q.unpause!

webui