CESNET Tasks Manager API

TasksManager RPC API in Perun

Operations 25

GET /json/tasksManager/getTask Returns a task #
GET /json/tasksManager/listAllTasks Returns all tasks #
GET /json/tasksManager/listAllTasksForFacility Returns all tasks associated with selected facility #
GET /json/tasksManager/isThereSuchTask Whether task exists #
GET /json/tasksManager/countTasks Returns the count of all tasks #
GET /json/tasksManager/getTaskResults Returns all task results #
GET /json/tasksManager/getTaskResultsByTask Return list of TaskResults by a Task #
GET /json/tasksManager/getTaskResultsForGUIByTaskOnlyNewest Return list of only newest TaskResults by a Task for GUI #
GET /json/tasksManager/getTaskResultsForGUIByTaskAndDestination Return list of TaskResults by a Task and destination for GUI #
GET /json/tasksManager/getTaskResultsForGUIByTask Return list of TaskResults by a Task for GUI #
GET /json/tasksManager/getTaskResultById Returns TaskResult by its id #
GET /json/tasksManager/getTaskById Returns Task by its id #
GET /json/tasksManager/getFacilityState Return propagation status of facility #
GET /json/tasksManager/getAllFacilitiesStates Return propagation status of all facilities in Perun/Vo #
GET /json/tasksManager/getAllResourcesState Return propagation status of all resources related to VO #
GET /json/tasksManager/getTaskResultsForDestinations Returns task results for defined destinations #
GET /json/tasksManager/getFacilityServicesState Returns service states for defined facility #
POST /json/tasksManager/deleteTask Delete Task and TaskResults #
POST /json/tasksManager/deleteTaskResultById Delete TaskResult by its ID #
POST /urlinjsonout/tasksManager/deleteTaskResultsByIds Delete TaskResults by their IDs. #
POST /json/tasksManager/deleteTaskResults/id Delete all TaskResults for specified Task and Destination #
POST /json/tasksManager/deleteTaskResults/name Delete all TaskResults for specified Task and Destination #
POST /urlinjsonout/tasksManager/suspendTasksPropagation Suspends waiting tasks propagation to the engine. #
GET /json/tasksManager/isSuspendedTasksPropagation Check if propagating tasks to engine is suspended via the DB flag #
POST /urlinjsonout/tasksManager/resumeTasksPropagation Resumes previously suspended waiting tasks propagation to the engine #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cesnet:cesnet-tasksmanager-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cesnet-tasksmanager-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 0.0.0
  title: Perun RPC Tasks Manager API
  description: Perun Remote Procedure Calls Application Programming Interface
  contact:
    url: https://perun-aai.org
    email: perun@cesnet.cz
servers:
- url: https://{server}/{authentication}/rpc
  description: Perun RPC server
  variables:
    server:
      default: api-dev.perun-aai.org
      description: DNS name of a Perun server
    authentication:
      default: ba
      description: 'way of authentication:

        ba - HTTP Basic Auth

        krb - Kerberos

        non - no authentication

        cert - X509 client certificate

        oauth - OAuth 2.0 bearer access token

        fed - SAML federation

        '
      enum:
      - ba
      - krb
      - non
      - cert
      - oauth
      - fed
security:
- BasicAuth: []
- BearerAuth: []
tags:
- name: TasksManager
  description: TasksManager RPC API in Perun
  externalDocs:
    url: https://perun-aai.org/documentation/technical-documentation/rpc-api/rpc-javadoc-TasksManager.html
