CESNET Searcher API

Searcher RPC API in Perun

Operations 7

POST /json/searcher/getUsers Get list of users who have attributes with specific values #
POST /json/searcher/getMembersByUserAttributes Get list of members who have attributes with specific values #
POST /json/searcher/getMembers Get list of members who have attributes with specific values #
POST /json/searcher/getFacilities Get list of facilities who have attributes with specific values #
POST /json/searcher/getResources/attributes Get list of resources who have attributes with specific values #
POST /json/searcher/getResources/attributes-match Get list of resources that have attributes with partially matched values if… #
GET /json/searcher/globalSearch Performs global search #

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-searcher-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-searcher-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Cesnet Searcher API
  version: 0.0.0
  contact:
    url: https://perun-aai.org
    email: perun@cesnet.cz
  description: 'Operations tagged Searcher across 2 of this provider''s published API definitions: cesnet-perun-rpc-openapi.yml, cesnet-perun-rpc-openapi.yml. Each path carries the servers of the definition it was published in.'
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: Searcher
  description: Searcher RPC API in Perun
  externalDocs:
    url: https://perun-aai.org/documentation/technical-documentation/rpc-api/rpc-javadoc-Searcher.html
paths:
  /json/searcher/getUsers:
    post:
      tags:
      - Searcher
      operationId: getUsersSearcher
      summary: Get list of users who have attributes with specific values
      responses:
        '200':
          $ref: '#/components/responses/ListOfUsersResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: InputGetUsers
              description: Input to getUsers
              type: object
              required:
              - attributesWithSearchingValues
              properties:
                attributesWithSearchingValues:
                  type: object
                  description: Map of attribute names with searching values Map<sting,string>
                  additionalProperties:
                    type: string
    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
  /json/searcher/getMembersByUserAttributes:
    post:
      tags:
      - Searcher
      operationId: getMembersByUserAttributes
      summary: Get list of members who have attributes with specific values
      responses:
        '200':
          $ref: '#/components/responses/ListOfMembersResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: InputGetMembersByUserAttributes
              description: Input to getMembersByUserAttributes
              type: object
              required:
              - vo
              - userAttributesWithSearchingValues
              properties:
                vo:
                  type: integer
                  description: vo id
                userAttributesWithSearchingValues:
                  type: object
                  description: Map of attribute names with searching values Map<string,string>
                  additionalProperties:
                    type: string
    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
  /json/searcher/getMembers:
    post:
      tags:
      - Searcher
      operationId: getMembersSearcher
      summary: Get list of members who have attributes with specific values
      responses:
        '200':
          $ref: '#/components/responses/ListOfMembersResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: InputGetMembersSearcher
              description: Input to getMembersSearcher
              type: object
              required:
              - vo
              - attributesWithSearchingValues
              properties:
                vo:
                  type: integer
                  description: vo id
                attributesWithSearchingValues:
                  type: object
                  description: Map of user and member attribute names with searching values Map<string,string>
                  additionalProperties:
                    type: string
    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
  /json/searcher/getFacilities:
    post:
      tags:
      - Searcher
      operationId: getFacilities
      summary: Get list of facilities who have attributes with specific values
      responses:
        '200':
          $ref: '#/components/responses/ListOfFacilitiesResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: InputGetFacilities
              description: Input to getFacilities
              type: object
              required:
              - attributesWithSearchingValues
              properties:
                attributesWithSearchingValues:
                  type: object
                  description: Map of attribute names with searching values Map<sting,string>
                  additionalProperties:
                    type: string
    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
  /json/searcher/getResources/attributes:
    post:
      tags:
      - Searcher
      operationId: getAttributesResources
      summary: Get list of resources who have attributes with specific values
      responses:
        '200':
          $ref: '#/components/responses/ListOfResourcesResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: InputGetResources
              description: Input to getResources
              type: object
              required:
              - attributesWithSearchingValues
              properties:
                attributesWithSearchingValues:
                  type: object
                  description: Map of attribute names with searching values Map<sting,string>
                  additionalProperties:
                    type: string
    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
  /json/searcher/getResources/attributes-match:
    post:
      tags:
      - Searcher
      operationId: getAttributesMatchResources
      summary: Get list of resources that have attributes with partially matched values if…
      responses:
        '200':
          $ref: '#/components/responses/ListOfResourcesResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: InputGetMatchResources
              description: Input to getResources
              type: object
              required:
              - allowPartialMatchForString
              - attributesWithSearchingValues
              properties:
                allowPartialMatchForString:
                  type: boolean
                  description: True if partial match is allowed
                attributesWithSearchingValues:
                  type: object
                  description: Map of attribute names with searching values Map<sting,string>
                  additionalProperties:
                    type: string
    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
  /json/searcher/globalSearch:
    get:
      tags:
      - Searcher
      operationId: globalSearch
      summary: Performs global search
      parameters:
      - $ref: '#/components/parameters/searchString'
      responses:
        '200':
          $ref: '#/components/responses/MapStringListOfPerunBeanResponse'
        default:
          $ref: '#/components/responses/ExceptionResponse'
    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
components:
  responses:
    ListOfFacilitiesResponse:
      description: returns List<Facility>
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/Facility'
    MapStringListOfPerunBeanResponse:
      description: returns Map<String,List<PerunBean>>
      content:
        application/json:
          schema:
            type: object
            additionalProperties:
              type: array
              items:
                $ref: '#/components/schemas/PerunBean'
    ExceptionResponse:
      description: exception occurred
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PerunException'
    ListOfResourcesResponse:
      description: returns List<Resource>
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/Resource'
    ListOfMembersResponse:
      description: returns List<Member>
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/Member'
    ListOfUsersResponse:
      description: returns List<User>
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/User'
  schemas:
    Facility:
      allOf:
      - $ref: '#/components/schemas/Auditable'
      properties:
        name:
          type: string
        description:
          type:
          - string
          - 'null'
        uuid:
          type: string
          format: uuid
    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
    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'
    Resource:
      allOf:
      - $ref: '#/components/schemas/Auditable'
      properties:
        name:
          type: string
        description:
          type: string
        voId:
          type: integer
        facilityId:
          type: integer
        uuid:
          type: string
          format: uuid
    User:
      description: represents user as a physical person
      allOf:
      - $ref: '#/components/schemas/Auditable'
      properties:
        firstName:
          type:
          - string
          - 'null'
        lastName:
          type:
          - string
          - 'null'
        middleName:
          type:
          - string
          - 'null'
        titleBefore:
          type:
          - string
          - 'null'
        titleAfter:
          type:
          - string
          - 'null'
        serviceUser:
          type: boolean
        sponsoredUser:
          type: boolean
        uuid:
          type: string
          format: uuid
        specificUser:
          type: boolean
        majorSpecificType:
          type: string
    Member:
      description: represents Member of a Virtual Organization
      allOf:
      - $ref: '#/components/schemas/Auditable'
      properties:
        userId:
          type: integer
        voId:
          type: integer
        status:
          type: string
        membershipType:
          type: string
        dualMembership:
          type: boolean
        sourceGroupId:
          type:
          - integer
          - 'null'
        sponsored:
          type: boolean
        groupStatus:
          type: string
        groupStatuses:
          type: object
          additionalProperties:
            type: string
    PerunException:
      description: exception thrown from inside of Perun
      type: object
      properties:
        errorId:
          type: string
        name:
          type: string
        message:
          type: string
  parameters:
    searchString:
      name: searchString
      description: Text to search by
      schema:
        type: string
      in: query
      required: true
  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
x-refined-from:
- cesnet-perun-rpc-openapi.yml
- cesnet-perun-rpc-openapi.yml