Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


The schedules API provides functionality that allows a administrator to add, delete or update schedules

Table of Contents

Section

Get all schedules

Lists all the schedules configured in the Aspire

Panel
borderColorblack
bgColor#fafafb
GET /aspire/_api/schedules

Query String Parameters

NameTypeRequiredDescription
typestringOptionalFilter returned schedules to only those with the given type
descriptionstringOptionalFilter returned schedules to only those whose description matches the given expression
runningbooleanOptionalFilter returned schedules to only running schedules

Response

Code Block
languagejs
{
  "schedule": [{
    "id": "AAABcID5GBc=",
    "type": "time",
    "description": "Weekend after office",
    "running": false,
    "enabled": true,
    "seed": ["AAABcIueWUd=", "AAABcIueWUe="],
    "properties": {
      "action": "start",
      "crawlType": "incremental",    
      "scheduleType": "custom",
      "schedule": "* * * * 1",
      "last": 123456789,
      "next": 123456789
    },
    {
      "id": "AAABcID5GBc=",
      "type": "sequence",
      "description": "Sequential schedule",
      "running": false,
      "enabled": true,
      "seed": ["AAABcIueWUd=", "AAABcIueWUe="],
      "properties": {
        "action": "start",
        "crawlType": "incremental",    
        "afterSchedule": "AAABcID5GBc=",
        "last": 123456789
      }
    },
    ...
  ],
  "from": 100,
  "size": 10,
  "totalItems": 10000,
  "message": "optional response message"
}

Status

Response codeDescription
200Success




Section

Get a single schedule

Get information about a single schedule configured in Aspire

Panel
borderColorblack
bgColor#fafafb

GET /aspire/_api/schedules/:id

Path Parameters

NameTypeRequiredDescription
idstringRequiredThe id of the schedule to return

Response

Code Block
languagejs
{
  "schedule": {
    "id": "AAABcID5GBc=",
    "type": "time",
    "description": "Weekend after office",
    "running": false,
    "enabled": true,
    "seed": ["AAABcIueWUd=", "AAABcIueWUe="],
    "properties": {
      "action": "start",
      "crawlType": "incremental",    
      "scheduleType": "custom",
      "schedule": "* * * * 1",
      "last": 123456789,
      "next": 123456789
  },
  "message": "optional response message"
}

Status

Response codeDescription
200Success
404The given schedules id was not found




Section

Add schedules

Add one or more schedules to Aspire

Panel
borderColorblack
bgColor#fafafb
POST /aspire/_api/schedules

Request Body Parameters

NameTypeRequiredDescription
typestringRequired

The type of schedule to add

  • time
  • sequence
descriptionstringOptionalAn optional description of the schedule
actionstringOptional

The action to perform by the scheduled task

  • start
  • stop
  • pause
  • resume
crawlTypestringOptional

The type of crawl to perform by the scheduled task

  • full
  • incremental
  • sequential
  • cache groups

Other parameters passed in the request body will depend on the type of schedule being created. Some candidates are shown below

NameTypeRequiredDescription
enabledbooleanOptionalWhether this schedule is enabled or not
scheduleTypestringOptional

The type of the time based schedule

  • hourly
  • daily
  • weekly
  • monthly
  • custom
schedulestringOptionalthe cron like schedule for a time based schedule
afterstringOptionalthe id of the schedule after which this schedule should run (for a sequence based schedule)
seedstringOptionalthe seed(s) this schedule applies to

Examples

Add a single schedule

Code Block
languagejs
POST /aspire/_api/schedules
{
  "type": "time",
  "description": "Weekly seeds"
  "enabled": true,
  "scheduleType": "weekly",
  "schedule": "* * * * 1",
  "seed": ["AAABcIueWUd=", "AAABcIueWUe="],
  "action": "start",
  "crawlType": "full"
}

Add multiple schedules

Code Block
languagejs
POST /aspire/_api/schedules
[{
  "type": "time",
  "description": "Weekly seeds"
  "enabled": true,
  "scheduleType": "weekly",
  "schedule": "* * * * 1",
  "seed": ["AAABcIueWUd=", "AAABcIueWUe="],
  "action": "start",
  "crawlType": "full"
},
{
  "type": "sequence",
  "description": "Rollup"
  "enabled": false,
  "after": "* * * * 1",
  "seed": ["AAABcIudWUd=", "AAABcIudWUe="],
  "action": "start",
  "crawlType": "incremental"
}]

Response

Code Block
languagejs
{
  "schedule": [{
    "id": "AAABcIueWU0",
    "type": "time",
    "description": "Weekly seeds"
    "enabled": true,
    "scheduleType": "weekly",
    "schedule": "* * * * 1",
    "seed": ["AAABcIueWUd=", "AAABcIueWUe="],
    "action": "start",
    "crawlType": "full"
   },
   {
    "id": "AAABcIueWU1",
    "type": "sequence",
    "description": "Rollup"
    "enabled": false,
    "after": "* * * * 1",
    "seed": ["AAABcIudWUd=", "AAABcIudWUe="],
    "action": "start",
    "crawlType": "incremental"
 }]
}

Status

Response codeDescription
201Created
406Not acceptable - there was an issue validating the input




Section

Update schedules

Update one or more schedules in Aspire.

Panel
borderColorblack
bgColor#fafafb

PUT /aspire/_api/schedules/:id

PUT /aspire/_api/schedules

Path and Request Body Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the schedule to update
typestringRequiredThe type of schedule
descriptionstringOptionalAn optional description of the schedule

Other parameters passed in the request body will depend on the type of schedule being created - see Add schedule(s) above

Examples

Update a single schedule

Code Block
languagejs
PUT /aspire/_api/schedules/AAABcIueWU0%3D
{
  "id": "AAABcIueWU0=",
  "type": "time",
  "description": "Weekly seeds"
  "enabled": true,
  "scheduleType": "weekly",
  "schedule": "* * * * 1",
  "seed": ["AAABcIueWUd=", "AAABcIueWUe="],
  "action": "start",
  "crawlType": "full"
}

Update multiple schedules

Code Block
languagejs
PUT /aspire/_api/schedules
{
  "AAABcIueWU0=": {
    "id": "AAABcIueWU0",
    "type": "time",
    "description": "Weekly seeds"
    "enabled": true,
    "scheduleType": "weekly",
    "schedule": "* * * * 1",
    "seed": ["AAABcIueWUd=", "AAABcIueWUe="],
    "action": "start",
    "crawlType": "full"
  },
  "AAABcIueWU1": {
    "id": "AAABcIueWU1",
    "type": "sequence",
    "description": "Rollup"
    "enabled": false,
    "after": "* * * * 1",
    "seed": ["AAABcIudWUd=", "AAABcIudWUe="],
    "action": "start",
    "crawlType": "incremental"
  }
}

Response

Code Block
languagejs
{
  "schedule": [{
    "id": "AAABcIueWU0",
    "type": "time",
    "description": "Weekly seeds"
    "enabled": true,
    "scheduleType": "weekly",
    "schedule": "* * * * 1",
    "seed": ["AAABcIueWUd=", "AAABcIueWUe="],
    "action": "start",
    "crawlType": "full"
   },
   {
    "id": "AAABcIueWU1",
    "type": "sequence",
    "description": "Rollup"
    "enabled": false,
    "after": "* * * * 1",
    "seed": ["AAABcIudWUd=", "AAABcIudWUe="],
    "action": "start",
    "crawlType": "incremental"
    }]
}

Status

Response codeDescription
200Success
404Not found - a given schedule identifier was not found
406Not acceptable - there was an issue validating the input




Section

Delete schedules

Delete one or more schedules from Aspire.

Panel
borderColorblack
bgColor#fafafb

DELETE /aspire/_api/schedule/:id

DELETE /aspire/_api/schedule

Path and Request Body Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier(s) of the schedule(s) to delete

Examples

Delete a single schedule

Code Block
languagejs
DELETE /aspire/_api/schedule/AAABcID5GBc%3D

Delete multiple schedules

Code Block
languagejs
DELETE /aspire/_api/schedule?id=AAABcID5GBc%3d&id=AAABcIueWUc%3D

Response

Code Block
languagejs
{
  "message": "optional response message"
}

Status

Response codeDescription
200Success
404Not found - a given schedule identifier was not found
406Not acceptable - there was an issue validating the input