paths:
  /json/tasksManager/getTask:
    get:
      tags:
      - TasksManager
      operationId: getTask
      summary: Returns a task
      parameters:
      - $ref: '#/components/parameters/serviceId'
      - $ref: '#/components/parameters/facilityId'
      responses:
        '200':
          $ref: '#/components/responses/TaskResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/listAllTasks:
    get:
      tags:
      - TasksManager
      operationId: listAllTasks
      summary: Returns all tasks
      responses:
        '200':
          $ref: '#/components/responses/ListOfTasksResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/listAllTasksForFacility:
    get:
      tags:
      - TasksManager
      operationId: listAllTasksForFacility
      summary: Returns all tasks associated with selected facility
      parameters:
      - $ref: '#/components/parameters/facilityId'
      responses:
        '200':
          $ref: '#/components/responses/ListOfTasksResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/isThereSuchTask:
    get:
      tags:
      - TasksManager
      operationId: isThereSuchTask
      summary: Whether task exists
      parameters:
      - $ref: '#/components/parameters/serviceId'
      - $ref: '#/components/parameters/facilityId'
      responses:
        '200':
          $ref: '#/components/responses/IntegerResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/countTasks:
    get:
      tags:
      - TasksManager
      operationId: countTasks
      summary: Returns the count of all tasks
      responses:
        '200':
          $ref: '#/components/responses/IntegerResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getTaskResults:
    get:
      tags:
      - TasksManager
      operationId: getTaskResults
      summary: Returns all task results
      responses:
        '200':
          $ref: '#/components/responses/ListOfTaskResultsResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getTaskResultsByTask:
    get:
      tags:
      - TasksManager
      operationId: getTaskResultsByTask
      summary: Return list of TaskResults by a Task
      parameters:
      - $ref: '#/components/parameters/taskId'
      responses:
        '200':
          $ref: '#/components/responses/ListOfTaskResultsResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getTaskResultsForGUIByTaskOnlyNewest:
    get:
      tags:
      - TasksManager
      operationId: getTaskResultsForGUIByTaskOnlyNewest
      summary: Return list of only newest TaskResults by a Task for GUI
      parameters:
      - $ref: '#/components/parameters/taskId'
      responses:
        '200':
          $ref: '#/components/responses/ListOfTaskResultsResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getTaskResultsForGUIByTaskAndDestination:
    get:
      tags:
      - TasksManager
      operationId: getTaskResultsForGUIByTaskAndDestination
      summary: Return list of TaskResults by a Task and destination for GUI
      parameters:
      - $ref: '#/components/parameters/taskId'
      - $ref: '#/components/parameters/destinationId'
      responses:
        '200':
          $ref: '#/components/responses/ListOfTaskResultsResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getTaskResultsForGUIByTask:
    get:
      tags:
      - TasksManager
      operationId: getTaskResultsForGUIByTask
      summary: Return list of TaskResults by a Task for GUI
      parameters:
      - $ref: '#/components/parameters/taskId'
      responses:
        '200':
          $ref: '#/components/responses/ListOfTaskResultsResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getTaskResultById:
    get:
      tags:
      - TasksManager
      operationId: getTaskResultById
      summary: Returns TaskResult by its id
      parameters:
      - $ref: '#/components/parameters/taskResultId'
      responses:
        '200':
          $ref: '#/components/responses/TaskResultResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getTaskById:
    get:
      tags:
      - TasksManager
      operationId: getTaskById
      summary: Returns Task by its id
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '200':
          $ref: '#/components/responses/TaskResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getFacilityState:
    get:
      tags:
      - TasksManager
      operationId: getFacilityState
      summary: Return propagation status of facility
      parameters:
      - $ref: '#/components/parameters/facilityId'
      responses:
        '200':
          $ref: '#/components/responses/FacilityStateResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getAllFacilitiesStates:
    get:
      tags:
      - TasksManager
      operationId: getAllFacilitiesStates
      summary: Return propagation status of all facilities in Perun/Vo
      parameters:
      - $ref: '#/components/parameters/optionalVoId'
      responses:
        '200':
          $ref: '#/components/responses/ListOfFacilityStatesResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getAllResourcesState:
    get:
      tags:
      - TasksManager
      operationId: getAllResourcesState
      summary: Return propagation status of all resources related to VO
      parameters:
      - name: voId
        description: VO id
        schema:
          type: integer
        in: query
        required: true
      responses:
        '200':
          $ref: '#/components/responses/ListOfResourceStatesResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getTaskResultsForDestinations:
    get:
      tags:
      - TasksManager
      operationId: getTaskResultsForDestinations
      summary: Returns task results for defined destinations
      parameters:
      - name: destinations[]
        in: query
        schema:
          type: array
          items:
            type: string
        description: List<String> Destinations
        required: true
      responses:
        '200':
          $ref: '#/components/responses/ListOfTaskResultsResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/getFacilityServicesState:
    get:
      tags:
      - TasksManager
      operationId: getFacilityServicesState
      summary: Returns service states for defined facility
      parameters:
      - $ref: '#/components/parameters/facilityId'
      responses:
        '200':
          $ref: '#/components/responses/ListOfServiceStatesResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/deleteTask:
    post:
      tags:
      - TasksManager
      operationId: deleteTask
      summary: Delete Task and TaskResults
      responses:
        '200':
          $ref: '#/components/responses/VoidResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: taskIdObject
              description: input to deleteTaskObject
              type: object
              required:
              - task
              properties:
                task:
                  type: integer
                  description: task id
  /json/tasksManager/deleteTaskResultById:
    post:
      tags:
      - TasksManager
      operationId: deleteTaskResultById
      summary: Delete TaskResult by its ID
      responses:
        '200':
          $ref: '#/components/responses/VoidResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: taskResultIdObject
              description: input to deleteTaskResultObject
              type: object
              required:
              - taskResultId
              properties:
                taskResultId:
                  type: integer
                  description: task result id
  /urlinjsonout/tasksManager/deleteTaskResultsByIds:
    post:
      tags:
      - TasksManager
      operationId: deleteTaskResultsByIds
      summary: Delete TaskResults by their IDs.
      parameters:
      - name: taskResultIds
        description: list of TaskResult ids
        schema:
          type: array
          items:
            type: integer
        in: query
        required: true
      responses:
        '200':
          $ref: '#/components/responses/VoidResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/deleteTaskResults/id:
    post:
      tags:
      - TasksManager
      operationId: deleteTaskResultsIds
      summary: Delete all TaskResults for specified Task and Destination
      responses:
        '200':
          $ref: '#/components/responses/VoidResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: taskAndDestinationIdObject
              description: input to deleteTaskResultsIds
              type: object
              required:
              - taskId
              - destinationId
              properties:
                taskId:
                  type: integer
                  description: task id
                destinationId:
                  type: integer
                  description: destination id
  /json/tasksManager/deleteTaskResults/name:
    post:
      tags:
      - TasksManager
      operationId: deleteTaskResultsNames
      summary: Delete all TaskResults for specified Task and Destination
      responses:
        '200':
          $ref: '#/components/responses/VoidResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: taskAndDestinationNameObject
              description: input to deleteTaskResultsNames
              type: object
              required:
              - taskId
              - destinationName
              - destinationType
              properties:
                taskId:
                  type: integer
                  description: task id
                destinationName:
                  type: string
                  description: destination name
                destinationType:
                  type: string
                  description: destination type
  /urlinjsonout/tasksManager/suspendTasksPropagation:
    post:
      tags:
      - TasksManager
      operationId: suspendTasksPropagation
      summary: Suspends waiting tasks propagation to the engine.
      parameters:
      - name: persistently
        schema:
          type: boolean
        in: query
        required: false
        description: optionally remain the suspension through Perun reset
      responses:
        '200':
          $ref: '#/components/responses/VoidResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /json/tasksManager/isSuspendedTasksPropagation:
    get:
      tags:
      - TasksManager
      operationId: isSuspendedTasksPropagation
      summary: Check if propagating tasks to engine is suspended via the DB flag
      responses:
        '200':
          $ref: '#/components/responses/BooleanResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
  /urlinjsonout/tasksManager/resumeTasksPropagation:
    post:
      tags:
      - TasksManager
      operationId: resumeTasksPropagation
      summary: Resumes previously suspended waiting tasks propagation to the engine
      parameters:
      - name: persistently
        schema:
          type: boolean
        in: query
        required: false
        description: optional, resume persistent suspension
      responses:
        '200':
          $ref: '#/components/responses/VoidResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
