CopyHero

Read Blueprint Jobs

GET
/api/v1/blueprints/jobs/

List TaskBlueprintJobs with usage statistics, filtering, searching, and sorting.

Returns a {data, count} envelope where count is the total number of rows matching the filters (ignoring pagination). List rows are the slim TaskBlueprintJobListItem (no input_data); the full blob lives on the detail endpoint GET /blueprints/jobs/{id}.

Filters:

  • search_query: Search in name and description (ILIKE)
  • job_type: Filter by job type (e.g., 'translate', 'import')
  • owner_id: Filter by owner ID (superuser only)
  • owned_only: Only the caller's own jobs (no global rows)
  • created_by_user_id: Filter by creator user ID (superuser only)
  • sort_by: Sort by id, created_at, updated_at, name, or job_type
  • sort_order: Sort direction (asc or desc)
  • skip: Number of records to skip for pagination
  • limit: Maximum number of records to return

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Query Parameters

include_deleted?Include Deleted
Defaultfalse
search_query?|null
sort_by?Sort By
Default"created_at"
sort_order?Sort Order
Default"desc"
Value in"asc""desc"
skip?Skip
Range0 <= value
Default0
limit?Limit
Range1 <= value <= 1000
Default100
job_type?string|null
exclude_job_type?string|null
owner_id?integer|null
created_by_user_id?integer|null
owned_only?Owned Only
Defaultfalse

Response Body

Successful Response

application/json
  1. response
data*array<>
count*Count
Example Request
curl -X GET 'https://app.copyhero.app/api/v1/blueprints/jobs/'
Example Response
{  "data": [    {      "id": 0,      "name": "string",      "description": "string",      "job_type": "string",      "owner_id": 0,      "created_at": "2019-08-24T14:15:22Z",      "updated_at": "2019-08-24T14:15:22Z",      "workflow_usage_count": 0,      "execution_count": 0,      "created_by_full_name": "string",      "created_by_email": "string",      "organization_name": "string"    }  ],  "count": 0}