QuantCDN CrawlerSchedules API
Scheduled website crawl operations
Documentation
Documentation
https://docs.quantcdn.io/
GettingStarted
https://docs.quantcdn.io/api/get-started-content/
Scheduled website crawl operations
openapi: 3.0.0
info:
description: Unified API for QuantCDN Admin and QuantCloud Platform services
title: QuantCDN AI Agents CrawlerSchedules API
version: 4.15.8
servers:
- description: QuantCDN Public Cloud
url: https://dashboard.quantcdn.io
- description: QuantGov Cloud
url: https://dash.quantgov.cloud
security:
- BearerAuth: []
tags:
- description: Scheduled website crawl operations
name: CrawlerSchedules
paths:
/api/v2/organizations/{organization}/projects/{project}/crawlers/{crawler}/schedules:
get:
operationId: CrawlerSchedules_list
parameters:
- example: test-org
explode: false
in: path
name: organization
required: true
schema:
type: string
style: simple
- example: test-project
explode: false
in: path
name: project
required: true
schema:
type: string
style: simple
- example: 00000000-0000-0000-0000-000000000000
explode: false
in: path
name: crawler
required: true
schema:
type: string
style: simple
responses:
'200':
content:
application/json:
schema:
items:
$ref: '#/components/schemas/V2CrawlerSchedule'
type: array
description: The request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/V2Error'
description: The server could not understand the request due to invalid syntax.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/V2Error'
description: Access is forbidden.
summary: List schedules for a crawler
tags:
- CrawlerSchedules
post:
operationId: CrawlerSchedules_add
parameters:
- description: Organization identifier
explode: false
in: path
name: organization
required: true
schema:
type: string
style: simple
- description: Project identifier
explode: false
in: path
name: project
required: true
schema:
type: string
style: simple
- description: Crawler identifier
explode: false
in: path
name: crawler
required: true
schema:
type: string
style: simple
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/V2CrawlerScheduleRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/V2CrawlerSchedule'
description: The request has succeeded.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/V2Error'
description: The server could not understand the request due to invalid syntax.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/V2Error'
description: Access is forbidden.
summary: Add a new schedule
tags:
- CrawlerSchedules
/api/v2/organizations/{organization}/projects/{project}/crawlers/{crawler}/schedules/{crawler_schedule}:
delete:
operationId: CrawlerSchedules_delete
parameters:
- description: Organization identifier
explode: false
in: path
name: organization
required: true
schema:
type: string
style: simple
- description: Project identifier
explode: false
in: path
name: project
required: true
schema:
type: string
style: simple
- description: Crawler identifier
explode: false
in: path
name: crawler
required: true
schema:
type: string
style: simple
- description: Crawler schedule identifier
explode: false
in: path
name: crawler_schedule
required: true
schema:
type: string
style: simple
responses:
'204':
description: The crawler schedule has been deleted.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/V2Error'
description: The server could not understand the request due to invalid syntax.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/V2Error'
description: Access is forbidden.
summary: Delete a schedule
tags:
- CrawlerSchedules
get:
operationId: CrawlerSchedules_show
parameters:
- description: Organization identifier
explode: false
in: path
name: organization
required: true
schema:
type: string
style: simple
- description: Project identifier
explode: false
in: path
name: project
required: true
schema:
type: string
style: simple
- description: Crawler identifier
explode: false
in: path
name: crawler
required: true
schema:
type: string
style: simple
- description: Crawler schedule identifier
explode: false
in: path
name: crawler_schedule
required: true
schema:
type: string
style: simple
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/V2CrawlerSchedule'
description: The crawler schedule.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/V2Error'
description: The server could not understand the request due to invalid syntax.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/V2Error'
description: Access is forbidden.
summary: Show a specific schedule
tags:
- CrawlerSchedules
patch:
operationId: CrawlerSchedules_edit
parameters:
- description: Organization identifier
explode: false
in: path
name: organization
required: true
schema:
type: string
style: simple
- description: Project identifier
explode: false
in: path
name: project
required: true
schema:
type: string
style: simple
- description: Crawler identifier
explode: false
in: path
name: crawler
required: true
schema:
type: string
style: simple
- description: Crawler schedule identifier
explode: false
in: path
name: crawler_schedule
required: true
schema:
type: string
style: simple
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/V2CrawlerScheduleRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/V2CrawlerSchedule'
description: The crawler schedule.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/V2Error'
description: The server could not understand the request due to invalid syntax.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/V2Error'
description: Access is forbidden.
summary: Edit a schedule
tags:
- CrawlerSchedules
components:
schemas:
V2CrawlerScheduleRequest:
example:
schedule_cron_string: 0 2 * * *
name: Daily Crawl
properties:
name:
description: Schedule name. If not provided, defaults to 'Schedule {crawler_name}'.
example: Daily Crawl
type: string
schedule_cron_string:
description: 'Standard Unix cron expression with 5 space-separated fields: minute, hour, day-of-month, month, day-of-week. Example: 0 2 * * * for daily at 2 AM.'
example: 0 2 * * *
type: string
required:
- schedule_cron_string
type: object
V2Error:
example:
message: The requested resource was not found
error: true
properties:
message:
description: Error message
example: The requested resource was not found
type: string
error:
description: Error flag
example: true
type: boolean
required:
- error
- message
type: object
V2CrawlerSchedule:
example:
crawler_last_run_id: 12345
schedule_cron_string: 0 2 * * *
updated_at: 2024-10-11 16:45:00+00:00
project_id: 789
name: Test schedule
crawler_config_id: 456
created_at: 2024-01-20 09:15:00+00:00
crawler_uuid: 550e8400-e29b-41d4-a716-446655440000
id: 1
properties:
id:
description: Schedule ID
example: 1
type: integer
name:
description: Schedule name
example: Test schedule
type: string
crawler_config_id:
description: Crawler config ID
example: 456
type: integer
crawler_uuid:
description: Crawler UUID
example: 550e8400-e29b-41d4-a716-446655440000
type: string
project_id:
description: Project ID
example: 789
type: integer
crawler_last_run_id:
description: Last run ID
example: 12345
type: integer
schedule_cron_string:
description: 'Standard Unix cron expression with 5 space-separated fields: minute, hour, day-of-month, month, day-of-week. Example: 0 2 * * * runs daily at 2 AM.'
example: 0 2 * * *
type: string
created_at:
description: Creation timestamp
example: 2024-01-20 09:15:00+00:00
format: date-time
type: string
updated_at:
description: Last update timestamp
example: 2024-10-11 16:45:00+00:00
format: date-time
type: string
required:
- crawler_config_id
- crawler_last_run_id
- id
- project_id
- schedule_cron_string
type: object
securitySchemes:
BearerAuth:
bearerFormat: JWT
description: 'Enter your Bearer token in the format: `Bearer <your-token-here>`. Obtain your API token from the QuantCDN dashboard under Profile > API Tokens.'
scheme: bearer
type: http