openapi: 3.2.0 info: title: Cesnet Vos Manager API version: 0.0.0 contact: url: https://perun-aai.org email: perun@cesnet.cz description: 'Operations tagged VosManager 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: VosManager description: VosManager RPC API in Perun externalDocs: url: https://perun-aai.org/documentation/technical-documentation/rpc-api/rpc-javadoc-VosManager.html paths: /json/vosManager/getVos: get: tags: - VosManager operationId: getMyVos summary: Return list of all VOs the caller is associated with responses: '200': $ref: '#/components/responses/ListOfVosResponse' 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 /json/vosManager/getEnrichedVos: get: tags: - VosManager operationId: getMyEnrichedVos summary: Return list of all EnrichedVos the caller is associated with responses: '200': $ref: '#/components/responses/ListOfEnrichedVosResponse' 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 /json/vosManager/getAllVos: get: tags: - VosManager operationId: getAllVos summary: Return list of all VOs in Perun responses: '200': $ref: '#/components/responses/ListOfVosResponse' 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 /urlinjsonout/vosManager/deleteVo: post: tags: - VosManager operationId: deleteVo summary: Deletes a VO. parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/forceDelete' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /json/vosManager/createVo/withVo: post: tags: - VosManager operationId: createVoWithVo summary: Creates new VO. responses: '200': $ref: '#/components/responses/VoResponse' default: $ref: '#/components/responses/ExceptionResponse' requestBody: required: true content: application/json: schema: title: InputCreateVoWithVo description: input to createVoWithVo type: object required: - vo properties: vo: $ref: '#/components/schemas/Vo' 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 /urlinjsonout/vosManager/createVo/withName: post: tags: - VosManager operationId: createVoWithName summary: Creates new VO. Caller is automatically set as VO manager parameters: - name: name description: name - length can be no more than 128 characters schema: type: string in: query required: true - name: shortName description: shortName - can contain only a-z, A-Z, 0-9, '.', '-', '_' and cannot be longer than 32 characters schema: type: string in: query required: true responses: '200': $ref: '#/components/responses/VoResponse' 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 /json/vosManager/updateVo: post: tags: - VosManager operationId: updateVo summary: Updates a VO. responses: '200': $ref: '#/components/responses/VoResponse' default: $ref: '#/components/responses/ExceptionResponse' requestBody: required: true content: application/json: schema: title: InputUpdateVo description: input to updateVo type: object required: - vo properties: vo: $ref: '#/components/schemas/Vo' 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/vosManager/getVoByShortName: get: tags: - VosManager operationId: getVoByShortName summary: Returns a VO by its short name parameters: - name: shortName required: true description: short name of Vo schema: type: string in: query responses: '200': $ref: '#/components/responses/VoResponse' 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 /json/vosManager/getVoById: get: tags: - VosManager operationId: getVoById summary: Returns a virtual organization by id parameters: - $ref: '#/components/parameters/id' responses: '200': $ref: '#/components/responses/VoResponse' 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 /json/vosManager/getEnrichedVoById: get: tags: - VosManager operationId: getEnrichedVoById summary: Returns an enriched virtual organization by id parameters: - $ref: '#/components/parameters/id' responses: '200': $ref: '#/components/responses/EnrichedVoResponse' 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 /json/vosManager/getVosByIds: get: tags: - VosManager operationId: getVosByIds summary: Return list of VOs by their ids parameters: - $ref: '#/components/parameters/ids' responses: '200': $ref: '#/components/responses/ListOfVosResponse' 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 /json/vosManager/findCandidates: get: tags: - VosManager operationId: findCandidates summary: Find candidates for VO. parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/searchString' responses: '200': $ref: '#/components/responses/ListOfCandidatesResponse' 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 /json/vosManager/findCandidates/forGroup: get: tags: - VosManager operationId: findCandidatesForGroup summary: Find candidates for Group. parameters: - $ref: '#/components/parameters/groupId' - $ref: '#/components/parameters/searchString' responses: '200': $ref: '#/components/responses/ListOfCandidatesResponse' 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 /json/vosManager/getCompleteCandidates/forVo: get: tags: - VosManager operationId: getCompleteCandidatesForVo summary: Find MemberCandidates for VO. parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/attrNames' - $ref: '#/components/parameters/searchString' responses: '200': $ref: '#/components/responses/ListOfMemberCandidatesResponse' 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 /json/vosManager/getCompleteCandidates/forGroup: get: tags: - VosManager operationId: getCompleteCandidatesForGroup summary: Find MemberCandidates for GROUP. parameters: - $ref: '#/components/parameters/groupId' - $ref: '#/components/parameters/attrNames' - $ref: '#/components/parameters/searchString' responses: '200': $ref: '#/components/responses/ListOfMemberCandidatesResponse' 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 /json/vosManager/getVosCount: get: tags: - VosManager operationId: getVosCount summary: Gets count of all vos responses: '200': $ref: '#/components/responses/IntegerResponse' 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 /json/vosManager/getVoMembersCountsByStatus: get: tags: - VosManager operationId: getVoMembersCountsByStatus summary: Returns number of vo members by their status parameters: - $ref: '#/components/parameters/voId' responses: '200': $ref: '#/components/responses/MapStringIntegerResponse' 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 /urlinjsonout/vosManager/addAdmin/user: post: tags: - VosManager operationId: addVoAdminUser summary: Adds a user as a Vo admin parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/userId' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /urlinjsonout/vosManager/addAdmin/group: post: tags: - VosManager operationId: addVoAdminGroup summary: Adds a group as a Vo admin parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/authorizedGroup' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /urlinjsonout/vosManager/addSponsorRole/user: post: tags: - VosManager operationId: addSponsorRoleToUser summary: Add user as a sponsor for guest members of VO parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/userId' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /urlinjsonout/vosManager/addSponsorRole/group: post: tags: - VosManager operationId: addSponsorRoleToGroup summary: Add group as a sponsor of guest members of VO. parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/authorizedGroup' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /urlinjsonout/vosManager/removeAdmin/user: post: tags: - VosManager operationId: removeVoAdminUser summary: Removes a user as a Vo admin parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/userId' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /urlinjsonout/vosManager/removeAdmin/group: post: tags: - VosManager operationId: removeVoAdminGroup summary: Removes a group as a Vo admin parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/authorizedGroup' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /urlinjsonout/vosManager/removeSponsorRole/user: post: tags: - VosManager operationId: removeSponsorRoleFromUser summary: Removes user as a sponsor. parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/userId' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /urlinjsonout/vosManager/removeSponsorRole/group: post: tags: - VosManager operationId: removeSponsorRoleFromGroup summary: Removes group as a sponsor. parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/authorizedGroup' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /json/vosManager/getAdmins: get: tags: - VosManager operationId: getVoAdminUsers description: 'Get list of all vo administrators for supported role and specific vo. If onlyDirectAdmins is true, return only direct admins of the vo for supported role. Otherwise return direct admins and users who are VALID members of administrator groups Supported roles: VOOBSERVER, TOPGROUPCREATOR, VOADMIN' parameters: - $ref: '#/components/parameters/voId' - name: role schema: $ref: '#/components/schemas/VoAdminRoles' in: query required: true description: supported role name - name: onlyDirectAdmins schema: type: boolean in: query required: true description: get only direct administrators (if false, get both direct and indirect) responses: '200': $ref: '#/components/responses/ListOfUsersResponse' default: $ref: '#/components/responses/ExceptionResponse' summary: Get vo admin users x-summary-source: derived 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/vosManager/getAdminGroups: get: tags: - VosManager operationId: getVoAdminGroups description: 'Get list of administrator groups of the given VO. Supported roles: VOOBSERVER, TOPGROUPCREATOR, VOADMIN' parameters: - $ref: '#/components/parameters/voId' - name: role schema: $ref: '#/components/schemas/VoAdminRoles' in: query required: true description: supported role name responses: '200': $ref: '#/components/responses/ListOfGroupsResponse' default: $ref: '#/components/responses/ExceptionResponse' summary: Get vo admin groups x-summary-source: derived 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/vosManager/getRichAdmins: get: tags: - VosManager operationId: getRichAdminsForVo description: 'Get list of all richUser administrators for the vo and supported role with specific attributes. If some group is administrator of the given group, all VALID members are included in the list. Supported roles: VOOBSERVER, TOPGROUPCREATOR, VOADMIN If "onlyDirectAdmins" is == true, return only direct admins of the vo for supported role with specific attributes. If "allUserAttributes" is == true, do not specify attributes through list and return them all in objects richUser. Ignoring list of specific attributes.' parameters: - $ref: '#/components/parameters/voId' - name: role schema: $ref: '#/components/schemas/VoAdminRoles' in: query required: true description: role name - $ref: '#/components/parameters/specificAttributes' - name: allUserAttributes schema: type: boolean in: query required: true description: if == true, get all possible user attributes and ignore list of specificAttributes (if false, get only specific attributes) - name: onlyDirectAdmins schema: type: boolean in: query required: true description: if == true, get only direct vo administrators (if false, get both direct and indirect) responses: '200': $ref: '#/components/responses/ListOfRichUsersResponse' default: $ref: '#/components/responses/ExceptionResponse' summary: Get rich admins for vo x-summary-source: derived 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/vosManager/setBan: post: tags: - VosManager operationId: setVoBan description: 'Set ban for member on his vo. The member id is required, validityTo and description are optional. voId is ignored.' responses: '200': $ref: '#/components/responses/BanOnVoResponse' default: $ref: '#/components/responses/ExceptionResponse' requestBody: required: true content: application/json: schema: title: InputSetVoBan description: input to set vo ban type: object required: - banOnVo properties: banOnVo: $ref: '#/components/schemas/BanOnVo' summary: Set vo ban x-summary-source: derived 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 /urlinjsonout/vosManager/removeBan: post: tags: - VosManager operationId: removeVoBan summary: Remove vo ban with given id parameters: - $ref: '#/components/parameters/banId' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /urlinjsonout/vosManager/removeBanForMember: post: tags: - VosManager operationId: removeVoBanForMember summary: Remove vo ban for member with given id parameters: - $ref: '#/components/parameters/memberId' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /json/vosManager/updateBan: post: tags: - VosManager operationId: updateVoBan summary: Update existing ban (description, validation timestamp) responses: '200': $ref: '#/components/responses/BanOnVoResponse' default: $ref: '#/components/responses/ExceptionResponse' requestBody: required: true content: application/json: schema: title: InputUpdateBan description: input to updateBan type: object required: - banOnVo properties: banOnVo: $ref: '#/components/schemas/BanOnVo' 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/vosManager/getBanById: get: tags: - VosManager operationId: getVoBanById summary: Get vo ban with given id parameters: - $ref: '#/components/parameters/banId' responses: '200': $ref: '#/components/responses/BanOnVoResponse' 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 /json/vosManager/getBanForMember: get: tags: - VosManager operationId: getVoBanForMember summary: Get ban for given member, or null if he is not banned parameters: - $ref: '#/components/parameters/memberId' responses: '200': $ref: '#/components/responses/BanOnVoResponse' 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 /json/vosManager/getBansForVo: get: tags: - VosManager operationId: getVoBansForVo summary: Get list of all bans for vo with given id parameters: - $ref: '#/components/parameters/voId' responses: '200': $ref: '#/components/responses/ListOfBanOnVoResponse' 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 /json/vosManager/getEnrichedBansForVo: get: tags: - VosManager operationId: getEnrichedBansForVo summary: Get list of all enriched bans for vo parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/attrNamesOptional' responses: '200': $ref: '#/components/responses/ListOfEnrichedBanOnVoResponse' 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 /json/vosManager/getEnrichedBansForUser: get: tags: - VosManager operationId: getEnrichedVoBansForUser summary: Get list of all enriched bans for user parameters: - $ref: '#/components/parameters/userId' - $ref: '#/components/parameters/attrNamesOptional' responses: '200': $ref: '#/components/responses/ListOfEnrichedBanOnVoResponse' 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 /urlinjsonout/vosManager/addMemberVo: post: tags: - VosManager operationId: addMemberVo summary: Add member vo to vo parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/memberVoId' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /urlinjsonout/vosManager/removeMemberVo: post: tags: - VosManager operationId: removeMemberVo summary: Remove member vo from vo parameters: - $ref: '#/components/parameters/voId' - $ref: '#/components/parameters/memberVoId' responses: '200': $ref: '#/components/responses/VoidResponse' 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 /json/vosManager/getMemberVos: get: tags: - VosManager operationId: getMemberVos summary: Get list of all members organizations of a vo parameters: - $ref: '#/components/parameters/voId' responses: '200': $ref: '#/components/responses/ListOfVosResponse' 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 /json/vosManager/getParentVos: get: tags: - VosManager operationId: getParentVos summary: Get list of all parent organizations of a vo parameters: - $ref: '#/components/parameters/voId' responses: '200': $ref: '#/components/responses/ListOfVosResponse' 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: parameters: attrNamesOptional: name: attrNames[] description: list of attribute names List or null in: query required: false schema: type: array items: type: string authorizedGroup: name: authorizedGroup description: Group id schema: type: integer in: query required: true userId: name: user description: id of User schema: type: integer in: query required: true forceDelete: name: force description: If true, delete entity forcefully. schema: type: boolean in: query required: false voId: name: vo description: id of Vo schema: type: integer in: query required: true ids: name: ids[] description: list of ids List in: query required: true schema: type: array items: type: integer memberId: name: member description: id of Member schema: type: integer in: query required: true attrNames: name: attrNames description: list of attribute names List in: query required: true schema: type: array items: type: string groupId: name: group description: id of Group schema: type: integer in: query required: true banId: name: banId description: id of a ban schema: type: integer in: query required: true specificAttributes: name: specificAttributes description: list of specified attributes which are needed in object richUser schema: type: array items: type: string in: query required: true searchString: name: searchString description: Text to search by schema: type: string in: query required: true memberVoId: name: memberVo description: id of member Vo schema: type: integer in: query required: true id: name: id description: numeric id schema: type: integer in: query required: true schemas: Candidate: allOf: - $ref: '#/components/schemas/User' properties: userExtSource: $ref: '#/components/schemas/UserExtSource' additionalUserExtSources: type: array items: $ref: '#/components/schemas/UserExtSource' attributes: type: object additionalProperties: type: string expectedSyncGroupStatus: type: string AttributeDefinition: allOf: - $ref: '#/components/schemas/Auditable' properties: friendlyName: type: string namespace: type: string description: type: - string - 'null' type: type: string displayName: type: string writable: type: boolean unique: type: boolean friendlyNameParameter: type: string readOnly: true baseFriendlyName: type: string readOnly: true entity: type: string readOnly: true 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 Vo: allOf: - $ref: '#/components/schemas/Auditable' properties: name: type: string shortName: type: string uuid: type: string format: uuid VoAdminRoles: type: string description: admin roles for a Vo enum: - VOOBSERVER - TOPGROUPCREATOR - VOADMIN EnrichedVo: type: object properties: vo: $ref: '#/components/schemas/Vo' memberVos: type: array items: $ref: '#/components/schemas/Vo' parentVos: type: array items: $ref: '#/components/schemas/Vo' RichUser: description: user data packed together with all user attributes and UserExtSources allOf: - $ref: '#/components/schemas/User' properties: userExtSources: type: - array - 'null' items: $ref: '#/components/schemas/UserExtSource' userAttributes: type: - array - 'null' items: $ref: '#/components/schemas/Attribute' required: - userExtSources - userAttributes Ban: allOf: - $ref: '#/components/schemas/Auditable' properties: validityTo: type: string description: type: string EnrichedBanOnVo: type: object properties: vo: $ref: '#/components/schemas/Vo' member: $ref: '#/components/schemas/RichMember' ban: $ref: '#/components/schemas/BanOnVo' RichMember: description: Member data packed with member and user attributes, User and UserExtSources allOf: - $ref: '#/components/schemas/Member' properties: user: $ref: '#/components/schemas/User' userExtSources: type: - array - 'null' items: $ref: '#/components/schemas/UserExtSource' userAttributes: type: - array - 'null' items: $ref: '#/components/schemas/Attribute' memberAttributes: type: - array - 'null' items: $ref: '#/components/schemas/Attribute' required: - user - userExtSources UserExtSource: description: represents specific user authentication or identification in external source of data allOf: - $ref: '#/components/schemas/Auditable' properties: login: type: string userId: type: integer loa: type: integer persistent: type: boolean lastAccess: type: string format: timestamp description: SQL timestamp example: '2012-01-01 00:00:00.100000' extSource: $ref: '#/components/schemas/ExtSource' required: - login - extSource Group: allOf: - $ref: '#/components/schemas/Auditable' type: - object - 'null' properties: name: type: string shortName: type: string description: type: - string - 'null' voId: type: integer parentGroupId: type: - integer - 'null' uuid: type: string format: uuid PerunException: description: exception thrown from inside of Perun type: object properties: errorId: type: string name: type: string message: type: string MemberCandidate: type: object properties: candidate: $ref: '#/components/schemas/Candidate' member: $ref: '#/components/schemas/Member' richUser: $ref: '#/components/schemas/RichUser' ExtSource: description: represents external source of data for users such as an IdP or an HR database allOf: - $ref: '#/components/schemas/Auditable' properties: name: type: string type: type: string 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' 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 Attribute: allOf: - $ref: '#/components/schemas/AttributeDefinition' properties: valueCreatedAt: type: - string - 'null' valueCreatedBy: type: - string - 'null' valueModifiedAt: type: - string - 'null' valueModifiedBy: type: - string - 'null' value: {} BanOnVo: allOf: - $ref: '#/components/schemas/Ban' properties: memberId: type: integer voId: type: integer responses: ListOfEnrichedBanOnVoResponse: description: return List content: application/json: schema: type: array items: $ref: '#/components/schemas/EnrichedBanOnVo' ListOfEnrichedVosResponse: description: returns List content: application/json: schema: type: array items: $ref: '#/components/schemas/EnrichedVo' ListOfBanOnVoResponse: description: return List content: application/json: schema: type: array items: $ref: '#/components/schemas/BanOnVo' VoidResponse: description: returns nothing ListOfGroupsResponse: description: returns List content: application/json: schema: type: array items: $ref: '#/components/schemas/Group' ExceptionResponse: description: exception occurred content: application/json: schema: $ref: '#/components/schemas/PerunException' MapStringIntegerResponse: description: returns Map content: application/json: schema: type: object additionalProperties: type: integer VoResponse: description: returns Vo content: application/json: schema: $ref: '#/components/schemas/Vo' ListOfUsersResponse: description: returns List content: application/json: schema: type: array items: $ref: '#/components/schemas/User' ListOfCandidatesResponse: description: return List content: application/json: schema: type: array items: $ref: '#/components/schemas/Candidate' IntegerResponse: description: returns Integer content: application/json: schema: type: integer ListOfVosResponse: description: returns List content: application/json: schema: type: array items: $ref: '#/components/schemas/Vo' EnrichedVoResponse: description: returns enriched Vo content: application/json: schema: $ref: '#/components/schemas/EnrichedVo' ListOfRichUsersResponse: description: returns List content: application/json: schema: type: array items: $ref: '#/components/schemas/RichUser' BanOnVoResponse: description: returns banOnVo content: application/json: schema: $ref: '#/components/schemas/BanOnVo' ListOfMemberCandidatesResponse: description: return List content: application/json: schema: type: array items: $ref: '#/components/schemas/MemberCandidate' 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