A Job represents an individual Wonoloer (Worker) performing a Job Request.

States

Jobs progress through a series of states:

  • filled the first state after the Wonoloer accepts a Job (i.e. pressed “Accept” in the Wonolo app)

  • in_progress the Wonoloer is currently working the Job (i.e. pressed “Start” in the Wonolo app)

  • completed the Wonoloer has completed the Job (i.e. pressed “Complete” in the Wonolo app)

  • approved the Requestor has approved/rated the Job

  • cancelled the Job was cancelled because the Job Request was cancelled

  • withdrawn the Wonoloer withdrew from the Job after accepting it

  • no_show the Wonoloer did not show up for the Job

  • paused the Wonoloer is currently on a break (jobs with a W2 tax classification only)

Transitions

Jobs record an array of transitions which record when the Job state changed and meta-data such as the location of the Wonoloer when the transition took place.


Supported Formats

json

Returns a list of Jobs, optionally paginated. Note: the maximum number returned per page in any case is 50.

Supported Formats

json

Errors

Code Description
401 Unauthorized

Examples

curl -v -d "token=HdgXqxYWd5tTdyabzfzo" http://api.wonolo.com/api_v2/jobs
curl -v -d "token=HdgXqxYWd5tTdyabzfzo" http://api.wonolo.com/api_v2/jobs?page=10&per=25

Params

Param name Description
token
required

Token obtained from /authorize

Validations:

  • Must be String

page
optional

The page number to start from

Validations:

  • Must be Integer

per
optional

The size of the page

Validations:

  • Must be Integer

state
optional

Filter Jobs by state

Validations:

  • Must be String

job_request_id
optional

List jobs for the specified Job Request

Validations:

  • Must be Integer

classification
optional

Return jobs by a specific tax classification

Validations:

  • Must be String

w2_hourly_rate
optional

Return jobs by a specific hourly rate

Validations:

  • Must be Float

w2_pay_status
optional

Return jobs by a specific pay status (not_started pending paid)

Validations:

  • Must be String

updated_before
optional

Return jobs by those that were last updated before provided DateTime

Validations:

  • Must be DateTime

updated_after
optional

Return jobs by those that were last updated after provided DateTime

Validations:

  • Must be DateTime


POST /api_v2/jobs
Create a Job

Supported Formats

json

Errors

Code Description
403 Forbidden - if you have Public Pool access only

Params

Param name Description
token
required

Token obtained from /authorize

Validations:

  • Must be String

job
required

The Job

Validations:

  • Must be a Hash

job[worker_id]
required

ID of the Worker to perform the Job

Validations:

  • Must be Integer

job[job_request_id]
required

ID of the Job Request being fulfilled by this Job

Validations:

  • Must be Integer

job[requestor_notes]
optional

Arbitary text to be attached to this Job - not visible to Worker

Validations:

  • Must be String


Supported Formats

json

Errors

Code Description
403 Forbidden - if you have Public Pool access only

Params

Param name Description
token
required

Token obtained from /authorize

Validations:

  • Must be String

job
required

The Job

Validations:

  • Must be a Hash

job[worker_id]
required

ID of the Worker to perform the Job

Validations:

  • Must be Integer

job[job_request_id]
required

ID of the Job Request being fulfilled by this Job

Validations:

  • Must be Integer

job[requestor_notes]
optional

Arbitary text to be attached to this Job - not visible to Worker

Validations:

  • Must be String


Supported Formats

json

Errors

Code Description
403 Forbidden - if you have Public Pool access only

Params

Param name Description
token
required

Token obtained from /authorize

Validations:

  • Must be String

state
optional

Use 'cancelled' if you want cancel a job.

Validations:

  • Must be String

actual_duration
optional

The actual duration of a job, in minutes

Validations:

  • Must be Integer

cancelled_reason
optional

Give a reason such as 'admin_cancelled', 'decided_to_cancel', or 'asked_to_cancel' so that the worker will not receive notifications for this job again

Validations:

  • Must be String


GET /api_v2/jobs/:id
Get a specific Job

Supported Formats

json

Params

Param name Description
token
required

Token obtained from /authorize

Validations:

  • Must be String