Submit a Job

Now that our job is created, all that's left is to submit it! This is done with a POST call to the /jobs/{id}/submit enpoint, using the ID returned from the /jobs call that created the job.

The one required parameter is billingType, which we will set to 'User Credit' for this tutorial so that we can use the credit we added previously.

The following code sample demonstrates submitting a job.

# Load the HTTP requests module
import requests

# Note the ID of the previously-created job
jobId = '8675309'

# Define the endpoint to use, including the jobId
url = "" + jobId + "/submit"

# Define credentials
myusername = 'awesomeuser'
mypassword = 'gReAt/PaSsWoRd123'

headers = {'user-agent': 'my-app/0.0.1'}

# Set the source of payment for the job
values = {'billingType': 'User Credit'}

# Make the POST call
r =, data=values, headers=headers, auth=(myusername, mypassword))

# Display the result - a success should return status_code 201

# Display the full XML returned.

HTTP Return Codes And Possible Statuses

HTTP Response 200

1Job ID not found
2User does not have access to this payment method
2payment not authorized

HTTP Response 400

9One of the required parameters is missing.
9Job with Id is in impermissible state
9Not authenticated
9Only Credit Card, Invoice, ACH, User Credit, Apple Pay, Google Pay are allowed.
9Shipping method information required
9custom error message related to job submission

HTTP Response 500. If you get a 500 response please contact Click2Mail customer support.