Skip to main content
GET
/
jobs
/
{id}
cURL
curl https://api.neuraldraft.io/v1/jobs/job_2Ngd9KqLmRpW \
  -H "Authorization: Bearer ndsk_live_yourkey"
{
  "id": "job_2Ngd9KqLmRpW",
  "type": "blog_post.generate",
  "status": "processing",
  "progress": 64,
  "message": "Translating to French",
  "steps": [
    {
      "name": "research",
      "completed": true,
      "active": false
    },
    {
      "name": "write",
      "completed": true,
      "active": false
    },
    {
      "name": "image",
      "completed": true,
      "active": false
    },
    {
      "name": "translate",
      "completed": false,
      "active": true
    },
    {
      "name": "seo",
      "completed": false,
      "active": false
    }
  ],
  "created_at": "2026-04-19T10:14:02Z",
  "updated_at": "2026-04-19T10:18:42Z"
}

Documentation Index

Fetch the complete documentation index at: https://docs.neuraldraft.io/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Project API key. Pass as Authorization: Bearer ndsk_live_.... Manage keys via /projects/me/api-keys. Test-mode keys use the ndsk_test_ prefix.

Path Parameters

id
string
required
Example:

"job_2Ngd9KqLmRpW"

Response

The job.

id
string
required
Example:

"job_2Ngd9KqLmRpW"

type
enum<string>
required
Available options:
blog_post.generate,
social_post.generate,
image.generate,
translation.batch,
content_plan.generate,
website.generate
status
enum<string>
required
Available options:
pending,
processing,
completed,
failed,
cancelled
created_at
string<date-time>
required
progress
integer
Required range: 0 <= x <= 100
message
string
steps
object[]
result
object

Result payload when status is completed. Shape depends on type:

  • blog_post.generate{ post_id, slug, title }
  • social_post.generate{ social_post_id, title, platforms }
  • image.generate{ url, key, width, height }
  • translation.batch{ keys_translated: int, locales: [string] }
error
object
updated_at
string<date-time>