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
fromintegerOptionalIndicates the initial page to be retrieved
sizeintegerOptionalSpecifies the size of results page
sortBystringOptionalField by which results are sorted
sortModestringOptional

Sort mode

  • "asc" for ascending sort,
  • "desc" for descending sort
expandstringOptionalList of fields to expand, * will expand everything


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,
  "sortBy": "id",
  "sortMode": "asc",
  "totalItems": 10000,
  "message": "optional response message"
}


Status

Response codeDescription
200Success




Section

Get all schedules, filtered

Lists schedules configured in the Aspire, filtered by a specified criteria

Panel
borderColorblack
bgColor#fafafb

POST /aspire/_api/schedules/getAll


Query String Parameters

NameTypeRequiredDescription
fromintegerOptionalIndicates the initial page to be retrieved
sizeintegerOptionalSpecifies the size of results page
sortBystringOptionalField by which results are sorted
sortModestringOptional

Sort mode

  • "asc" for ascending sort,
  • "desc" for descending sort
expandstringOptionalList of fields to expand, * will expand everything


Body Parameters

NameTypeRequiredDescription
filterJSONRequiredFilters retrieved schedules. Check the filter definition here


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,
  "sortBy": "id",
  "sortMode": "asc",
  "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


Query String Path Parameters

NameTypeRequiredDescription
idstringRequiredThe id of the schedule to return


Query String Parameters
NameTypeRequiredDescription
expandstringOptionalList of fields to expand, * will expand everything


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 schedules to Aspire

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


Body Parameters

NameTypeRequiredDescription
typestringRequired

The type of schedule to add

  • "time"
  • "sequence"
descriptionstringRequiredAn 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"
  • "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


Example

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 schedules in Aspire.

Panel
borderColorblack
bgColor#fafafb

PUT /aspire/_api/schedules


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

Example

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 multiple schedules, filtered

Delete multiple schedules from Aspire, filtered by a specified criteria

Panel
borderColorblack
bgColor#fafafb

POST /aspire/_api/schedules/deleteAll


Body Parameters

NameTypeRequiredDescription
filterJSONRequiredFilters retrieved schedules. Check the filter definition here


Response

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

See Response Body for details regrading the response body returned where multiple items are affected with some (or all) returning errors

Status

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




Section

Delete single schedule

Delete a single schedule from Aspire.

Panel
borderColorblack
bgColor#fafafb

DELETE /aspire/_api/schedule/:id


Query String Path Parameters

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


Example

Code Block
languagejs
DELETE /aspire/_api/schedule/AAABcID5GBc%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




Section

Filters
Anchor
FiltersAnchor
FiltersAnchor

 Some endpoint queries require a filter. A filter is basically a JSON object with the following format:

Credentials filter:

Code Block
languagejs
  "filter" : {
    "ids" : ["ID1", "ID2", "ID3", ...],
    "type" : "TYPE",
    "description" : "DESCRIPTION",
	"running": "true|false"
  }
Note
When using delete endpoints , ids in the filter are mandatorythat use this filter, the filter cannot be empty: at least one field of the filter must be specified.