Easy like Sunday Morning
Sign in or join to take full advantage of this Interactive Documentation
Authentication is required for many functions of the Scripted API. We use token-based authentication.
You can think of your business_id as your username, and your key as your password.
By default, we respond in JSON.
We can also respond in XML.
Specifying format is easy: format=xml
/jobs/create
Example Request
Unless industry_ids or guideline_ids are provided, the API will assume your most recent settings.
To update those settings, log in to your dashboard and click on the Create a Job tab.
/jobs/sandbox_finish/abc123 → abc123 is the id of the sandboxed job for which you want to simulate the process of a writer submitting their work.
/jobs/show/abc123 → abc123 is the id of the job are showing. Use List Current Jobs to find the id.
Example Request
https://scripted.com/jobs/show/abc123?business_id=abc&key=123
Example Response
{ "id":"abc123",
"topic":"My First Job on Scripted!",
"details":"Things to Mention: cats",
"delivery":"standard",
"business_id":"abc123",
"guideline_ids":["def456"],
"industry_ids":["ghi789"],
"format_id":"jkl123",
"form_fields":{"things_to_mention":"cats"},
"state":"Claimed",
"sandbox" => false,
"created_at":"2013-05-22T00:30:00Z",
"deadline_at":"2013-05-27T00:30:00Z" }
/jobs/edit/abc123 → abc123 is the id of the job that you want to edit. This is the same id returned by Create a Job.
This function updates a job's format-specific form_fields.
Example Request
/jobs/edit/abc123?form_fields[sample_blog]=blog.sample.com&business_id=abc&key=123
{
form_fields: {
preferred_structure:"Top Ten List",
things_to_mention:"Scripted" }
}
Careful! This function overwrites all the details previously provided.
/jobs/destroy/abc123 → abc123 is the id of the job that you want to destroy. This is the same id returned by Create a Job.
This function destroys a job.
Example Request
/jobs/destroy/abc123?business_id=abc&key=123
Heads Up! This function only works on unclaimed jobs.
All the publicly available industries. No authentication required.
However, if you pass your business_id and key this will also return any custom formats that have been assigned to your account.
/industries
You can also pass your business_id and key if you'd like the the API to return just your account's default Industries.
Actual Response
All the publicly available guidelines. No authentication required.
However, if you pass your business_id and key this will also return any custom formats that have been assigned to your account.
/guidelines
You can also pass your business_id and key if you'd like the the API to return just your account's default Guidelines.
Actual Response
All the publicly available formats. No authentication required.
However, if you pass your business_id and key this will also return any custom formats that have been assigned to your account.
/formats
Returns form_fields as an array. The elements are as follows:
Actual Response
/industries/create/abc123 → abc123 is the id of the industry that you want to add to your default industries.
/industries/set_all?ids=abc123,def456 → abc123,def456 are the ids of all industries that you want to be your defaults.
/guidelines/destroy/abc123 → abc123 is the id of the guideline that you want to remove from your default guidelines.
/guidelines/set_all?ids=abc123,def456 → ids=abc123,def456 are the ids of all guidelines that you want to be your defaults.
Jobs that have not yet been submitted by our writers.
/jobs
Example Request
Example Response
{"total":2,"page":1,"jobs":[
{ "id":"abc123",
"topic":"My First Job on Scripted!",
"format_id":"ghi789",
"state":"Claimed",
"created_at":"2013-05-20T00:30:00Z",
"deadline_at":"2013-05-27T00:30:00Z" },
{ "id":"def456",
"topic":"My second job on Scripted",
"format_id":"ghi789",
"state":"Unclaimed",
"created_at":"2013-05-22T00:30:00Z",
"deadline_at":"2013-05-29T00:30:00Z" }
]}
Jobs that have been submitted by our writers for your approval (or edits).
/finished_jobs
Example Request
Example Response
{"total":2,"page":1,"jobs":[
{ "id":"abc123",
"topic":"My First Job on Scripted!",
"format_id":"ghi789",
"state":"Needs Review",
"created_at":"2013-05-17T00:30:00Z",
"submitted_at":"2013-05-22T00:30:00Z",
"deadline_at":"2013-05-22T00:30:00Z",
"review_deadline_at":"2013-05-25T00:30:00Z",
"final_review_deadline_at":null },
{ "id":"def456",
"topic":"My second job on Scripted",
"format_id":"ghi789",
"state":"Needs Final Review",
"created_at":"2013-05-17T00:30:00Z",
"submitted_at":"2013-05-22T00:30:00Z",
"deadline_at":"2013-05-22T00:30:00Z",
"review_deadline_at":"2013-05-25T00:30:00Z",
"final_review_deadline_at":"2013-05-28T00:30:00Z" }
]}
needs_final_review trumps needs_review.
If you pass both as parameters, needs_review will be ignored.
/finished_jobs/show/abc123 → abc123 is the id of the job whose content you are pulling. Use List Finished Jobs to find the id.
By default, we'll return the job's content as an array of plain text, but you can also specify html.
Example Request
https://scripted.com/finished_jobs/show/abc123?content_format=html&business_id=abc&key=123
Example Response
{ "id":"abc123",
"topic":"My First Job on Scripted!",
"details":"Things to Mention: cats",
"delivery":"standard",
"business_id":"123abc",
"guideline_ids":["def456"],
"industry_ids":["ghi789"],
"format_id":"jkl123",
"form_fields":{"things_to_mention":"cats"},
"state":"Needs Final Review",
"sandbox" => false,
"content":["'My first Job on Scripted' is not really a valid topic. Soooo I'm not sure what you want me to write here. But I'll give it a shot, because I'm a Scripted Writer and I rock."],
"created_at":"2013-05-17T00:30:00Z",
"submitted_at":"2013-05-22T00:30:00Z",
"deadline_at":"2013-05-22T00:30:00Z",
"review_deadline_at":"2013-05-25T00:30:00Z",
"final_review_deadline_at":"2013-05-28T00:30:00Z" }
/finished_jobs/update/abc123 → abc123 is the id of the job that you want to review. Use List Finished Jobs to find the id.
For every job, you're entitled to one round of edit requests.
If you want the writer to fix something, send your request with a chief_complaint:
/finished_jobs/update/abc123?chief_complaint=Please+make+this+longer&business_id=abc&key=123
Otherwise, if you're satisfied, you can let us know by sending accepted=true.
/finished_jobs/update/abc123?accepted=true&business_id=abc&key=123
If your writer has already submitted edits, and your job's state is Needs Final Review, then any request without accepted=true will be interpreted as a rejection.
/finished_jobs/sandbox_submit_edits/abc123 → abc123 is the id of the sandboxed finished job for which you want to simulate the writer submitting their edits.