docs: def put(self, klass, data, priority=None, tags=None, delay=None,
          retries=None, jid=None, depends=None):
          '''Either create a new job in the provided queue with the provided
          attributes, or move that job into that queue. If the job is being
          serviced by a worker, subsequent attempts by that worker to either
          `heartbeat` or `complete` the job should fail and return `false`.
  
          The `priority` argument should be negative to be run sooner rather
          than later, and positive if it's less important. The `tags` argument
          should be a JSON array of the tags associated with the instance and
          the `valid after` argument should be in how many seconds the instance
          should be considered actionable.'''
          return self.client('put', self.worker_name,
              self.name,
              jid or uuid.uuid4().hex,
              self.class_string(klass),
              json.dumps(data),
              delay or 0,
              'priority', priority or 0,
              'tags', json.dumps(tags or []),
              'retries', retries or 5,
              'depends', json.dumps(depends or [])
          )