API Documentation
To allow tools to directly submit jobs to crack.sh, we’ve put together a simple REST API.

Submitting a Job
The API endpoint is located at https://crack.sh/api and accepts the following GET or POST keys to submit jobs:

token Contains a standard token that can be submitted to the Get Cracking page.
customer_id Contains a customer_id generated by submitting payment info at the Setup Account page.
email Contains the notification email address that you’d like the result to be sent to.
asap If set to 1, it will charge the ASAP rate for the submitted job.

Result of Submission
The https://crack.sh/api endpoint will return the following JSON when jobs are submitted.

status Contains either error or queued, on error an error message will be present in error_msg.
reference Contains a 12 digit alphanumeric reference id to the job that was submitted which can be used to retrieve status.
error_msg Contains a verbose error message if there’s an error submitting the job.

Retrieving Status of a Job
To get the status of a job, just submit the reference to the https://crack.sh/api endpoint:

reference Contains the 12 digit reference id for a submitted job.

And the JSON returned will contain the following information based on the status of the job:

status Contains a status value of queued, running, or finished.
progress If status is running, this contains the percentage of the keyspace that’s been searched. If status is queued, this contains the estimated number of hours until the job will begin.
result If status is finished, this contains the resulting NTHASH, DES key, or des_crypt() password.