components:
  schemas:
    FacilityState:
      type: object
      properties:
        facility:
          $ref: '#/components/schemas/Facility'
        state:
          $ref: '#/components/schemas/FacilityPropagationState'
        results:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/FacilityPropagationState'
    PerunException:
      description: exception thrown from inside of Perun
      type: object
      properties:
        errorId:
          type: string
        name:
          type: string
        message:
          type: string
    DestinationPropagationType:
      type: string
      description: type of propagation of service settings to a destination
      enum:
      - PARALLEL
      - SERIAL
      - DUMMY
    PerunBean:
      description: identifiable entity in Perun, common ancestor of all entity classes
      type: object
      properties:
        id:
          type: integer
        beanName:
          type: string
      required:
      - id
      - beanName
      discriminator:
        propertyName: beanName
    Resource:
      allOf:
      - $ref: '#/components/schemas/Auditable'
      properties:
        name:
          type: string
        description:
          type: string
        voId:
          type: integer
        facilityId:
          type: integer
        uuid:
          type: string
          format: uuid
    Service:
      allOf:
      - $ref: '#/components/schemas/Auditable'
      properties:
        name:
          type: string
        description:
          type: string
        delay:
          type: integer
        recurrence:
          type: integer
        enabled:
          type: boolean
        script:
          type: string
        useExpiredMembers:
          type: boolean
        useExpiredVoMembers:
          type: boolean
        useBannedMembers:
          type: boolean
    DestinationType:
      type: string
      description: type of destination, i.e. way of delivery of service settings
      enum:
      - host
      - url
      - user@host
      - user@host:port
      - service-specific
      - user@host-windows
      - host-windows-proxy
      - s3
      - s3-json
      - url-json
    FacilityPropagationState:
      type: string
      enum:
      - OK
      - ERROR
      - PROCESSING
      - NOT_DETERMINED
    Facility:
      allOf:
      - $ref: '#/components/schemas/Auditable'
      properties:
        name:
          type: string
        description:
          type:
          - string
          - 'null'
        uuid:
          type: string
          format: uuid
    TaskResult:
      allOf:
      - $ref: '#/components/schemas/PerunBean'
      properties:
        taskId:
          type: integer
        taskRunId:
          type: integer
        destinationId:
          type: integer
        errorMessage:
          type: string
        standardMessage:
          type: string
        returnCode:
          type: integer
        timestamp:
          type: string
        status:
          $ref: '#/components/schemas/TaskResultStatus'
        destination:
          $ref: '#/components/schemas/Destination'
        service:
          $ref: '#/components/schemas/Service'
    TaskStatus:
      type: string
      enum:
      - WAITING
      - PLANNED
      - GENERATING
      - GENERROR
      - GENERATED
      - SENDING
      - DONE
      - SENDERROR
      - ERROR
      - WARNING
    Destination:
      allOf:
      - $ref: '#/components/schemas/Auditable'
      properties:
        destination:
          type: string
        type:
          $ref: '#/components/schemas/DestinationType'
        propagationType:
          $ref: '#/components/schemas/DestinationPropagationType'
    TaskResultStatus:
      type: string
      enum:
      - DONE
      - ERROR
      - DENIED
      - WARNING
    ServiceState:
      type: object
      properties:
        service:
          $ref: '#/components/schemas/Service'
        facility:
          $ref: '#/components/schemas/Facility'
        task:
          $ref: '#/components/schemas/Task'
        status:
          type: string
        blockedOnFacility:
          type: boolean
        blockedGlobally:
          type: boolean
          readOnly: true
        hasDestinations:
          type: boolean
    Task:
      type: object
      properties:
        id:
          type: integer
        delay:
          type: integer
        recurrence:
          type: integer
        startTime:
          type: string
        sentToEngine:
          type: string
        sendStartTime:
          type: string
        schedule:
          type: string
        genStartTime:
          type: string
        genEndTime:
          type: string
        sendEndTime:
          type: string
        endTime:
          type: string
        service:
          $ref: '#/components/schemas/Service'
        facility:
          $ref: '#/components/schemas/Facility'
        destinations:
          type: array
          items:
            $ref: '#/components/schemas/Destination'
        status:
          $ref: '#/components/schemas/TaskStatus'
        sourceUpdated:
          type: boolean
        propagationForced:
          type: boolean
    ResourceState:
      type: object
      properties:
        resource:
          $ref: '#/components/schemas/Resource'
        taskList:
          type: array
          items:
            $ref: '#/components/schemas/Task'
    Auditable:
      description: represents audit information
      allOf:
      - $ref: '#/components/schemas/PerunBean'
      properties:
        createdAt:
          type:
          - string
          - 'null'
        createdBy:
          type:
          - string
          - 'null'
        modifiedAt:
          type:
          - string
          - 'null'
        modifiedBy:
          type:
          - string
          - 'null'
        createdByUid:
          type:
          - integer
          - 'null'
        modifiedByUid:
          type:
          - integer
          - 'null'
  parameters:
    taskResultId:
      name: taskResult
      description: TaskResult id
      schema:
        type: integer
      required: true
      in: query
    optionalVoId:
      name: vo
      description: id of Vo
      schema:
        type: integer
      in: query
      required: false
    id:
      name: id
      description: numeric id
      schema:
        type: integer
      in: query
      required: true
    serviceId:
      name: service
      description: id of Service
      schema:
        type: integer
      in: query
      required: true
    facilityId:
      name: facility
      description: id of Facility
      schema:
        type: integer
      in: query
      required: true
    taskId:
      name: task
      description: Task id
      schema:
        type: integer
      required: true
      in: query
    destinationId:
      name: destination
      description: id of Destination
      schema:
        type: integer
      in: query
      required: true
  responses:
    ListOfTasksResponse:
      description: List<Task> Tasks
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/Task'
    ListOfResourceStatesResponse:
      description: List<ResourceState> Propagation status
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ResourceState'
    VoidResponse:
      description: returns nothing
    IntegerResponse:
      description: returns Integer
      content:
        application/json:
          schema:
            type: integer
    ListOfServiceStatesResponse:
      description: List<ServiceState> serviceStates
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ServiceState'
    ListOfTaskResultsResponse:
      description: List<TaskResult> Task results
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/TaskResult'
    ExceptionResponse:
      description: exception occurred
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PerunException'
    TaskResultResponse:
      description: Task result
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TaskResult'
    TaskResponse:
      description: Task
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Task'
    ListOfFacilityStatesResponse:
      description: List<FacilityState> Propagation status
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/FacilityState'
    BooleanResponse:
      description: returns Boolean
      content:
        application/json:
          schema:
            type: boolean
    FacilityStateResponse:
      description: Facility state
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FacilityState'
  securitySchemes:
    BasicAuth:
      description: HTTP Basic authentication with username and password
      type: http
      scheme: basic
    BearerAuth:
      description: 'OAuth2 Resource Server authentication using access token in ''Authorization: Bearer'' HTTP header'
      type: http
      scheme: bearer