{"openapi":"3.0.1","info":{"title":"Crowd Data Center","description":"This is the reference document for the Atlassian Crowd DC REST API. The REST API is for developers who want to: \\n\\n - integrate Crowd with other applications;\\n\\n - create scripts that interact with Crowd; or\\n\\n - develop plugins that enhance the Crowd UI, using REST to interact with the backend. \\n\\n You can read more about developing Crowd plugins in the [Crowd Developer Documentation](https://developer.atlassian.com/server/crowd/).","termsOfService":"https://www.atlassian.com/legal/software-license-agreement","contact":{"name":"Crowd Data Center Jira Project","url":"https://jira.atlassian.com/projects/CWD/summary"},"version":"6.1.3"},"servers":[{"url":"http://{baseurl}/rest","variables":{"baseurl":{"description":"Address of your Crowd instance","default":"example.com:8095"}}}],"tags":[{"name":"Account Management"},{"name":"Alias"},{"name":"Application"},{"name":"Application Admin"},{"name":"Application Licensing"},{"name":"Audit"},{"name":"Backup"},{"name":"Cookie Configuration"},{"name":"Directory"},{"name":"Directory Admin"},{"name":"Group Admin"},{"name":"Group Level Admin"},{"name":"Groups"},{"name":"Groups Membership"},{"name":"LDAP Connection Pool"},{"name":"Look and Feel"},{"name":"Mail Server"},{"name":"Remember Me"},{"name":"SAML Configuration"},{"name":"Search"},{"name":"Server Info"},{"name":"Sessions"},{"name":"Token"},{"name":"User Admin"},{"name":"User Authentication"},{"name":"Users"}],"paths":{"/rest/account/1/change-password":{"post":{"tags":["Account Management"],"summary":"Change password","description":"Changes user's password","operationId":"changePassword","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PasswordChangeRequest"}}}},"responses":{"204":{"description":"the operation succeeded and password was changed"},"400":{"description":"returned if there was an error","content":{"*/*":{"example":{"error":"PASSWORD_POLICY_VIOLATED"}}}}}}},"/rest/account/1/forgotten-password":{"post":{"tags":["Account Management"],"summary":"Forgotten password","description":"Starts the procedure for forgotten password","operationId":"forgottenPassword","parameters":[{"name":"username","in":"query","description":"username for user whose password is going to be reset","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"the operation succeeded or some error occurred, but for security reasons it won't be revealed"},"400":{"description":"returned if users' password can't be reset"}}}},"/rest/account/1/forgotten-username":{"post":{"tags":["Account Management"],"summary":"Forgotten username","description":"Starts the procedure for forgotten username","operationId":"forgottenUsername","parameters":[{"name":"email","in":"query","description":"email for user whose username is going to be reset","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"the operation succeeded or some error occurred, but for security reasons it won't be revealed"}}}},"/rest/account/1/reset-password":{"post":{"tags":["Account Management"],"summary":"Reset password","description":"Resets user's forgotten password","operationId":"resetPassword","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PasswordResetRequest"}}}},"responses":{"204":{"description":"the operation succeeded and password was reset"},"400":{"description":"returned if there was an error","content":{"*/*":{"example":{"error":"PASSWORD_POLICY_VIOLATED"}}}}}}},"/rest/account/1/token-status":{"post":{"tags":["Account Management"],"summary":"Validate Token","description":"Checks whether user's reset token is still valid","operationId":"validateToken","requestBody":{"description":"token to check for validity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenValidRequest"}}}},"responses":{"200":{"description":"the operation succeeded and token validity was retrieved"}}}},"/rest/admin/1.0/application":{"get":{"tags":["Application Admin"],"summary":"Get applications","description":"Returns a paged list of all applications","operationId":"getApplications","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"name","in":"query","description":"name criteria","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"active","in":"query","description":"criteria for status of an application","required":false,"style":"form","explode":true,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"returns all application if the operation succeeded","content":{"application/json":{"example":"{\n values\":[\n {\n \"id\": 1900,\n \"name\": \"crowd\",\n \"description\": \"crowd-app\",\n \"type\": \"CROWD\",\n \"active\": true,\n \"aliasingEnabled\": false,\n \"lowercaseOutput\": false,\n \"aggregateMemberships\": false,\n \"cachedDirectoriesAuthenticationOrderOptimisation\": true,\n \"directoryMappings\": null,\n \"filteringUsersWithAccessEnabled\": null,\n \"filteringGroupsWithAccessEnabled\": null\n },\n {\n \"id\":19,\n \"name\": \"otherApp\",\n \"description\": \"Custom application\",\n \"type\": \"GENERIC_APPLICATION\",\n \"active\": true,\n \"aliasingEnabled\": false,\n \"lowercaseOutput\": false,\n \"aggregateMemberships\": false,\n \"cachedDirectoriesAuthenticationOrderOptimisation\": true,\n \"directoryMappings\": null,\n \"filteringUsersWithAccessEnabled\": null,\n \"filteringGroupsWithAccessEnabled\": null\n }\n ],\n \"size\": 2,\n \"start\": 1,\n \"limit\": 2,\n \"isLastPage\": false\n}\n"}}}}}},"/rest/admin/1.0/application/{applicationId}":{"get":{"tags":["Application Admin"],"summary":"Get application by ID","description":"Returns the application with the specified id","operationId":"getApplication","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"returned if the application was retrieved successfully","content":{"application/json":{"example":{"id":1900,"name":"crowd","description":"crowd-app","type":"CROWD","active":true,"aliasingEnabled":false,"lowercaseOutput":false,"aggregateMemberships":false,"cachedDirectoriesAuthenticationOrderOptimisation":true,"directoryMappings":null,"filteringUsersWithAccessEnabled":null,"filteringGroupsWithAccessEnabled":null}}}},"404":{"description":"returned if the application was not found"}}},"put":{"tags":["Application Admin"],"summary":"Update application","description":"Updates the specified application","operationId":"updateApplication","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"the application's configuration","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApplicationEntity"},"example":{"id":1900,"name":"crowd","description":"crowd-app","type":"CROWD","active":true,"aliasingEnabled":false,"lowercaseOutput":false,"aggregateMemberships":false,"cachedDirectoriesAuthenticationOrderOptimisation":true,"directoryMappings":null,"filteringUsersWithAccessEnabled":null,"filteringGroupsWithAccessEnabled":null}}}},"responses":{"200":{"description":"returned if the application was updated successfully","content":{"application/json":{"example":{"id":1900,"name":"crowd","description":"crowd-app","type":"CROWD","active":true,"aliasingEnabled":false,"lowercaseOutput":false,"aggregateMemberships":false,"cachedDirectoriesAuthenticationOrderOptimisation":true,"directoryMappings":null,"filteringUsersWithAccessEnabled":null,"filteringGroupsWithAccessEnabled":null}}}},"404":{"description":"returned if the application was not found"}}}},"/rest/admin/1.0/application/{applicationId}/access-based-synchronization":{"get":{"tags":["Application Admin"],"summary":"Get access based synchronization","description":"Returns the Current Filter Type for Access Based Synchronization for the given Application","operationId":"getApplicationAccessBasedSynchronizationFilter","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"returned if the current filter type was retrieved successfully","content":{"application/json":{"example":{"filterType":"NO_FILTERING"}}}},"404":{"description":"returned if application was not found"}}},"put":{"tags":["Application Admin"],"summary":"Update access based synchronization","description":"Change the current Filter Type used for Access Based Synchronization for the given Application","operationId":"updateApplicationAccessBasedSynchronizationFilter","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"the entity containing the new filter value","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessBasedSynchronizationFilterTypeEntity"},"example":{"filterType":"NO_FILTERING"}}}},"responses":{"200":{"description":"returned if the current filter type was updated successfully"},"404":{"description":"returned if application was not found"}}}},"/rest/admin/1.0/application/{applicationId}/directory-mapping":{"get":{"tags":["Application Admin"],"summary":"Get directory mappings","description":"The directory mappings of the specified application","operationId":"getApplicationDirectoryMappings","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"returned if the directory mappings were retrieved successfully","content":{"application/json":{"example":{"values":[{"id":123,"name":"Internal directory","authentication":{"allowAll":false,"allowGroups":["crowd-administrators"]},"defaultGroups":["crowd-users"]}],"size":1,"start":2,"limit":1,"isLastPage":false}}}},"404":{"description":"returned if the application was not found"}}},"post":{"tags":["Application Admin"],"summary":"Add directory mapping","description":"Adds a directory mapping to the specified application. It is added as the last mapping for the application","operationId":"addApplicationDirectoryMapping","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"the directory mapping to add to the application","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DirectoryMappingEntity"},"example":{"id":123,"name":null,"authentication":{"allowAll":false,"allowGroups":["crowd-administrators"]},"defaultGroups":["crowd-users"]}}}},"responses":{"201":{"description":"the mapping was successfully created"},"404":{"description":"the application or directory requested doesn't exist"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/application/{applicationId}/directory-mapping/{directoryId}":{"get":{"tags":["Application Admin"],"summary":"Get directory mapping","description":"Returns the specified application's mapping to the specified directory","operationId":"getApplicationDirectoryMapping","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"directoryId","in":"path","description":"the directory's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"returned if the application directory mapping was retrieved successfully","content":{"application/json":{"example":{"id":123,"name":"Internal directory","authentication":{"allowAll":false,"allowGroups":["crowd-administrators"]},"defaultGroups":["crowd-users"]}}}},"404":{"description":"returned if application or directory mapping was not found"}}},"put":{"tags":["Application Admin"],"summary":"Update directory mapping","description":"Updates the specified directory mapping. The fields specified will overwrite the current values. The unspecified fields will not be changed","operationId":"updateApplicationDirectoryMapping","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"directoryId","in":"path","description":"the directory's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"the directory mapping to add to the application","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DirectoryMappingEntity"},"example":{"id":123,"name":null,"authentication":{"allowAll":false,"allowGroups":["crowd-administrators"]},"defaultGroups":["crowd-users"]}}}},"responses":{"200":{"description":"the mapping was successfully created","content":{"application/json":{"example":{"id":123,"name":"Internal directory","authentication":{"allowAll":false,"allowGroups":["crowd-administrators"]},"defaultGroups":["crowd-users"]}}}},"404":{"description":"the application or directory mapping requested doesn't exist"},"409":{"description":"updating the directory mapping would cause an illegal state (for example deny the current user access to the Crowd application)"},"500":{"description":"returned if the operation fails to complete because of server error"}}},"delete":{"tags":["Application Admin"],"summary":"Delete directory mapping","description":"Removes a directory mapping from an application","operationId":"deleteApplicationDirectoryMapping","parameters":[{"name":"applicationId","in":"path","description":"the id of the application to remove the mapping for","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"directoryId","in":"path","description":"the id of the directory to remove the mapping for","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"204":{"description":"the mapping was removed correctly"},"404":{"description":"the application or directory mapping requested doesn't exist"},"409":{"description":"removing the directory mapping would cause an illegal state (for example deny the current user access to the Crowd application)"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/application/{applicationId}/directory-mapping/{directoryId}/move":{"post":{"tags":["Application Admin"],"summary":"Reorder directory mappings","description":"Changes the position of the specified application-directory mapping","operationId":"reorderApplicationDirectoryMapping","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"directoryId","in":"path","description":"the directory's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"the the directory mapping to add to the application","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReorderEntity"},"example":{"after":131073,"position":2}}}},"responses":{"200":{"description":"returned if the application-directory mapping was updated successfully"},"400":{"description":"returned if directory was not found"},"404":{"description":"returned if application or directory mapping was not found"}}}},"/rest/admin/1.0/auditlog":{"post":{"tags":["Audit"],"summary":"Add changeset","description":"Stores a changeset in the audit log","operationId":"addChangeset","requestBody":{"description":"the changeset to store","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditLogChangesetRestDTO"},"example":{"id":1,"timestamp":"2017-04-26T00:00:00.000+0300","author":{"id":1,"name":"admin","displayName":null,"originalName":null,"type":"USER","subtype":null},"authorType":null,"authorId":null,"authorName":null,"eventType":"APPLICATION_CREATED","entityType":null,"entityId":null,"entityName":null,"entities":[{"id":12,"name":"Jira 7.4","displayName":null,"originalName":null,"type":"APPLICATION","subtype":"JIRA","primary":true}],"ipAddress":"127.0.0.1","eventMessage":"Application modified","source":null,"entries":[{"propertyName":"name","oldValue":"JIRA 7.2","newValue":"Jira 7.4"}]}}}},"responses":{"201":{"description":"returned if the given changeset was stored in audit log"}}}},"/rest/admin/1.0/auditlog/configuration":{"get":{"tags":["Audit"],"summary":"Get configuration","description":"Retrieves current audit log configuration","operationId":"getConfiguration_1","responses":{"200":{"description":"returned if configuration was successfully retrieved","content":{"application/json":{"example":{"retentionPeriod":"UNLIMITED"}}}}}},"put":{"tags":["Audit"],"summary":"Set configuration","description":"Saves new audit log configuration","operationId":"setConfiguration","requestBody":{"description":"the changeset to store","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditLogConfigurationEntity"},"example":{"retentionPeriod":"UNLIMITED"}}}},"responses":{"200":{"description":"returned if configuration was successfully saved","content":{"application/json":{"example":{"retentionPeriod":"UNLIMITED"}}}}}}},"/rest/admin/1.0/auditlog/query":{"post":{"tags":["Audit"],"summary":"Search","description":"Searches audit log for entries matching given restrictions. Multiple restrictions for a single category (for example multiple authors) are treated as logical ORs - the resulting changesets must match at least one of them.Restrictions of different categories (for example specifying an author and event type) are treated as logical ANDs - the resulting changesets must match all of them","operationId":"searchAuditLog","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}}],"requestBody":{"description":"search criteria","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditLogQueryRestDTO"},"example":{"onOrAfter":"2017-04-26T00:00:00.000+0300","beforeOrOn":"2017-05-26T00:00:00.000+0300","actions":["USER_UPDATED","APPLICATION_CREATED"],"sources":[],"authors":[{"id":1,"name":"admin","type":"USER"},{"id":null,"name":"jira","type":"APPLICATION"}],"users":[{"id":2,"name":"user"}],"groups":[{"id":4,"name":"jira-administrators"}],"applications":[{"id":5,"name":"jira"}],"directories":[{"id":6,"name":"ad"}]}}}},"responses":{"200":{"description":"search criteria was valid and operation was successful","content":{"application/json":{"example":{"values":[{"id":1,"timestamp":"2017-04-26T00:00:00.000+0300","author":{"id":1,"name":"admin","displayName":null,"originalName":null,"type":"USER","subtype":null},"authorType":null,"authorId":null,"authorName":null,"eventType":"APPLICATION_CREATED","entityType":null,"entityId":null,"entityName":null,"entities":[{"id":12,"name":"Jira 7.4","displayName":null,"originalName":null,"type":"APPLICATION","subtype":"JIRA","primary":true}],"ipAddress":"127.0.0.1","eventMessage":"Application modified","source":null,"entries":[{"propertyName":"name","oldValue":"JIRA 7.2","newValue":"Jira 7.4"}]}],"size":1,"start":0,"limit":1,"isLastPage":false}}}},"400":{"description":"returned if the directory was not found"},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if user not found"},"412":{"description":"returned if the feature is not accessible under current license"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/auditlog/query/filter":{"post":{"tags":["Audit"],"summary":"Get filter values","description":"Returns a list of unique items of the chosen type that exist in changesets matching the specified search restriction","operationId":"getFilterValues","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"search","in":"query","description":"returns only results with a name starting with the given value","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"projection","in":"query","description":"the item type requested. Currently supports 'EVENT_TYPE', 'AUTHOR', 'ENTITY_USER', 'ENTITY_GROUP', 'ENTITY_DIRECTORY', 'ENTITY_APPLICATION', 'SOURCE'","required":false,"style":"form","explode":true,"schema":{"type":"string","enum":["EVENT_TYPE","AUTHOR","ENTITY_USER","ENTITY_GROUP","ENTITY_APPLICATION","ENTITY_DIRECTORY","SOURCE"]}}],"requestBody":{"description":"search criteria","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditLogQueryRestDTO"},"example":{"onOrAfter":"2017-04-26T00:00:00.000+0300","beforeOrOn":"2017-05-26T00:00:00.000+0300","actions":["USER_UPDATED","APPLICATION_CREATED"],"sources":[],"authors":[{"id":1,"name":"admin","type":"USER"},{"id":null,"name":"jira","type":"APPLICATION"}],"users":[{"id":2,"name":"user"}],"groups":[{"id":4,"name":"jira-administrators"}],"applications":[{"id":5,"name":"jira"}],"directories":[{"id":6,"name":"ad"}]}}}},"responses":{"200":{"description":"search criteria was valid and operation was successful","content":{"application/json":{"example":{"values":[{"id":null,"timestamp":null,"author":null,"authorType":"USER","authorId":5,"authorName":"user1","eventType":null,"entityType":null,"entityId":null,"entityName":null,"entities":[],"ipAddress":null,"eventMessage":null,"source":null,"entries":[]},{"id":null,"timestamp":null,"author":null,"authorType":"USER","authorId":null,"authorName":"user3","eventType":null,"entityType":null,"entityId":null,"entityName":null,"entities":[],"ipAddress":null,"eventMessage":null,"source":null,"entries":[]},{"id":12345,"timestamp":null,"author":null,"authorType":"APPLICATION","authorId":null,"authorName":"jira1","eventType":null,"entityType":null,"entityId":null,"entityName":null,"entities":[],"ipAddress":null,"eventMessage":null,"source":null,"entries":[]}],"size":3,"start":0,"limit":50,"isLastPage":true}}}}}}},"/rest/admin/1.0/backup":{"post":{"tags":["Backup"],"summary":"Create backup","description":"Creates manual backup","operationId":"createBackup","requestBody":{"description":"entity with the name of the backup file","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileNameEntity"},"example":{"fileName":"myBackup.xml"}}}},"responses":{"200":{"description":"returned if backup was successfully created","content":{"application/json":{"example":{"timeTaken":1400,"backupFileFullPath":"some/path/to/the/backup/myBackup.xml"}}}},"404":{"description":"if provided parameters are invalid or error occurred while saving configuration"}}}},"/rest/admin/1.0/backup/configuration":{"get":{"tags":["Backup"],"summary":"Get configuration","description":"Returns backup configuration","operationId":"getBackupConfiguration","responses":{"200":{"description":"returned if backup configuration was returned successfully","content":{"application/json":{"example":{"dailyBackupTime":870,"resetDomainEnabled":true,"backupConnectorEnabled":false,"scheduledBackupEnabled":true}}}}}},"post":{"tags":["Backup"],"summary":"Save configuration","description":"Saves backup configuration","operationId":"saveBackupConfiguration","requestBody":{"description":"an entity with configuration of backup","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BackupConfigurationEntity"},"example":{"dailyBackupTime":870,"resetDomainEnabled":true,"backupConnectorEnabled":false,"scheduledBackupEnabled":true}}}},"responses":{"200":{"description":"returned if backup configuration was saved successfully"},"404":{"description":"returned if provided parameters are invalid or error occurred while saving configuration"}}}},"/rest/admin/1.0/backup/summary":{"get":{"tags":["Backup"],"summary":"Get summary","description":"Returns backup summary","operationId":"getBackupInformation","responses":{"200":{"description":"returned if backup summary was returned successfully","content":{"application/json":{"example":{"recentBackupDate":1562934600,"oldestBackupDate":1562848200,"currentTimeOnServer":1563522753}}}}}}},"/rest/admin/1.0/directory/detailed":{"get":{"tags":["Directory Admin"],"summary":"Get detailed directory data list","description":"Lists detailed directory data for all directories which match the search and active criteria queried by the System Admin","operationId":"getDetailedDirectories","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"search","in":"query","description":"search request query","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"active","in":"query","description":"the status of the directories to search","required":false,"style":"form","explode":true,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"a paginated list of detailed directories data matching system admins search criteria","content":{"application/json":{"example":{"values":[{"id":1,"displayName":"Directory One","directoryType":"INTERNAL","descriptiveName":"Crowd Internal Directory","active":true,"synchronizable":false,"synchronizationStatus":null},{"id":2,"displayName":"Directory Two","directoryType":"CONNECTOR","descriptiveName":"Apache Directory Server 1.5.x","active":true,"synchronizable":true,"synchronizationStatus":{"status":"SUCCESS","startDate":0,"endDate":1,"type":"FULL"}}],"size":2,"start":0,"limit":50,"isLastPage":true}}}},"401":{"description":"returned if the current user is not an authorised system admin"},"412":{"description":"returned if the feature is not accessible under current license"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/directory/detailed/{directoryId}":{"get":{"tags":["Directory Admin"],"summary":"Get detailed directory data","description":"Retrieves detailed directory data for directory specified by ID by system admin","operationId":"getDetailedDirectory","parameters":[{"name":"directoryId","in":"path","description":"the directory's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"detailed directory data for specified directory","content":{"application/json":{"example":{"id":1,"displayName":"Directory One","directoryType":"INTERNAL","descriptiveName":"Crowd Internal Directory","active":true,"synchronizable":false,"synchronizationStatus":null}}}},"400":{"description":"returned if the directory requested cannot be found"},"401":{"description":"returned if the current user is not an authorised system admin"},"412":{"description":"returned if the feature is not accessible under current license"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/directory/detailed/{directoryId}/synchronize":{"post":{"tags":["Directory Admin"],"summary":"Schedule synchronisation","description":"Schedules a Synchronisation for the given directory specified","operationId":"scheduleSynchronization","parameters":[{"name":"directoryId","in":"path","description":"the directory's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"synchronisation action was performed successfully"},"400":{"description":"returned if the directory requested cannot be found"},"401":{"description":"returned if the current user is not an authorised system admin"}}}},"/rest/admin/1.0/directory/managed":{"get":{"tags":["Directory Admin"],"summary":"Get managed directories","description":"Lists the directories managed by the logged in user","operationId":"getManagedDirectories","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}}],"responses":{"200":{"description":"the search was performed successfully","content":{"application/json":{"example":{"values":[{"id":1,"displayName":"Directory One","directoryType":"INTERNAL"},{"id":2,"displayName":"Directory Two","directoryType":"INTERNAL"}],"size":2,"start":0,"limit":50,"isLastPage":true}}}},"412":{"description":"returned if the feature is not accessible under current license"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/dynamic-ldap-pool-statistics":{"get":{"tags":["LDAP Connection Pool"],"summary":"Get statistics","description":"Lists the statistics of the Dynamic LDAP connection pools per directory","operationId":"getDynamicLdapPoolsStatistics","responses":{"200":{"description":"dynamic pool statistics returned successfully","content":{"application/json":{"example":{"1":{"numActive":20,"numActiveRead":15,"numActiveWrite":5,"numIdle":5,"numIdleRead":3,"numIdleWrite":2,"numWaiters":0},"2":{"numActive":10,"numActiveRead":5,"numActiveWrite":5,"numIdle":0,"numIdleRead":0,"numIdleWrite":0,"numWaiters":0}}}}}}}},"/rest/admin/1.0/group-level-admin/{groupId}/admins":{"get":{"tags":["Group Level Admin"],"summary":"Get group administrators","description":"Lists the group-level admins for the specified group","operationId":"getGroupAdministrators","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"groupId","in":"path","description":"the group's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"the search was performed successfully. Returns a paginated list of group-level-administrators","content":{"application/json":{"example":{"values":[{"entity":{"id":"1-Z3JvdXAx","type":"GROUP"},"name":"group1","displayName":null,"directory":{"id":1,"displayName":"Directory One","directoryType":"INTERNAL"},"email":null,"active":null},{"entity":{"id":"2-dXNlcjE","type":"USER"},"name":"user1","displayName":"User One","directory":{"id":1,"displayName":"Directory One","directoryType":"INTERNAL"},"email":"user@company.com","active":true}],"size":2,"start":2,"limit":2,"isLastPage":false}}}},"400":{"description":"returned if the group to be administered or any of the group admins belongs to a non-existent directory"},"404":{"description":"returned if the group that should be administered cannot be found"},"412":{"description":"returned if the feature is not accessible under current license"}}},"post":{"tags":["Group Level Admin"],"summary":"Add group administrators","description":"Grants the rights to administer the specified group to the specified directory entities","operationId":"addGroupAdministrators","parameters":[{"name":"groupId","in":"path","description":"the group's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"requestBody":{"description":"the identifiers and types of entities that should become admins of the specified group","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DirectoryEntityRestDTO"}},"example":[{"id":"1-dXNlcjE","type":"USER"},{"id":"2-Z3JvdXAx","type":"GROUP"}]}}},"responses":{"200":{"description":"the search was performed successfully","content":{"application/json":{"example":{"successes":["1-dXNlcjE"],"failures":[{"entity":"1-dXNlcjE","reason":"The entity does not exist"}]}}}},"400":{"description":"returned if the group to be administered or any of the group admins belongs to a non-existent directory"},"404":{"description":"returned if the group that should be administered cannot be found"},"412":{"description":"returned if the feature is not accessible under current license"}}}},"/rest/admin/1.0/group-level-admin/{groupId}/admins/groups/{adminId}":{"delete":{"tags":["Group Level Admin"],"summary":"Revoke group to group administrator","description":"Revokes the rights to administer the given group from the specified group","operationId":"deleteGroupGroupAdministrator","parameters":[{"name":"groupId","in":"path","description":"the identifier of the group to which the rights will be revoked","required":true,"style":"simple","explode":false,"schema":{"type":"string"}},{"name":"adminId","in":"path","description":"the identifier of the group from which the rights will be revoked","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"the rights were revoked successfully"},"400":{"description":"returned if the administered group or the admin group belongs to a non-existent directory"},"404":{"description":"returned if the administered group or the admin group cannot be found"},"412":{"description":"returned if the feature is not accessible under current license"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/group-level-admin/{groupId}/admins/suggestions":{"get":{"tags":["Group Level Admin"],"summary":"Get administrator candidates","description":"Returns users and groups that can become admins of the given group","operationId":"getAdminCandidates","parameters":[{"name":"groupId","in":"path","description":"the unique identifier of the group","required":true,"style":"simple","explode":false,"schema":{"type":"string"}},{"name":"search","in":"query","description":"user/group search string","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"maximum number of results returned from the search","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":100}}],"responses":{"200":{"description":"the rights were revoked successfully","content":{"application/json":{"example":{"values":[{"entity":{"id":"0-UG93ZXIgdXNlcnM","type":"GROUP"},"name":"Power users","displayName":null,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"},"email":null,"active":true},{"entity":{"id":"1-VGVzdGVycw","type":"GROUP"},"name":"Testers","displayName":null,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"},"email":null,"active":true},{"entity":{"id":null,"type":"USER"},"name":"ariel","displayName":null,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"},"email":"ariel@some.domain.com","active":true},{"entity":{"id":null,"type":"USER"},"name":"carie","displayName":null,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"},"email":"carie@some.domain.com","active":true}],"size":4,"start":0,"limit":10,"isLastPage":true}}}},"401":{"description":"returned if user does not have permission to perform this operation"},"404":{"description":"returned if the group to administer or current was not found"},"412":{"description":"returned if the feature is not accessible under current license"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/group-level-admin/{groupId}/admins/users/{adminId}":{"delete":{"tags":["Group Level Admin"],"summary":"Revoke user to group administrator","description":"Revokes the rights to administer the given group from the specified user","operationId":"deleteUserGroupAdministrator","parameters":[{"name":"groupId","in":"path","description":"the identifier of the group to which the rights will be revoked","required":true,"style":"simple","explode":false,"schema":{"type":"string"}},{"name":"adminId","in":"path","description":"the identifier of the user from whom the rights will be revoked","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"the rights were revoked successfully"},"400":{"description":"returned if the administered group or the admin user belongs to a non-existent directory"},"404":{"description":"returned if the administered group or the admin user cannot be found"},"412":{"description":"returned if the feature is not accessible under current license"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/group/search/{directoryId}":{"get":{"tags":["Group Admin"],"summary":"Search directory groups","description":"Searches the given directory for groups matching the search term","operationId":"searchDirectoryGroups","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"directoryId","in":"path","description":"the id of the directory to search","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"term","in":"query","description":"the search term","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"active","in":"query","description":"status of the groups to search","required":false,"style":"form","explode":true,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"a paginated list of groups","content":{"application/json":{"example":{"values":[{"id":"1-Y3Jvd2QtYWRtaW5pc3RyYXRvcnM","active":true,"name":"crowd-administrators","description":"Crowd administrators"},{"id":"1-Y3Jvd2QtYWRtaW5pc3RyYXRvcnM","active":true,"name":"crowd-administrators","description":"Crowd administrators"}],"size":2,"start":1,"limit":2,"isLastPage":false}}}}}}},"/rest/admin/1.0/group/{groupId}/groups":{"get":{"tags":["Group Admin"],"summary":"Get nested groups","description":"Returns group's direct members (groups)","operationId":"getNestedGroups","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"groupId","in":"path","description":"the group's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"a paginated list of nested groups","content":{"application/json":{"example":"{\n \"values\" : [ {\n \"id\" : \"1-Y3Jvd2QtYWRtaW5pc3RyYXRvcnM\",\n \"active\" : true,\n \"name\" : \"crowd-administrators\",\n \"description\" : \"Crowd administrators\"\n }, {\" +\n \"id\" : \"1-Y3Jvd2QtYWRtaW5pc3RyYXRvcnM\",\n \"active\" : true,\n \"name\" : \"crowd-administrators\",\n \"description\" : \"Crowd administrators\"\n } ],\n \"size\" : 2,\n \"start\" : 1,\n \"limit\" : 2,\n \"isLastPage\" : false\n}\"\n"}}},"400":{"description":"returned if the directory was not found"},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if the group was not found"},"500":{"description":"returned if the operation fails to complete because of server error"}}},"post":{"tags":["Group Admin"],"summary":"Add groups","description":"Adds multiple groups to a single group placed in the same directory","operationId":"addGroupsToGroup","parameters":[{"name":"groupId","in":"path","description":"the group's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"requestBody":{"description":"entity with group's unique identifiers","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GroupIdentifiersEntityList"},"example":{"ids":["1900-Y3Jvd2QtdXNlcnM","1900-YmFkZ2Vycw","1900-c3Rhc2gtdXNlcnM"]}}}},"responses":{"200":{"description":"returned if operation of adding users to group was completed","content":{"application/json":{"example":{"successes":["1900-Y3Jvd2QtdXNlcnM"],"failures":[{"entity":"1900-YmFkZ2Vycw","reason":"Some reason of failure"},{"entity":"1900-c3Rhc2gtdXNlcnM","reason":"Another reason of failure"}]}}}},"400":{"description":"returned if the directory was not found"},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if the group was not found"},"409":{"description":"returned if the directory does not support the operation"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/groups/query":{"post":{"tags":["Groups Membership"],"summary":"Search administered groups","description":"Returns groups that are administered by logged in user","operationId":"searchAdministeredGroups","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}}],"requestBody":{"description":"the filter that the result should match","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GroupsFilter"},"example":"{\n \"search\" : \"admins\",\n \"directoryId\" : 1900\n}\"\n"}}},"responses":{"200":{"description":"returned if groups were successfully retrieved","content":{"application/json":{"example":{"values":[{"id":"1900-Z3JvdXAx","displayName":"group1","description":"The best group","directory":{"id":19,"displayName":"mainDirectory","directoryType":"INTERNAL"}},{"id":"1900-Z3JvdXAy","displayName":"group2","description":"The most valuable group","directory":{"id":19,"displayName":"mainDirectory","directoryType":"INTERNAL"}}],"size":2,"start":0,"limit":2,"isLastPage":false}}}},"400":{"description":"returned if the filter directory was not found"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/groups/{groupId}":{"get":{"tags":["Groups Membership"],"summary":"Get group details","description":"Returns group details","operationId":"groupDetails","parameters":[{"name":"groupId","in":"path","description":"the group's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"returned if group details were successfully retrieved","content":{"application/json":{"example":{"id":null,"displayName":"groupName","description":null,"directory":{"id":19,"displayName":"mainDirectory","directoryType":"INTERNAL"}}}}},"400":{"description":"returned if directory was not found"},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if group was not found"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/groups/{groupId}/users":{"get":{"tags":["Groups Membership"],"summary":"Get group members","description":"Returns group's direct members (users)","operationId":"groupMembers","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"groupId","in":"path","description":"the group's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"returned if group's direct members were successfully retrieved","content":{"application/json":{"example":{"id":null,"displayName":"groupName","description":null,"directory":{"id":19,"displayName":"mainDirectory","directoryType":"INTERNAL"}}}}},"400":{"description":"returned if directory was not found"},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if group was not found"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"},"500":{"description":"returned if the operation fails to complete because of server error"}}},"post":{"tags":["Groups Membership"],"summary":"Add users to group","description":"Adds multiple users to a single group placed in the same directory","operationId":"addUsersToGroup","parameters":[{"name":"groupId","in":"path","description":"the group's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"requestBody":{"description":"Entity with user's unique identifiers","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserIdentifiersEntityList"},"example":{"ids":["1900-Z3JvdXAx","1900-Z3JvdXAy","1900-Z3JvdXAz"]}}}},"responses":{"200":{"description":"returned if operation of adding users to group was completed","content":{"application/json":{"example":{"successes":["1900-Z3JvdXAx"],"failures":[{"entity":"1900-Z3JvdXAy","reason":"Some reason of failure"},{"entity":"1900-Z3JvdXAz","reason":"Another reason of failure"}]}}}},"400":{"description":"returned if directory was not found"},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if group was not found"},"409":{"description":"returned if the directory does not support the operation"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"},"500":{"description":"returned if the operation fails to complete because of server error"}}},"delete":{"tags":["Groups Membership"],"summary":"Remove users from group","description":"Removes multiple users from single group placed in the same directory","operationId":"removeUsersFromGroup","parameters":[{"name":"groupId","in":"path","description":"the group's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"requestBody":{"description":"Entity with user's unique identifiers","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserIdentifiersEntityList"},"example":{"ids":["1900-Z3JvdXAx","1900-Z3JvdXAy","1900-Z3JvdXAz"]}}}},"responses":{"200":{"description":"returned if operation of removing users from group was completed","content":{"application/json":{"example":{"successes":["1900-Z3JvdXAx"],"failures":[{"entity":"1900-Z3JvdXAy","reason":"Some reason of failure"},{"entity":"1900-Z3JvdXAz","reason":"Another reason of failure"}]}}}},"400":{"description":"returned if directory was not found"},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if group was not found"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/groups/{groupId}/users/suggestions":{"get":{"tags":["Groups Membership"],"summary":"Search users","description":"Returns users that can be assigned to the given group","operationId":"searchUsers_1","parameters":[{"name":"groupId","in":"path","description":"the group's unique identifier to which users would be assigned","required":true,"style":"simple","explode":false,"schema":{"type":"string"}},{"name":"search","in":"query","description":"user search string","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"maximum number of results returned from the search","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":100}}],"responses":{"200":{"description":"returned if users assignable to the group were successfully retrieved","content":{"application/json":{"example":{"values":[{"username":"ariel","email":"ariel@some.domain.com","active":true,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"}},{"username":"carie","email":"carie@some.domain.com","active":true,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"}},{"username":"clarita","email":"clarita@some.domain.com","active":true,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"}},{"username":"john","email":"john@some.domain.com","active":true,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"}},{"username":"libby","email":"libby@some.domain.com","active":true,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"}},{"username":"magdalena","email":"magdalena@some.domain.com","active":true,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"}},{"username":"naomi","email":"naomi@some.domain.com","active":true,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"}},{"username":"patricia","email":"patricia@some.domain.com","active":true,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"}},{"username":"starwars","email":"starwars@some.domain.com","active":true,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"}},{"username":"winona","email":"winona@some.domain.com","active":true,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"}}],"size":10,"start":0,"limit":10,"isLastPage":false}}}},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if the group or current user was not found"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/licensing/{applicationId}/directories":{"get":{"tags":["Application Licensing"],"summary":"Get directories","description":"Returns list of directories linked to the users who are consuming licenses in the given application, matching provided version of data and subtype of the application, if it's Jira","operationId":"listDirectories","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"version","in":"query","description":"licensing data version","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64"}},{"name":"jiraType","in":"query","description":"subtype of Jira, only if the application type is Jira","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"returned if the list of directories was successfully retrieved","content":{"application/json":{"example":{"values":[{"id":"743","name":"Crowd users directory","isLocalCrowd":true},{"id":"9714","name":"My awesome directory","isLocalCrowd":false}],"size":2,"start":2,"limit":2,"isLastPage":false}}}},"404":{"description":"returned if application id is not associated with any application"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"}}}},"/rest/admin/1.0/licensing/{applicationId}/jira-types":{"get":{"tags":["Application Licensing"],"summary":"Get Jira types","description":"Returns list of application sub-types available for the given Jira application","operationId":"listJiraTypes","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"version","in":"query","description":"licensing data version","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"returned if Jira subtypes were successfully retrieved","content":{"application/json":{"example":{"values":[{"key":"jira-servicedesk","displayName":"Jira Service Desk"},{"key":"jira-software","displayName":"Jira Software"},{"key":"bitbucket","displayName":"Bitbucket"},{"key":"confluence","displayName":"Confluence"},{"key":"jira-core","displayName":"Jira Core"}]}}}},"400":{"description":"returned if version of data is not provided or given application is different than Jira"},"404":{"description":"returned if application id is not associated with any application"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"}}}},"/rest/admin/1.0/licensing/{applicationId}/licensed-users/download":{"get":{"tags":["Application Licensing"],"summary":"Export users","description":"Returns license consuming users for given application, matching provided restrictions","operationId":"exportLicensedUsers","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"search","in":"query","description":"search text","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"directoryId","in":"query","description":"the directory's identifier","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"jiraType","in":"query","description":"subtype, required only for Jira application","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"lastLoginBefore","in":"query","description":"last logged in date on or before","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64"}},{"name":"searchVersion","in":"query","description":"licensing data version","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"returned if download was performed successfully"},"404":{"description":"returned if application id is not associated with any application or directory id with any directory"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"}}}},"/rest/admin/1.0/licensing/{applicationId}/licensed-users/search":{"post":{"tags":["Application Licensing"],"summary":"Search users","description":"Searches license consuming users along with the total count of users for given application, matching provided restrictions","operationId":"searchLicensedUsers","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"search criteria","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LicensedUserSearchParameters"},"example":{"search":"jon","directoryId":"5324","jiraType":"jira-software","lastLoginBefore":1550008800000,"searchVersion":3947145}}}},"responses":{"200":{"description":"returned if the search was performed successfully and licensed users were successfully retrieved","content":{"application/json":{"example":{"values":[{"id":4324,"lastLogin":1556226000000,"username":"jonbovi","fullName":"Jon Bovi","email":"jon@bovi.com"},{"id":1528,"lastLogin":1557694800000,"username":"johnkowal","fullName":"John Kowal","email":"john@kowal.com"}],"size":2,"start":21,"limit":2,"totalCount":150,"isLastPage":false,"upToDate":true}}}},"404":{"description":"returned if requested application or directory does not exist"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"}}}},"/rest/admin/1.0/licensing/{applicationId}/summary":{"get":{"tags":["Application Licensing"],"summary":"Get licensing summary","description":"Return the licensing summary if available","operationId":"getLicensingSummary","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"version","in":"query","description":"licensing data version","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64"}},{"name":"jiraType","in":"query","description":"subtype, required only for Jira application","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"returned if licensing summary was successfully retrieved","content":{"application/json":{"example":{"maximumUserLimit":300,"totalLicensedUsers":24,"numberOfDirectories":2,"timestamp":1559768400000,"version":5347545,"jiraType":"jira-software","status":"LOADING"}}}},"404":{"description":"returned if application id is not associated with any application"},"412":{"description":"returned if feature is disabled or is inaccessible due to license type"}}}},"/rest/admin/1.0/look-and-feel/config":{"get":{"tags":["Look and Feel"],"summary":"Get configuration","description":"Returns Look and Feel configuration if configured, empty body otherwise","operationId":"getConfig","responses":{"201":{"description":"returned if the look and feel configuration was retrieved successfully","content":{"application/json":{"example":{"showLogo":true,"logo":"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","customLogoId":"logo-123","header":"Hello!","welcomeText":"Provide your credentials bellow.","primaryColor":"#121212","showAnnouncement":false,"announcementText":"Announcement"}}}}}},"put":{"tags":["Look and Feel"],"summary":"Update configuration","description":"Saves Look and Feel configuration","operationId":"updateConfig","requestBody":{"description":"an entity with Look and Feel configuration","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LookAndFeelConfigEntity"},"example":{"showLogo":true,"logo":"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","customLogoId":"logo-123","header":"Hello!","welcomeText":"Provide your credentials bellow.","primaryColor":"#121212","showAnnouncement":false,"announcementText":"Announcement"}}}},"responses":{"204":{"description":"returned if the look and feel configuration was updated successfully"}}}},"/rest/admin/1.0/look-and-feel/reset-config":{"post":{"tags":["Look and Feel"],"summary":"Delete configuration","description":"Removes Look and Feel configuration","operationId":"removeConfiguration","responses":{"204":{"description":"returned if the look and feel configuration was reset successfully"}}}},"/rest/admin/1.0/mail/configuration":{"post":{"tags":["Mail Server"],"summary":"Save configuration","description":"Saves mail configuration","operationId":"saveConfiguration","requestBody":{"description":"An entity with data required to connect to the server. OAuth2 authentication method requires browser initiated 'Authorize' action to be completed successfully. OAuth2 configuration id and mail server id should be included in the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MailServerConfigurationEntity"}}}},"responses":{"200":{"description":"returned if saving was success"},"400":{"description":"returned if saving failed (validation failed)"}}}},"/rest/admin/1.0/mail/configuration/test":{"post":{"tags":["Mail Server"],"summary":"Test mail server connection","description":"Tests connection to the specified SMTP server","operationId":"testMailServerConnection","requestBody":{"description":"An entity with data required to connect to the server. OAuth2 authentication method requires browser initiated 'Authorize' action to be completed successfully. OAuth2 configuration id and mail server id should be included in the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MailServerConfigurationEntity"}}}},"responses":{"200":{"description":"returned if the test was completed","content":{"application/json":{"example":{"logs":"Cannot connect to host `host.com`","success":false}}}},"400":{"description":"returned if provided parameters are invalid"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/mail/configuration/validate":{"post":{"tags":["Mail Server"],"summary":"Validate fields","description":"Validates fields required in test connection for mail server","operationId":"validateFields","requestBody":{"description":"An entity with data required to connect to the server. OAuth2 authentication method requires browser initiated 'Authorize' action to be completed successfully. OAuth2 configuration id and mail server id should be included in the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MailServerConfigurationEntity"}}}},"responses":{"200":{"description":"returned if validation was success"},"400":{"description":"returned if validation failed"}}}},"/rest/admin/1.0/remember-me/config":{"get":{"tags":["Remember Me"],"summary":"Get configuration","description":"Returns the current remember-me configuration","operationId":"getConfiguration","responses":{"200":{"description":"returned if fetching the current configuration was successful","content":{"application/json":{"example":{"expirationPeriod":300,"enabled":true}}}}}},"put":{"tags":["Remember Me"],"summary":"Update configuration","description":"Updates the remember me configuration","operationId":"saveConfiguration_1","requestBody":{"description":"an entity with Remember Me configuration","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RememberMeConfigurationEntity"},"example":{"expirationPeriod":300,"enabled":true}}}},"responses":{"204":{"description":"returned if saving the configuration was successful","content":{"application/json":{"example":{"expirationPeriod":300,"enabled":true}}}}}}},"/rest/admin/1.0/remember-me/expire-all":{"post":{"tags":["Remember Me"],"summary":"Expire all tokens","description":"Expires all active remember-me tokens","operationId":"expireAllTokens","responses":{"204":{"description":"returned if the tokens have been successfully expired"}}}},"/rest/admin/1.0/samlconfig":{"get":{"tags":["SAML Configuration"],"summary":"Get configuration","description":"Returns the global SAML configuration","operationId":"getSamlConfiguration","responses":{"200":{"description":"returned if global SAML configuration was successfully retrieved","content":{"application/json":{"example":"{\n \"issuer\" : \"https://supercrowd:7657/crowd\",\n \"ssoUrl\" : \"https://supercrowd:7657/crowd/sso/sign\",\n \"certificateFormat\" : \"PEM\",\n \"certificate\" : \"-----BEGIN CERTIFICATE-----\\nMIICpzCCAhACAg4AMA0GCSqGSIb3DQEBBQUAMIGbMQswCQYDVQQGEwJKUDEOMAwG\\nA1UECBMFVG9reW8xEDAOBgNVBAcTB0NodW8ta3UxETAPBgNVBAoTCEZyYW5rNERE\\nMRgwFgYDVQQLEw9XZWJDZXJ0IFN1cHBvcnQxGDAWBgNVBAMTD0ZyYW5rNEREIFdl\\nYiBDQTEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBmcmFuazRkZC5jb20wHhcNMTIw\\nODIyMDcyNjQzWhcNMTcwODIxMDcyNjQzWjBKMQswCQYDVQQGEwJKUDEOMAwGA1UE\\nCAwFVG9reW8xETAPBgNVBAoMCEZyYW5rNEREMRgwFgYDVQQDDA93d3cuZXhhbXBs\\nZS5jb20wgfAwgagGByqGSM44BAEwgZwCQQDKVt7ZYtFRCzrm2/NTjl45YtMgVctQ\\npLadAowFRydY13uhGw+JXyM+qmngfQkXImQpoYdIe+A8DWG2vaO3wKQ3AhUAxx6d\\neaDs+XNHcbsiVQ1osvxrG8sCQHQYZDlSy/A5AFXrWXUNlTJbNhWDnitiG/95qYCe\\nFGnwYPp/WyhX+/lbDmQujkrbd4wYStudZM0cc4iDAWeOHQ0DQwACQDtK/S6POMQE\\n8aI+skBdNQn+Ch76kNDhztC/suOr9FbCSxnZ/CfhSgE1phOJyEkdR2jgErl3uh51\\nlo+7to76LLUwDQYJKoZIhvcNAQEFBQADgYEAnrmxZ3HB0LmVoFYdBJWxNBkRaFyn\\njBmRsSJp2xvFg2nyAF77AOqBuFOFqOxg04eDxH8TGLQOWjqdyCFCY79AQlmkdB+8\\nZ5SWqPEwLJHVLd91O9avQwwRQT5TAxGXFkHTlQxOoaGfTsVQFqSDnlYC4mFjspA7\\nW+K8+llxOFmtVzU=\\n-----END CERTIFICATE-----\\n\",\n \"expirationDate\" : 1544616405123\n}\"\n"}}},"401":{"description":"returned if user has no permission to perform this operation"}}}},"/rest/admin/1.0/samlconfig/application/parse_metadata":{"post":{"tags":["SAML Configuration"],"summary":"Parse metadata","description":"Parses application metadata.","operationId":"parseApplicationMetadata","requestBody":{"description":"search criteria","content":{"application/octet-stream":{"schema":{"type":"object"},"example":"\n \n \n \"\n\"\n"}}},"responses":{"200":{"description":"returned if application SAML configuration was successfully retrieved","content":{"application/json":{"example":{"entityId":"http://my.service.com","assertionConsumerUrl":"http://my.service.com/SAML2/SSO/POST","enabled":null,"nameIdFormat":"UNSPECIFIED","addUserAttributesEnabled":false}}}},"401":{"description":"returned if there were issues while generating IdP's metadata occurs"}}}},"/rest/admin/1.0/samlconfig/application/parse_metadata_multipart":{"post":{"tags":["SAML Configuration"],"summary":"Parse metadata file","description":"Parses application metadata.","operationId":"parseApplicationMetadata_1","requestBody":{"description":"search criteria","content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FilePart"},"example":"\n \n \n \"\n\"\n"}}},"responses":{"200":{"description":"returned if application SAML configuration was successfully retrieved","content":{"application/json":{"example":{"entityId":"http://my.service.com","assertionConsumerUrl":"http://my.service.com/SAML2/SSO/POST","enabled":null,"nameIdFormat":"UNSPECIFIED","addUserAttributesEnabled":false}}}},"401":{"description":"returned if there were issues while generating IdP's metadata occurs"}}}},"/rest/admin/1.0/samlconfig/application/{applicationId}":{"get":{"tags":["SAML Configuration"],"summary":"Get application configuration","description":"Returns SAML configuration","operationId":"getConfiguration_2","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"returned if application SAML configuration was successfully retrieved","content":{"application/json":{"example":{"entityId":"http://my.service.com","assertionConsumerUrl":"http://my.service.com/SAML2/SSO/POST","enabled":true,"nameIdFormat":"UNSPECIFIED","addUserAttributesEnabled":false}}}},"401":{"description":"returned if user has no permission to perform this operation"}}},"post":{"tags":["SAML Configuration"],"summary":"Update application configuration","description":"Updates SAML configuration for a specified application","operationId":"updateApplicationConfiguration","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"Entity for application SAML configuration","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApplicationSamlConfigurationRestEntity"},"example":{"entityId":"http://my.service.com","assertionConsumerUrl":"http://my.service.com/SAML2/SSO/POST","enabled":true,"nameIdFormat":"UNSPECIFIED","addUserAttributesEnabled":false}}}},"responses":{"200":{"description":"returned if application SAML configuration was successfully created"},"400":{"description":"returned if user has no permission to perform this operation","content":{"application/json":{"example":{"ASSERTION_CONSUMER_URL":"EMPTY","ENTITY_ID":"NOT_UNIQUE"}}}}}}},"/rest/admin/1.0/samlconfig/application/{applicationId}/directory-mapping-mismatch":{"get":{"tags":["SAML Configuration"],"summary":"Find directory mappings mismatch","description":"Compares the directory mappings of application with crowd application","operationId":"findDirectoryMappingsMismatch","parameters":[{"name":"applicationId","in":"path","description":"the application's identifier to compare with crowd","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"returned if a mismatch is found","content":{"application/json":{"example":{"entity":null,"reason":"Directory mappings in Crowd and Jira are not same"}}}},"204":{"description":"returned if no mismatch have been found"}}}},"/rest/admin/1.0/samlconfig/idp/metadata":{"get":{"tags":["SAML Configuration"],"summary":"Get identity provider metadata","description":"Returns Identity provider's metadata","operationId":"getIdpMetadata","responses":{"200":{"description":"returned if application SAML configuration was successfully retrieved","content":{"application/xml":{"example":"\"\n \n \n \n \n \n \n MIICpzCCAhACAg4AMA0GCSqGSIb3DQEBBQUAMIGbMQswCQYDVQQGEwJKUDEOMAwG\n A1UECBMFVG9reW8xEDAOBgNVBAcTB0NodW8ta3UxETAPBgNVBAoTCEZyYW5rNERE\n MRgwFgYDVQQLEw9XZWJDZXJ0IFN1cHBvcnQxGDAWBgNVBAMTD0ZyYW5rNEREIFdl\n YiBDQTEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBmcmFuazRkZC5jb20wHhcNMTIw\n ODIyMDcyNjQzWhcNMTcwODIxMDcyNjQzWjBKMQswCQYDVQQGEwJKUDEOMAwGA1UE\n CAwFVG9reW8xETAPBgNVBAoMCEZyYW5rNEREMRgwFgYDVQQDDA93d3cuZXhhbXBs\n ZS5jb20wgfAwgagGByqGSM44BAEwgZwCQQDKVt7ZYtFRCzrm2/NTjl45YtMgVctQ\n pLadAowFRydY13uhGw+JXyM+qmngfQkXImQpoYdIe+A8DWG2vaO3wKQ3AhUAxx6d\n eaDs+XNHcbsiVQ1osvxrG8sCQHQYZDlSy/A5AFXrWXUNlTJbNhWDnitiG/95qYCe\n FGnwYPp/WyhX+/lbDmQujkrbd4wYStudZM0cc4iDAWeOHQ0DQwACQDtK/S6POMQE\n 8aI+skBdNQn+Ch76kNDhztC/suOr9FbCSxnZ/CfhSgE1phOJyEkdR2jgErl3uh51\n lo+7to76LLUwDQYJKoZIhvcNAQEFBQADgYEAnrmxZ3HB0LmVoFYdBJWxNBkRaFyn\n jBmRsSJp2xvFg2nyAF77AOqBuFOFqOxg04eDxH8TGLQOWjqdyCFCY79AQlmkdB+8\n Z5SWqPEwLJHVLd91O9avQwwRQT5TAxGXFkHTlQxOoaGfTsVQFqSDnlYC4mFjspA7\n \n \n \n \n \n \n \n\n"}}},"401":{"description":"returned if there were issues while generating IdP's metadata occurs"}}}},"/rest/admin/1.0/samlconfig/reset-certificates":{"post":{"tags":["SAML Configuration"],"summary":"Reset configuration","description":"Replaces the private key/certificate pair used for signing/verifying assertions with a new one","operationId":"resetSamlConfiguration","responses":{"200":{"description":"returned if replacing key/certificate pair and fetching SAML configuration succeeded","content":{"application/json":{"example":"{\n \"issuer\" : \"https://supercrowd:7657/crowd\",\n \"ssoUrl\" : \"https://supercrowd:7657/crowd/sso/sign\",\n \"certificateFormat\" : \"PEM\",\n \"certificate\" : \"-----BEGIN CERTIFICATE-----\\nMIICpzCCAhACAg4AMA0GCSqGSIb3DQEBBQUAMIGbMQswCQYDVQQGEwJKUDEOMAwG\\nA1UECBMFVG9reW8xEDAOBgNVBAcTB0NodW8ta3UxETAPBgNVBAoTCEZyYW5rNERE\\nMRgwFgYDVQQLEw9XZWJDZXJ0IFN1cHBvcnQxGDAWBgNVBAMTD0ZyYW5rNEREIFdl\\nYiBDQTEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBmcmFuazRkZC5jb20wHhcNMTIw\\nODIyMDcyNjQzWhcNMTcwODIxMDcyNjQzWjBKMQswCQYDVQQGEwJKUDEOMAwGA1UE\\nCAwFVG9reW8xETAPBgNVBAoMCEZyYW5rNEREMRgwFgYDVQQDDA93d3cuZXhhbXBs\\nZS5jb20wgfAwgagGByqGSM44BAEwgZwCQQDKVt7ZYtFRCzrm2/NTjl45YtMgVctQ\\npLadAowFRydY13uhGw+JXyM+qmngfQkXImQpoYdIe+A8DWG2vaO3wKQ3AhUAxx6d\\neaDs+XNHcbsiVQ1osvxrG8sCQHQYZDlSy/A5AFXrWXUNlTJbNhWDnitiG/95qYCe\\nFGnwYPp/WyhX+/lbDmQujkrbd4wYStudZM0cc4iDAWeOHQ0DQwACQDtK/S6POMQE\\n8aI+skBdNQn+Ch76kNDhztC/suOr9FbCSxnZ/CfhSgE1phOJyEkdR2jgErl3uh51\\nlo+7to76LLUwDQYJKoZIhvcNAQEFBQADgYEAnrmxZ3HB0LmVoFYdBJWxNBkRaFyn\\njBmRsSJp2xvFg2nyAF77AOqBuFOFqOxg04eDxH8TGLQOWjqdyCFCY79AQlmkdB+8\\nZ5SWqPEwLJHVLd91O9avQwwRQT5TAxGXFkHTlQxOoaGfTsVQFqSDnlYC4mFjspA7\\nW+K8+llxOFmtVzU=\\n-----END CERTIFICATE-----\\n\",\n \"expirationDate\" : 1544616405123\n}\"\n"}}},"401":{"description":"returned if user has no permission to perform this operation"}}}},"/rest/admin/1.0/server-info":{"get":{"tags":["Server Info"],"summary":"Get server info","description":"Returns server information","operationId":"getServerInfo","responses":{"200":{"description":"should always return server information","content":{"application/json":{"example":{"version":"3.3.0","deploymentTitle":"Crowd: Commercial","buildNumber":1234,"buildDate":"2018-10-01","baseUrl":"http://localhost:8095/crowd","versions":["3","3","0"],"deploymentType":"Server","serverTime":"2020-04-29T11:58:07.249+0200"}}}}}}},"/rest/admin/1.0/sessions/application":{"get":{"tags":["Sessions"],"summary":"Get application sessions","description":"Lists the sessions of applications for specified parameters","operationId":"getApplicationSessions","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"search","in":"query","description":"the search keyword for sessions filtering","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the search was performed successfully. Returns a paginated list of application sessions","content":{"application/json":{"example":"{\n \"values\" : [ {\n \"randomHash\" : \"randomhash1\",\n \"id\" : 123,\n \"initialization\" : \"1970-01-01T02:00:00.123+0200\",\n \"lastAccess\" : 123,\n \"application\" : {\n \"id\" : 1,\n \"name\" : \"JIRA\",\n \"description\" : \"Jira Application\",\n \"type\" : \"JIRA\",\n \"active\" : true,\n \"aliasingEnabled\" : true,\n \"lowercaseOutput\" : true,\n \"aggregateMemberships\" : true,\n \"cachedDirectoriesAuthenticationOrderOptimisation\" : true,\n \"directoryMappings\" : null,\n \"filteringUsersWithAccessEnabled\" : null,\n \"filteringGroupsWithAccessEnabled\" : null\n }\n }, {\n \"randomHash\" : \"randomhash2\",\n \"id\" : 124,\n \"initialization\" : \"1970-01-01T02:00:00.124+0200\",\n \"lastAccess\" : 124,\n \"application\" : {\n \"id\" : 2,\n \"name\" : \"BAMBOO\",\n \"description\" : \"Bamboo Application\",\n \"type\" : \"BAMBOO\",\n \"active\" : true,\n \"aliasingEnabled\" : true,\n \"lowercaseOutput\" : true,\n \"aggregateMemberships\" : true,\n \"cachedDirectoriesAuthenticationOrderOptimisation\" : true,\n \"directoryMappings\" : null,\n \"filteringUsersWithAccessEnabled\" : null,\n \"filteringGroupsWithAccessEnabled\" : null\n }\n } ],\n \"size\" : 2,\n \"start\" : 1,\n \"limit\" : 2,\n \"isLastPage\" : false\n}\"\n"}}}}}},"/rest/admin/1.0/sessions/user":{"get":{"tags":["Sessions"],"summary":"Get user sessions","description":"Lists the sessions of applications for specified parameters","operationId":"getUserSessions","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}},{"name":"search","in":"query","description":"the search keyword for sessions filtering","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"directoryId","in":"query","description":"the id of directory for sessions filtering","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"the search was performed successfully. Returns a paginated list of user sessions","content":{"application/json":{"example":{"values":[{"randomHash":"randomhash1","id":123,"initialization":"1970-01-01T02:00:00.123+0200","lastAccess":123,"directory":{"id":1,"displayName":"Crowd Directory","directoryType":"INTERNAL"},"username":"nwadursk"},{"randomHash":"randomhash2","id":124,"initialization":"1970-01-01T02:00:00.124+0200","lastAccess":124,"directory":{"id":2,"displayName":"Internal Directory","directoryType":"INTERNAL"},"username":"ppakowsk"}],"size":2,"start":1,"limit":2,"isLastPage":false}}}},"400":{"description":"returned if the directory was not found"}}}},"/rest/admin/1.0/sessions/{randomHash}":{"delete":{"tags":["Sessions"],"summary":"Expire session","description":"Expires the session with given ID","operationId":"expireSession","parameters":[{"name":"randomHash","in":"path","description":"the randomHash of a session to expire","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"the session was expired successfully"}}}},"/rest/admin/1.0/users/search":{"post":{"tags":["User Admin"],"summary":"Search users","description":"Returns users that can be assigned by to any group administered by the current user","operationId":"searchUsers","parameters":[{"name":"start","in":"query","description":"starting index of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":0}},{"name":"limit","in":"query","description":"maximum number of results returned from the name","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":50}}],"requestBody":{"description":"search criteria","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserSearchParams"},"example":{"search":"username","directoryIds":[1900],"active":true,"avatarSizeHint":128}}}},"responses":{"200":{"description":"operation of removing user from groups was completed","content":{"application/json":{"example":{"values":[{"username":"ariel","email":"ariel@some.domain.com","active":true,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"}},{"username":"carie","email":"carie@some.domain.com","active":true,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"}},{"username":"clarita","email":"clarita@some.domain.com","active":true,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"}},{"username":"john","email":"john@some.domain.com","active":true,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"}},{"username":"libby","email":"libby@some.domain.com","active":true,"directory":{"id":0,"displayName":"Open LDAP","directoryType":"INTERNAL"}},{"username":"magdalena","email":"magdalena@some.domain.com","active":true,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"}},{"username":"naomi","email":"naomi@some.domain.com","active":true,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"}},{"username":"patricia","email":"patricia@some.domain.com","active":true,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"}},{"username":"starwars","email":"starwars@some.domain.com","active":true,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"}},{"username":"winona","email":"winona@some.domain.com","active":true,"directory":{"id":1,"displayName":"Active Directory","directoryType":"INTERNAL"}}],"size":10,"start":0,"limit":10,"isLastPage":false}}}},"400":{"description":"returned if the directory was not found"},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if user not found"},"412":{"description":"returned if the feature is not accessible under current license"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/admin/1.0/users/{userId}/groups":{"post":{"tags":["User Admin"],"summary":"Add user to group","description":"Adds single user to multiple groups placed in the same directory","operationId":"addUserToGroups","parameters":[{"name":"userId","in":"path","description":"the user's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"requestBody":{"description":"an entity with group's unique identifiers","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GroupIdentifiersEntityList"},"example":{"ids":["1900-dXNlcjE","1900-dXNlcjI","1900-dXNlcjM"]}}}},"responses":{"200":{"description":"operation of adding user to groups was completed","content":{"application/json":{"example":{"successes":["1900-dXNlcjE"],"failures":[{"entity":"1900-dXNlcjI","reason":"Some reason of failure"},{"entity":"1900-dXNlcjM","reason":"Another reason of failure"}]}}}},"400":{"description":"returned if the directory was not found"},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if user not found"},"412":{"description":"returned if the feature is not accessible under current license"},"500":{"description":"returned if the operation fails to complete because of server error"}}},"delete":{"tags":["User Admin"],"summary":"Remove user from group","description":"Removes multiple users from single group placed in the same directory","operationId":"removeUserFromGroups","parameters":[{"name":"userId","in":"path","description":"the user's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"requestBody":{"description":"an entity with group's unique identifiers","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GroupIdentifiersEntityList"},"example":{"ids":["1900-dXNlcjE","1900-dXNlcjI","1900-dXNlcjM"]}}}},"responses":{"200":{"description":"operation of removing user from groups was completed","content":{"application/json":{"example":{"successes":["1900-dXNlcjE"],"failures":[{"entity":"1900-dXNlcjI","reason":"Some reason of failure"},{"entity":"1900-dXNlcjM","reason":"Another reason of failure"}]}}}},"400":{"description":"returned if the directory was not found"},"401":{"description":"returned if user has no permission to perform this operation"},"404":{"description":"returned if user not found"},"412":{"description":"returned if the feature is not accessible under current license"},"500":{"description":"returned if the operation fails to complete because of server error"}}}},"/rest/appmanagement/1/aliases":{"get":{"tags":["Alias"],"summary":"Get aliases for user","description":"Returns all aliases of the specified user from all alias-enabled applications","operationId":"getAllAliasesForUserAsJson","parameters":[{"name":"user","in":"query","description":"username in Crowd (does not need to exist)","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"returns all aliases of the specified user"}}},"put":{"tags":["Alias"],"summary":"Set aliases for user","description":"Sets the alias for the given username in all the applications, replacing the previous alias set for the same username, if they exist. Applications that are not included in the map will have their aliases removed","operationId":"setAllAliasesForUser","parameters":[{"name":"user","in":"query","description":"username in Crowd (does not need to exist)","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"map of aliases keyed by application ID","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"string"}},"example":{"applicationid-1":"Alias-1","applicationid-3":"Alias-3"}}}},"responses":{"204":{"description":"returned if aliases have been updated"},"409":{"description":"returned if some of the aliases cannot be inserted"}}},"delete":{"tags":["Alias"],"summary":"Delete aliases for user","description":"Removes all aliases of the specified user from all applications, even from applications where aliasing is disabled","operationId":"deleteAllAliasesForUser","parameters":[{"name":"user","in":"query","description":"username in Crowd (does not need to exist)","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"returned if aliases have been removed"},"409":{"description":"returned if when the username is already in use by another user as their alias in at least one of the applications"}}}},"/rest/appmanagement/1/aliases/{applicationId}/alias":{"get":{"tags":["Alias"],"summary":"Get alias","description":"Returns the user's alias in the specified application","operationId":"getAlias","parameters":[{"name":"applicationId","in":"path","description":"unique identifier for the application that the user is part of","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"user","in":"query","description":"username for the alias to be returned","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"the operation succeeded and the alias was retrieved"},"404":{"description":"returned if the application or user was not found"}}},"put":{"tags":["Alias"],"summary":"Set alias","description":"Sets the user's alias in the specified application","operationId":"setAlias","parameters":[{"name":"applicationId","in":"path","description":"unique identifier for the application that the user is part of","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"user","in":"query","description":"username for alias to be updated","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"new alias for the user","content":{"text/plain":{"schema":{"type":"string"}}}},"responses":{"204":{"description":"the operation succeeded and the alias was updated"},"404":{"description":"returned if the application was not found"},"409":{"description":"returned if the alias is already in use"}}},"delete":{"tags":["Alias"],"summary":"Delete alias","description":"Removes user's alias in a specified application","operationId":"deleteAlias","parameters":[{"name":"applicationId","in":"path","description":"unique identifier for the application that the user is part of","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"user","in":"query","description":"username for alias to be deleted","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"the operation succeeded and the alias has been removed"},"404":{"description":"returned if the application was not found"},"409":{"description":"returned if the username is already in use by another user as their alias in the specified application"}}}},"/rest/appmanagement/1/aliases/{applicationId}/username":{"get":{"tags":["Alias"],"summary":"Get username for alias","description":"Returns user's username in a specified application","operationId":"getUsernameForAlias","parameters":[{"name":"applicationId","in":"path","description":"unique identifier for the application that the user is part of","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"alias","in":"query","description":"user's alias","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"returns the username behind the alias (if exists)"},"404":{"description":"returned if the application was not found"}}}},"/rest/appmanagement/1/application":{"get":{"tags":["Application"],"summary":"Get applications","description":"Returns all the applications or a specific application by name","operationId":"getApplications","parameters":[{"name":"name","in":"query","description":"application's name","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"default":{"description":"default response","content":{"application/json":{},"application/xml":{}}}}},"post":{"tags":["Application"],"summary":"Add application","description":"Adds a new application","operationId":"addApplication","parameters":[{"name":"include-request-address","in":"query","description":"whether the request address should be included in the response","required":false,"style":"form","explode":true,"schema":{"type":"boolean","default":false}}],"requestBody":{"description":"new application entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApplicationEntity"}},"application/xml":{"schema":{"$ref":"#/components/schemas/ApplicationEntity"}}}},"responses":{"default":{"description":"default response","content":{"application/json":{},"application/xml":{}}}}}},"/rest/appmanagement/1/application/{applicationId}":{"get":{"tags":["Application"],"summary":"Get application by ID","description":"Returns the specified application","operationId":"getApplicationById","parameters":[{"name":"applicationId","in":"path","description":"application's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"default":{"description":"default response","content":{"application/json":{},"application/xml":{}}}}},"put":{"tags":["Application"],"summary":"Update application","description":"Updates the specified application","operationId":"updateApplication","parameters":[{"name":"applicationId","in":"path","description":"application's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"new application entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApplicationEntity"}},"application/xml":{"schema":{"$ref":"#/components/schemas/ApplicationEntity"}}}},"responses":{"default":{"description":"default response","content":{"application/json":{},"application/xml":{}}}}},"delete":{"tags":["Application"],"summary":"Delete application","description":"Removes the specified application","operationId":"removeApplication","parameters":[{"name":"applicationId","in":"path","description":"application's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"default":{"description":"default response","content":{"application/json":{},"application/xml":{}}}}}},"/rest/appmanagement/1/application/{applicationId}/remote_address":{"get":{"tags":["Application"],"summary":"Get remote addresses","description":"Returns the remote addresses of the specified application","operationId":"getRemoteAddresses","parameters":[{"name":"applicationId","in":"path","description":"application's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"responses":{"default":{"description":"default response","content":{"application/json":{},"application/xml":{}}}}},"post":{"tags":["Application"],"summary":"Add remote address","description":"Adds the remote address to the specified application","operationId":"addRemoteAddress","parameters":[{"name":"applicationId","in":"path","description":"application's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"remote address entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RemoteAddressEntity"}},"application/xml":{"schema":{"$ref":"#/components/schemas/RemoteAddressEntity"}}}},"responses":{"default":{"description":"default response","content":{"application/json":{},"application/xml":{}}}}},"delete":{"tags":["Application"],"summary":"Remove remote address","description":"Removes the remote address of the specified application","operationId":"removeRemoteAddress","parameters":[{"name":"applicationId","in":"path","description":"application's unique identifier","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}},{"name":"address","in":"query","description":"remote address to remove","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"default":{"description":"default response","content":{"application/json":{},"application/xml":{}}}}}},"/rest/directorymanagement/1/directory/testazuread":{"post":{"tags":["Directory"],"summary":"Test Microsoft Entra ID connection","description":"Tests connection to the specified Microsoft Entra ID","operationId":"testAzureAdConnection","requestBody":{"description":"an entity with data required to connect to the Azure Active Directory","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AzureAdConnectionTestEntity"},"example":{"tenantId":"example.onmicrosoft.com","webAppId":"1a23b45c-de67-8ce0-881c-b43acfee0x34","webAppSecret":"X70mv+pzvXoiib3OYwaRPVmzoFgq1eDpYUnGm0JTfzQ=","nativeAppId":"a1af321g-j123-4ter-84x2-a456d3987aa1","graphEndpoint":"https://graph.microsoft.com","authorityEndpoint":"https://login.windows.net","region":"GERMANY"}}}},"responses":{"204":{"description":"returned if the connection was successfully made"},"400":{"description":"returned if the entity contains invalid values for fields","content":{"application/json":{"example":{"errors":[{"field":"url","messages":["Supplied URL is blank"]},{"field":"name","messages":["Supplied name is blank"]}]}}}},"409":{"description":"returned if there was a problem with connecting to the Microsoft Entra ID"}}}},"/rest/directorymanagement/1/directory/testazuread/{id}":{"post":{"tags":["Directory"],"summary":"Test Microsoft Entra ID connection for directory","description":"Tests connection to the specified Microsoft Entra ID. Should be used for existing directories","operationId":"testAzureAdConnection_1","parameters":[{"name":"id","in":"path","description":"database id of the directory to test","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"an entity with data required to connect to the Azure Active Directory","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AzureAdConnectionTestEntity"},"example":{"tenantId":"example.onmicrosoft.com","webAppId":"1a23b45c-de67-8ce0-881c-b43acfee0x34","webAppSecret":"X70mv+pzvXoiib3OYwaRPVmzoFgq1eDpYUnGm0JTfzQ=","nativeAppId":"a1af321g-j123-4ter-84x2-a456d3987aa1","graphEndpoint":"https://graph.microsoft.com","authorityEndpoint":"https://login.windows.net","region":"GERMANY"}}}},"responses":{"204":{"description":"returned if the connection was successfully made"},"400":{"description":"returned if the entity contains invalid values for fields","content":{"application/json":{"example":{"errors":[{"field":"url","messages":["Supplied URL is blank"]},{"field":"name","messages":["Supplied name is blank"]}]}}}},"409":{"description":"returned if there was a problem with connecting to Microsoft Entra ID"}}}},"/rest/directorymanagement/1/directory/testcrowd":{"post":{"tags":["Directory"],"summary":"Test Crowd connection","description":"Tests connection to the specified Remote Crowd directory","operationId":"testCrowdConnection","requestBody":{"description":"an entity with data required to connect to the Remote Crowd directory","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CrowdConnectionTestEntity"},"example":{"url":"http://127.0.0.1:8095/crowd","applicationName":"application","applicationPassword":"application_password","httpProxyHost":"","httpProxyPort":null,"httpProxyUsername":"","httpProxyPassword":""}}}},"responses":{"204":{"description":"returned if the connection was successfully made"},"400":{"description":"returned if the entity contains invalid values for fields","content":{"application/json":{"example":{"errors":[{"field":"url","messages":["Supplied URL is blank"]},{"field":"name","messages":["Supplied name is blank"]}]}}}},"409":{"description":"returned if there was a problem with connecting to the Remote Crowd directory"}}}},"/rest/directorymanagement/1/directory/testcrowd/{id}":{"post":{"tags":["Directory"],"summary":"Test Crowd connection for directory","description":"Tests connection to the specified Remote Crowd directory. Should be used for existing directories","operationId":"testCrowdConnection_1","parameters":[{"name":"id","in":"path","description":"id of the Crowd server which will have its settings changed","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"an entity with data required to connect to the Remote Crowd directory","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CrowdConnectionTestEntity"},"example":{"url":"http://127.0.0.1:8095/crowd","applicationName":"application","applicationPassword":"application_password","httpProxyHost":"","httpProxyPort":null,"httpProxyUsername":"","httpProxyPassword":""}}}},"responses":{"204":{"description":"returned if the connection was successfully made"},"400":{"description":"returned if the entity contains invalid values for fields","content":{"application/json":{"example":{"errors":[{"field":"url","messages":["Supplied URL is blank"]},{"field":"name","messages":["Supplied name is blank"]}]}}}},"409":{"description":"returned if there was a problem with connecting to the Remote Crowd directory"}}}},"/rest/directorymanagement/1/directory/testldap":{"post":{"tags":["Directory"],"summary":"Test LDAP connection","description":"Tests connection to the specified LDAP server","operationId":"testLdapConnection","requestBody":{"description":"an entity with data required to connect to the server","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LdapConnectionTestEntity"},"example":{"url":"ldap://localhost:389/","secureMode":"NONE","baseDN":"dc=test,dc=com","ldapPassword":"admin","userDN":"cn=admin,dc=test,dc=com","connector":"com.atlassian.crowd.directory.OpenLDAP","referral":false,"userEncryptionMethod":null,"groupDNaddition":null,"groupDescriptionAttr":null,"groupMemberAttr":null,"groupNameAttr":null,"groupObjectClass":null,"groupObjectFilter":null,"userDNaddition":null,"userObjectClass":null,"userGroupMemberAttr":null,"userFirstnameAttr":null,"userLastnameAttr":null,"userDisplayNameAttr":null,"userMailAttr":null,"userNameAttr":null,"userNameRdnAttr":null,"userPasswordAttr":null,"userObjectFilter":null,"userExternalIdAttr":null}}}},"responses":{"204":{"description":"returned if the connection was successfully made"},"400":{"description":"returned if the entity contains invalid values for fields","content":{"application/json":{"example":{"errors":[{"field":"url","messages":["Supplied URL is blank"]},{"field":"name","messages":["Supplied name is blank"]}]}}}},"409":{"description":"returned if there was a problem with connecting to the LDAP server"}}}},"/rest/directorymanagement/1/directory/testldap/{id}":{"post":{"tags":["Directory"],"summary":"Test LDAP connection for directory","description":"Tests connection to the specified LDAP server. Should be used for existing directories","operationId":"testLdapConnection_1","parameters":[{"name":"id","in":"path","description":"the database id of the directory to test","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"an entity with data required to connect to the server","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LdapConnectionTestEntity"},"example":{"url":"ldap://localhost:389/","secureMode":"NONE","baseDN":"dc=test,dc=com","ldapPassword":"admin","userDN":"cn=admin,dc=test,dc=com","connector":"com.atlassian.crowd.directory.OpenLDAP","referral":false,"userEncryptionMethod":null,"groupDNaddition":null,"groupDescriptionAttr":null,"groupMemberAttr":null,"groupNameAttr":null,"groupObjectClass":null,"groupObjectFilter":null,"userDNaddition":null,"userObjectClass":null,"userGroupMemberAttr":null,"userFirstnameAttr":null,"userLastnameAttr":null,"userDisplayNameAttr":null,"userMailAttr":null,"userNameAttr":null,"userNameRdnAttr":null,"userPasswordAttr":null,"userObjectFilter":null,"userExternalIdAttr":null}}}},"responses":{"204":{"description":"returned if the connection was successfully made"},"400":{"description":"returned if the entity contains invalid values for fields","content":{"application/json":{"example":{"errors":[{"field":"url","messages":["Supplied URL is blank"]},{"field":"name","messages":["Supplied name is blank"]}]}}}},"409":{"description":"returned if there was a problem with connecting to the LDAP server"}}}},"/rest/directorymanagement/1/directory/testsearch":{"post":{"tags":["Directory"],"summary":"Test LDAP search","description":"Tests search with the provided LDAP directory configuration","operationId":"testSearch","requestBody":{"description":"an entity containing directory parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LdapSearchTestEntity"},"example":{"strategy":"GROUP","url":"ldap://localhost:389/","secureMode":"NONE","referral":false,"baseDN":"dc=test,dc=com","userDN":"cn=admin,dc=test,dc=com","ldapPassword":"admin","userEncryptionMethod":null,"filterExpiredUsers":false,"primaryGroupSupport":false,"useUserMembershipAttribute":false,"useUserMembershipAttributeForGroupMembership":false,"useRelaxedDNStandardisation":false,"pagedResults":false,"pagedResultsSize":null,"groupDNaddition":null,"groupDescriptionAttr":null,"groupMemberAttr":null,"groupNameAttr":"cn","groupObjectClass":null,"groupObjectFilter":"(objectCategory=Group)","userDNaddition":null,"userObjectClass":null,"userGroupMemberAttr":null,"userFirstnameAttr":null,"userLastnameAttr":null,"userDisplayNameAttr":null,"userMailAttr":null,"userNameAttr":null,"userNameRdnAttr":null,"userPasswordAttr":null,"userObjectFilter":null,"userExternalIdAttr":null,"connector":"com.atlassian.crowd.directory.OpenLDAP"}}}},"responses":{"204":{"description":"returned if the search was successful and returned results"},"400":{"description":"returned if the entity contains invalid values for fields","content":{"application/json":{"example":{"errors":[{"field":"url","messages":["Supplied URL is blank"]},{"field":"name","messages":["Supplied name is blank"]}]}}}},"409":{"description":"returned if the search did not return any results, or there was a problem with connecting to the directory"}}}},"/rest/directorymanagement/1/directory/testsearch/{id}":{"post":{"tags":["Directory"],"summary":"Test LDAP search for directory","description":"Tests search with the provided LDAP directory configuration. Should be used for existing directories","operationId":"testSearch_1","parameters":[{"name":"id","in":"path","description":"database id of the directory for which the settings will be tested","required":true,"style":"simple","explode":false,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"description":"an entity containing directory parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LdapSearchTestEntity"},"example":{"strategy":"GROUP","url":"ldap://localhost:389/","secureMode":"NONE","referral":false,"baseDN":"dc=test,dc=com","userDN":"cn=admin,dc=test,dc=com","ldapPassword":"admin","userEncryptionMethod":null,"filterExpiredUsers":false,"primaryGroupSupport":false,"useUserMembershipAttribute":false,"useUserMembershipAttributeForGroupMembership":false,"useRelaxedDNStandardisation":false,"pagedResults":false,"pagedResultsSize":null,"groupDNaddition":null,"groupDescriptionAttr":null,"groupMemberAttr":null,"groupNameAttr":"cn","groupObjectClass":null,"groupObjectFilter":"(objectCategory=Group)","userDNaddition":null,"userObjectClass":null,"userGroupMemberAttr":null,"userFirstnameAttr":null,"userLastnameAttr":null,"userDisplayNameAttr":null,"userMailAttr":null,"userNameAttr":null,"userNameRdnAttr":null,"userPasswordAttr":null,"userObjectFilter":null,"userExternalIdAttr":null,"connector":"com.atlassian.crowd.directory.OpenLDAP"}}}},"responses":{"204":{"description":"returned if the search was successful and returned results"},"400":{"description":"returned if the entity contains invalid values for fields","content":{"application/json":{"example":{"errors":[{"field":"url","messages":["Supplied URL is blank"]},{"field":"name","messages":["Supplied name is blank"]}]}}}},"409":{"description":"returned if the search did not return any results, or there was a problem with connecting to the directory"}}}},"/rest/usermanagement/1/authentication":{"post":{"tags":["User Authentication"],"summary":"Authenticate user","description":"Authenticates a user. Does not generate an SSO token. For SSO please take a look at the SSO token resource","operationId":"authenticateUser","parameters":[{"name":"username","in":"query","description":"username used for logging","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"the directory mapping to add to the application","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PasswordEntity"},"example":{"link":null,"value":"hunter2"}},"application/xml":{"schema":{"$ref":"#/components/schemas/PasswordEntity"},"example":{"link":null,"value":"hunter2"}}}},"responses":{"200":{"description":"the operation succeeded and authenticated user details are retrieved","content":{"application/json":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}},"application/xml":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}}}},"400":{"description":"returned if unsuccessful (for example the user doesn't exist or can't access the application)"}}}},"/rest/usermanagement/1/authentication/notify":{"post":{"tags":["User Authentication"],"summary":"Notify user authenticated","description":"Notifies Crowd that a user has logged into an application, using a method different than the default /authentication or /session resources. Does not initiate a SSO session. This allows to trigger side effects in Crowd, such as updating the user from the remote directory, or applying automatic group assignments","operationId":"userAuthenticated","parameters":[{"name":"username","in":"query","description":"username used for logging","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the operation succeeded and notification was triggered","content":{"application/json":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}},"application/xml":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}}}},"400":{"description":"returned if unsuccessful (for example the user doesn't exist or can't access the application)"}}}},"/rest/usermanagement/1/config/cookie":{"get":{"tags":["Cookie Configuration"],"summary":"Get configuration","description":"Returns the Cookie configuration information","operationId":"getConfig","responses":{"200":{"description":"the operation succeeded and cookie configuration is retrieved","content":{"application/json":{"example":{"domain":".atlassian.com","secure":true,"name":"cookie-name"}},"application/xml":{"example":{"domain":".atlassian.com","secure":true,"name":"cookie-name"}}}}}}},"/rest/usermanagement/1/group":{"get":{"tags":["Groups"],"summary":"Get group","description":"Retrieves a group","operationId":"getGroup","parameters":[{"name":"groupname","in":"query","description":"name of the group to retrieve","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the operation succeeded and the group is retrieved","content":{"application/json":{"example":{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}},"application/xml":{"example":{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}}}},"404":{"description":"returned if the group was not found"}}},"put":{"tags":["Groups"],"summary":"Update group","description":"Updates an existing group","operationId":"updateGroup","parameters":[{"name":"groupname","in":"query","description":"the name of the group to update","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"the update data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GroupEntity"},"example":{"link":null,"name":"newgroupname","description":"description","type":"GROUP","active":null,"attributes":null,"expanded":true}},"application/xml":{"schema":{"$ref":"#/components/schemas/GroupEntity"},"example":{"link":null,"name":"newgroupname","description":"description","type":"GROUP","active":null,"attributes":null,"expanded":true}}}},"responses":{"200":{"description":"returned if the group previously existed and is now updated","content":{"application/json":{"example":{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}},"application/xml":{"example":{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}}}},"400":{"description":"returned if the groupname in the request body and the URI do not match"},"403":{"description":"returned if the application is not allowed to update/create a group"},"404":{"description":"returned if the group does not exist"}}},"post":{"tags":["Groups"],"summary":"Add group","description":"Adds a new group","operationId":"addGroup","requestBody":{"description":"the group to create","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GroupEntity"},"example":{"link":null,"name":"newgroupname","description":"description","type":"GROUP","active":null,"attributes":null,"expanded":true}},"application/xml":{"schema":{"$ref":"#/components/schemas/GroupEntity"},"example":{"link":null,"name":"newgroupname","description":"description","type":"GROUP","active":null,"attributes":null,"expanded":true}}}},"responses":{"200":{"description":"the operation succeeded and the group is successfully created","content":{"application/json":{"example":{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}},"application/xml":{"example":{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}}}},"400":{"description":"returned if the group already exists"},"403":{"description":"returned if the application is not allowed to create a new group"}}},"delete":{"tags":["Groups"],"summary":"Delete group","description":"Deletes a group","operationId":"removeGroup","parameters":[{"name":"groupname","in":"query","description":"the name of the group to delete","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"returned if the group was found and deleted"},"404":{"description":"returned if the group could not be found"}}}},"/rest/usermanagement/1/group/attribute":{"get":{"tags":["Groups"],"summary":"Get group attributes","description":"Retrieves a list of group attributes","operationId":"getGroupAttributes","parameters":[{"name":"groupname","in":"query","description":"the name of the group to fetch attributes from","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"returned if the group attribute was found","content":{"application/json":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?username=sampleuser","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd","rel":"self"},"name":"attribute","values":["value1","value2"]}]}},"application/xml":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?username=sampleuser","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd","rel":"self"},"name":"attribute","values":["value1","value2"]}]}}}},"404":{"description":"returned if the group attribute could not be found"}}},"post":{"tags":["Groups"],"summary":"Save group attributes","description":"Stores the group attributes","operationId":"storeGroupAttributes","parameters":[{"name":"groupname","in":"query","description":"the name of the group","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"the attributes to store","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MultiValuedAttributeEntityList"},"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?username=sampleuser","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd","rel":"self"},"name":"attribute","values":["value1","value2"]}]}},"application/xml":{"schema":{"$ref":"#/components/schemas/MultiValuedAttributeEntityList"},"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?username=sampleuser","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd","rel":"self"},"name":"attribute","values":["value1","value2"]}]}}}},"responses":{"204":{"description":"returned if the group attributes are successfully set"},"403":{"description":"returned if the application is not allowed to set group attributes"},"404":{"description":"returned if the group attribute could not be found"}}},"delete":{"tags":["Groups"],"summary":"Delete group attribute","description":"Deletes a group attribute","operationId":"deleteGroupAttribute","parameters":[{"name":"groupname","in":"query","description":"the name of the group","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"attributename","in":"query","description":"the name of the attribute to delete","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"returned if the group attribute is successfully deleted"},"403":{"description":"returned if the application is not allowed to remove a group attribute"},"404":{"description":"returned if the group or attribute could not be found"}}}},"/rest/usermanagement/1/group/child-group/direct":{"get":{"tags":["Groups"],"summary":"Get direct group children","description":"Retrieves the groups that are direct children of the specified group or a single direct child of that group with the specified name","operationId":"getDirectChildrenOfGroup","parameters":[{"name":"groupname","in":"query","description":"name of the parent group which will have its children fetched","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"child-groupname","in":"query","description":"if specified then only the direct child group with this name will be returned","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"start-index","in":"query","description":"start index if using paged queries, only applicable when 'child-groupname' is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":0}},{"name":"max-results","in":"query","description":"maximum amount of results to return, only applicable when 'child-groupname' is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":1000}}],"responses":{"200":{"description":"returned if the group was found","content":{"application/json":{"example":{"group":[{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}},{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}]}},"application/xml":{"example":{"group":[{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}},{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}]}}}},"404":{"description":"returned if the group could not be found"}}},"post":{"tags":["Groups"],"summary":"Add direct child group membership","description":"Adds a direct child group membership","operationId":"addDirectChildGroupMembership","parameters":[{"name":"groupname","in":"query","description":"name of the parent group to which the direct child group will be added","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"the child group","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GroupEntity"},"example":{"link":null,"name":"groupname","description":null,"type":null,"active":null,"attributes":null,"expanded":true}},"application/xml":{"schema":{"$ref":"#/components/schemas/GroupEntity"},"example":{"link":null,"name":"groupname","description":null,"type":null,"active":null,"attributes":null,"expanded":true}}}},"responses":{"201":{"description":"returned if the group was found"},"400":{"description":"returned if the child group could not be found, or adding the membership would result in a circular dependency"},"404":{"description":"returned if the group could not be found"}}},"delete":{"tags":["Groups"],"summary":"Delete child group membership","description":"Deletes a child group membership","operationId":"removeDirectChildGroupMembership","parameters":[{"name":"groupname","in":"query","description":"name of the parent group","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"child-groupname","in":"query","description":"name of the child group","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"returned if the child group membership is deleted"},"404":{"description":"returned if the child or parent group could not be found"}}}},"/rest/usermanagement/1/group/child-group/nested":{"get":{"tags":["Groups"],"summary":"Get nested children of group","description":"Retrieves nested children of the specified group or a single nested child of that group with the specified name","operationId":"getNestedChildrenOfGroup","parameters":[{"name":"groupname","in":"query","description":"name of the parent group which will have its nested children fetched","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"child-groupname","in":"query","description":"if provided then only a single nested child group with this name will be fetched from the group specified by 'groupname'","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"start-index","in":"query","description":"start index if using paged queries, only applicable when 'child-groupname' is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":0}},{"name":"max-results","in":"query","description":"maximum amount of results to return, only applicable when 'child-groupname' is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":1000}}],"responses":{"200":{"description":"returned if the group was found","content":{"application/json":{"example":{"group":[{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}},{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}]}},"application/xml":{"example":{"group":[{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}},{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}]}}}},"404":{"description":"returned if the group could not be found"}}}},"/rest/usermanagement/1/group/membership":{"get":{"tags":["Groups"],"summary":"Get all memberships","description":"Retrieves full details of all group memberships, with users and nested groups. This resource is optimised for streaming XML responses, and does not support JSON responses","operationId":"getAllMemberships","responses":{"200":{"description":"returned if memberships are retrieved"},"404":{"description":"returned if unavailable in earlier releases of Crowd"}}}},"/rest/usermanagement/1/group/parent-group/direct":{"get":{"tags":["Groups"],"summary":"Get direct group parents","description":"Retrieves the groups that are direct parents of the specified group or a direct parent group of the specified child group","operationId":"getDirectParentsOfGroup","parameters":[{"name":"groupname","in":"query","description":"if 'child-groupname' is specified then the direct parents of this group will be returned. Otherwise this is the direct parent group","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"child-groupname","in":"query","description":"if specified this will return a single direct parent group of this group with the name 'groupname'","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"start-index","in":"query","description":"start index if using paged queries, only applicable when 'child-groupname' is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":0}},{"name":"max-results","in":"query","description":"maximum amount of results to return, only applicable when 'child-groupname' is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":1000}}],"responses":{"200":{"description":"returned if the group is found","content":{"application/json":{"example":{"group":[{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}},{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}]}},"application/xml":{"example":{"group":[{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}},{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}]}}}},"404":{"description":"returned if the group could not be found"}}},"post":{"tags":["Groups"],"summary":"Add direct parent group membership","description":"Adds a direct parent group membership","operationId":"addDirectParentGroupMembership","parameters":[{"name":"groupname","in":"query","description":"if specified this will return a single direct parent group of this group with the name 'groupname'","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"the user to add to the group","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GroupEntity"},"example":{"link":null,"name":"sampleuser","firstName":null,"lastName":null,"displayName":null,"directoryId":null,"password":null,"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":null,"attributes":null,"email":null,"expanded":true}},"application/xml":{"schema":{"$ref":"#/components/schemas/GroupEntity"},"example":{"link":null,"name":"sampleuser","firstName":null,"lastName":null,"displayName":null,"directoryId":null,"password":null,"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":null,"attributes":null,"email":null,"expanded":true}}}},"responses":{"201":{"description":"returned if the parent group membership is successfully added"},"400":{"description":"returned if the parent group could not be found, or adding the membership would result in a circular dependency"},"404":{"description":"returned if the group could not be found"}}}},"/rest/usermanagement/1/group/parent-group/nested":{"get":{"tags":["Groups"],"summary":"Get nested parent groups","description":"Retrieves the groups that are nested parents of the specified group or a single nested parent of that group with the specified name","operationId":"getNestedParentGroups","parameters":[{"name":"groupname","in":"query","description":"name of the group of which the nested parents will be returned","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"parent-groupname","in":"query","description":"if specified then the single nested parent group with this name of the group specified by 'groupname' will be returned","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"start-index","in":"query","description":"start index if using paged queries, only applicable when 'groupname' is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":0}},{"name":"max-results","in":"query","description":"maximum amount of results to return, only applicable when 'groupname' is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":1000}}],"responses":{"200":{"description":"returned if the group was found","content":{"application/json":{"example":{"group":[{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}},{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}]}},"application/xml":{"example":{"group":[{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}},{"link":{"href":"link_to_group","rel":"self"},"name":"groupname","description":"Group Description","type":"GROUP","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/group/attributes?groupname=groupname","rel":"self"},"attribute":[]}}]}}}},"404":{"description":"returned if the group could not be found"}}}},"/rest/usermanagement/1/group/user/direct":{"get":{"tags":["Groups"],"summary":"Get direct members of group","description":"Retrieves the users that are direct members of the specified group or a specified user who is a direct member of that group","operationId":"getDirectMembersOfGroup","parameters":[{"name":"groupname","in":"query","description":"the name of the group","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"username","in":"query","description":"if specified it will return a single user if the user is a direct member of the specified group","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"start-index","in":"query","description":"start index if using paged queries, only applicable when username is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":0}},{"name":"max-results","in":"query","description":"maximum amount of results to return, only applicable when username is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":1000}}],"responses":{"200":{"description":"returned if the group is found","content":{"application/json":{"example":{"user":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}]}},"application/xml":{"example":{"user":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}]}}}},"404":{"description":"returned if the group could not be found or the specified user is not a direct member of the group"}}},"post":{"tags":["Groups"],"summary":"Add user group membership","description":"Adds a user as a direct member of the specified group","operationId":"addUserAsDirectGroupMember","parameters":[{"name":"groupname","in":"query","description":"name of the group to which the user will be added","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"the user to add to the group","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserEntity"},"example":{"link":null,"name":"sampleuser","firstName":null,"lastName":null,"displayName":null,"directoryId":null,"password":null,"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":null,"attributes":null,"email":null,"expanded":true}},"application/xml":{"schema":{"$ref":"#/components/schemas/UserEntity"},"example":{"link":null,"name":"sampleuser","firstName":null,"lastName":null,"displayName":null,"directoryId":null,"password":null,"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":null,"attributes":null,"email":null,"expanded":true}}}},"responses":{"201":{"description":"returned if the user is successfully added as a member of the group"},"400":{"description":"returned if the user could not be found or groupName is not specified or user has no name"},"404":{"description":"returned if the group could not be found"},"409":{"description":"returned if the user is already a direct member of the group"}}},"delete":{"tags":["Groups"],"summary":"Remove user group membership","description":"Removes the user membership","operationId":"removeDirectGroupMembership","parameters":[{"name":"groupname","in":"query","description":"name of the group from which the user membership will be removed","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"username","in":"query","description":"name the user to have their membership removed","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"returned if the user membership is successfully deleted"},"404":{"description":"returned if the user or group could not be found"}}}},"/rest/usermanagement/1/group/user/nested":{"get":{"tags":["Groups"],"summary":"Get nested group members","description":"Retrieves the users that are nested members of the specified group or a single user who is a nested member of the specified group","operationId":"getNestedMembersOfGroup","parameters":[{"name":"groupname","in":"query","description":"name of the group","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"username","in":"query","description":"if specified it will return a single user if the user is a nested member of the specified group","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"start-index","in":"query","description":"start index if using paged queries, only applicable when username is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":0}},{"name":"max-results","in":"query","description":"maximum amount of results to return, only applicable when username is not provided","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":1000}}],"responses":{"200":{"description":"returned if the group is found","content":{"application/json":{"example":{"user":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}]}},"application/xml":{"example":{"user":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}]}}}},"404":{"description":"returned if the user or group could not be found or the specified user is not a nested member of the group"}}}},"/rest/usermanagement/1/search":{"get":{"tags":["Search"],"summary":"Search by CQL","description":"Searches for entities of entity-type (either 'user' or 'group') with the specified search restriction (see https://developer.atlassian.com/display/CROWDDEV/Crowd+Query+Language)","operationId":"searchByCql","parameters":[{"name":"entity-type","in":"query","description":"type of the entity to search","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"max-results","in":"query","description":"maximum number of results returned","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":1000}},{"name":"start-index","in":"query","description":"starting index of the results","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":0}},{"name":"restriction","in":"query","description":"restriction entities must satisfy in the Crowd Query Language","required":false,"style":"form","explode":true,"schema":{"type":"string","default":""}}],"responses":{"200":{"description":"list of users or groups is retrieved","content":{"application/json":{"example":{"group":[{"link":{"href":"https://crowdserver/crowd/group?groupname=group&groupname=crowd-administrators","rel":"self"},"name":"crowd-administrators"}]}},"application/xml":{"example":{"group":[{"link":{"href":"https://crowdserver/crowd/group?groupname=group&groupname=crowd-administrators","rel":"self"},"name":"crowd-administrators"}]}}}},"409":{"description":"returned if the entity type is not specified or unknown"}}},"post":{"tags":["Search"],"summary":"Search","description":"Searches for entities of entity-type (either 'user' or 'group') satisfying the given search restriction","operationId":"search","parameters":[{"name":"entity-type","in":"query","description":"type of the entity to search","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"max-results","in":"query","description":"maximum number of results returned","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":1000}},{"name":"start-index","in":"query","description":"starting index of the results","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":0}}],"requestBody":{"description":"restriction entities must satisfy","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRestrictionEntity"},"example":{"restriction-type":"property-search-restriction","property":{"name":"email","type":"STRING"},"matchMode":"EXACTLY_MATCHES","value":"bob@example.net"}},"application/xml":{"schema":{"$ref":"#/components/schemas/SearchRestrictionEntity"},"example":{"restriction-type":"property-search-restriction","property":{"name":"email","type":"STRING"},"matchMode":"EXACTLY_MATCHES","value":"bob@example.net"}}}},"responses":{"200":{"description":"list of users or groups is retrieved","content":{"application/json":{"example":{"group":[{"link":{"href":"https://crowdserver/crowd/group?groupname=group&groupname=crowd-administrators","rel":"self"},"name":"crowd-administrators"}]}},"application/xml":{"example":{"group":[{"link":{"href":"https://crowdserver/crowd/group?groupname=group&groupname=crowd-administrators","rel":"self"},"name":"crowd-administrators"}]}}}},"409":{"description":"returned if the entity type is not specified or unknown"}}}},"/rest/usermanagement/1/session":{"post":{"tags":["Token"],"summary":"Authenticate user","description":"Create new session token valid for duration seconds, or for the server default session timeout if no duration is specified or if duration is longer than the server default session timeout. Either the user password needs to be valid or the 'validate-password' query param must be set to false. If an ongoing session already exists for the same authentication credentials and validation factors, then that session token is returned","operationId":"authenticateUser_1","parameters":[{"name":"validate-password","in":"query","description":"true if the password should be validated (optional, defaults to true)","required":false,"style":"form","explode":true,"schema":{"type":"boolean","default":true}},{"name":"duration","in":"query","description":"requested duration of the token, in seconds (optional, defaults to server session duration)","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int64","default":-1}}],"requestBody":{"description":"authentication information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthenticationContextEntity"},"example":{"userName":"my_username","password":"my_password","validation-factors":{"validation-factor":[{"name":"remote_address","value":"127.0.0.1"}]}}},"application/xml":{"schema":{"$ref":"#/components/schemas/AuthenticationContextEntity"},"example":{"userName":"my_username","password":"my_password","validation-factors":{"validation-factor":[{"name":"remote_address","value":"127.0.0.1"}]}}}}},"responses":{"201":{"description":"the session creation was successful or an ongoing session already existed. Contains the Crowd SSO token","content":{"application/json":{"example":{"token":"abc123","user":{"link":null,"name":"sampleuser","firstName":null,"lastName":null,"displayName":null,"directoryId":null,"password":null,"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":null,"attributes":null,"expanded":true,"email":null},"link":{"href":"https://crowdserver/crowd/session/abcc123","rel":"self"},"createdDate":1464453000000,"expiryDate":1464456600000,"unaliasedUsername":null}},"application/xml":{"example":{"token":"abc123","user":{"link":null,"name":"sampleuser","firstName":null,"lastName":null,"displayName":null,"directoryId":null,"password":null,"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":null,"attributes":null,"expanded":true,"email":null},"link":{"href":"https://crowdserver/crowd/session/abcc123","rel":"self"},"createdDate":1464453000000,"expiryDate":1464456600000,"unaliasedUsername":null}}}},"400":{"description":"returned if the user authentication details are incorrect (e.g., bad password, inactive user, user does not have permission to authenticate with the application)"}}},"delete":{"tags":["Token"],"summary":"Delete user tokens","description":"Invalidate all tokens for a given user name. Optionally, a token key can be saved from invalidation if specified in the 'exclude' param","operationId":"deleteTokensForUser","parameters":[{"name":"username","in":"query","description":"the user for which the tokens will be invalidated","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"exclude","in":"query","description":"the token to exclude","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"tokens were deleted successfully"},"400":{"description":"returned if the application is not found"},"404":{"description":"returned if the user is not found"}}}},"/rest/usermanagement/1/session/{token}":{"get":{"tags":["Token"],"summary":"Get session","description":"Retrieves the token with the authenticated user expanded","operationId":"getSession","parameters":[{"name":"token","in":"path","description":"the token to retrieve","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"session was successfully retrieved","content":{"application/json":{"example":{"token":"abc123","user":{"link":null,"name":"sampleuser","firstName":null,"lastName":null,"displayName":null,"directoryId":null,"password":null,"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":null,"attributes":null,"expanded":true,"email":null},"link":{"href":"https://crowdserver/crowd/session/abcc123","rel":"self"},"createdDate":1464453000000,"expiryDate":1464456600000,"unaliasedUsername":null}},"application/xml":{"example":{"token":"abc123","user":{"link":null,"name":"sampleuser","firstName":null,"lastName":null,"displayName":null,"directoryId":null,"password":null,"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":null,"attributes":null,"expanded":true,"email":null},"link":{"href":"https://crowdserver/crowd/session/abcc123","rel":"self"},"createdDate":1464453000000,"expiryDate":1464456600000,"unaliasedUsername":null}}}},"404":{"description":"returned if the token cannot be found"}}},"post":{"tags":["Token"],"summary":"Validate token","description":"Validates the session token. Validating the token keeps the SSO session alive","operationId":"userManagement_validateToken","parameters":[{"name":"token","in":"path","description":"Crowd SSO token","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"requestBody":{"description":"list of validation factors","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationFactorEntityList"},"example":{"validation-factor":[{"name":"remote_address","value":"127.0.0.1"}]}},"application/xml":{"schema":{"$ref":"#/components/schemas/ValidationFactorEntityList"},"example":{"validation-factor":[{"name":"remote_address","value":"127.0.0.1"}]}}}},"responses":{"201":{"description":"token validation was successful","content":{"application/json":{"example":{"token":"abc123","user":{"link":null,"name":"sampleuser","firstName":null,"lastName":null,"displayName":null,"directoryId":null,"password":null,"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":null,"attributes":null,"expanded":true,"email":null},"link":{"href":"https://crowdserver/crowd/session/abcc123","rel":"self"},"createdDate":1464453000000,"expiryDate":1464456600000,"unaliasedUsername":null}},"application/xml":{"example":{"token":"abc123","user":{"link":null,"name":"sampleuser","firstName":null,"lastName":null,"displayName":null,"directoryId":null,"password":null,"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":null,"attributes":null,"expanded":true,"email":null},"link":{"href":"https://crowdserver/crowd/session/abcc123","rel":"self"},"createdDate":1464453000000,"expiryDate":1464456600000,"unaliasedUsername":null}}}},"400":{"description":"returned if the validation factors are incorrect"},"404":{"description":"returned if the token cannot be found"}}},"delete":{"tags":["Token"],"summary":"Invalidate token","description":"Invalidates the Crowd SSO token","operationId":"invalidateToken","parameters":[{"name":"token","in":"path","description":"the token to invalidate","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"responses":{"201":{"description":"token was invalidated successfully"}}}},"/rest/usermanagement/1/user":{"get":{"tags":["Users"],"summary":"Get user","description":"Retrieves user details. Either username or key query parameter must be present. The 'expand' parameter can be used to include additional data in the response. This can currently be set to 'attributes', to include the user's attributes in the response","operationId":"getUser","parameters":[{"name":"username","in":"query","description":"name of the user","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"key","in":"query","description":"the key of the user (only observed if userName is null)","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the representation of the found user","content":{"application/json":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}},"application/xml":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}}}},"404":{"description":"returned if the user cannot be found"}}},"put":{"tags":["Users"],"summary":"Update user","description":"Updates a user","operationId":"updateUser","parameters":[{"name":"username","in":"query","description":"name of the user to update","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"user entity containing data to be updated","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserEntity"},"example":"{\n \"name\" : \"sampleuser\",\n \"firstName\" : \"Sample\",\n \"lastName\" : \"User\",\n \"displayName\" : \"Sample User\",\n \"active\" : true,\n \"attributes\" : null,\n \"email\" : \"sample@user.cool\",\n}\n"},"application/xml":{"schema":{"$ref":"#/components/schemas/UserEntity"},"example":"{\n \"name\" : \"sampleuser\",\n \"firstName\" : \"Sample\",\n \"lastName\" : \"User\",\n \"displayName\" : \"Sample User\",\n \"active\" : true,\n \"attributes\" : null,\n \"email\" : \"sample@user.cool\",\n}\n"}}},"responses":{"204":{"description":"the user was successfully updated","content":{"application/json":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}},"application/xml":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}}}},"400":{"description":"returned if the user data was invalid, for example the usernames in the body and the uri don't match"},"403":{"description":"returned if application is not allowed to update a user"},"404":{"description":"returned if user could not be found"}}},"post":{"tags":["Users"],"summary":"Add user","description":"Creates a new user","operationId":"addUser","requestBody":{"description":"user entity to be created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserEntity"},"example":{"link":null,"name":"sampleuser","firstName":"Sample","lastName":"User","displayName":"Sample User","directoryId":null,"password":{"link":null,"value":"secret"},"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":true,"attributes":null,"email":"sample@user.cool","expanded":true}},"application/xml":{"schema":{"$ref":"#/components/schemas/UserEntity"},"example":{"link":null,"name":"sampleuser","firstName":"Sample","lastName":"User","displayName":"Sample User","directoryId":null,"password":{"link":null,"value":"secret"},"encryptedPassword":null,"key":null,"createdDate":null,"updatedDate":null,"directoryName":null,"active":true,"attributes":null,"email":"sample@user.cool","expanded":true}}}},"responses":{"201":{"description":"the user was successfully created","content":{"application/json":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}},"application/xml":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}}}},"400":{"description":"returned if the user data was invalid, for example missing password or the user already exists"},"403":{"description":"returned if the application is not allowed to create a new user"}}},"delete":{"tags":["Users"],"summary":"Remove user","description":"Removes a user","operationId":"removeUser","parameters":[{"name":"username","in":"query","description":"name of the user to remove","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"the user was successfully removed"},"403":{"description":"returned if application is not allowed to remove a user"},"404":{"description":"returned if user could not be found"}}}},"/rest/usermanagement/1/user/attribute":{"get":{"tags":["Users"],"summary":"Get user attributes","description":"Retrieves a list of user attributes","operationId":"getUserAttributes","parameters":[{"name":"username","in":"query","description":"name of the user","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"user attributes were successfully renamed","content":{"application/json":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]}},"application/xml":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]}}}},"404":{"description":"returned if the user could not be found"}}},"post":{"tags":["Users"],"summary":"Add user attributes","description":"Stores the user attributes. Attribute values will not be overwritten if not specified in attributes","operationId":"storeUserAttributes","parameters":[{"name":"username","in":"query","description":"name of the user","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"authentication information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MultiValuedAttributeEntityList"},"example":{"attribute":[{"name":"invalidPasswordAttempts","values":["0"]},{"name":"requiresPasswordChange","values":["false"]}]}},"application/xml":{"schema":{"$ref":"#/components/schemas/MultiValuedAttributeEntityList"},"example":{"attribute":[{"name":"invalidPasswordAttempts","values":["0"]},{"name":"requiresPasswordChange","values":["false"]}]}}}},"responses":{"204":{"description":"the attributes were successfully updated"},"403":{"description":"returned if the application is not allowed to set attributes"},"404":{"description":"returned if the user could not be found"}}},"delete":{"tags":["Users"],"summary":"Delete user attribute","description":"Deletes a user attribute","operationId":"removeUserAttribute","parameters":[{"name":"username","in":"query","description":"name of the user","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"attributename","in":"query","description":"name of the attribute to delete","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"the attributes was successfully deleted, or the attribute was not defined for the user"},"403":{"description":"returned if the application is not allowed to delete attributes"},"404":{"description":"returned if the user could not be found"}}}},"/rest/usermanagement/1/user/avatar":{"get":{"tags":["Users"],"summary":"Get user avatar","description":"Returns the url of the user's avatar","operationId":"getAvatarForUser","parameters":[{"name":"username","in":"query","description":"name of the user","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"s","in":"query","description":"the requested avatar size in pixels","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":128}}],"responses":{"303":{"description":"the uri for the user's avatar (in the location header)"},"404":{"description":"returned if the user doesn't exist, or doesn't have an avatar defined"}}}},"/rest/usermanagement/1/user/expire-all-passwords":{"post":{"tags":["Users"],"summary":"Expire all passwords","description":"Expires all passwords for all directories which are part of this application, regardless of group mapping","operationId":"expireAllPasswords","parameters":[{"name":"confirm","in":"query","description":"must be true to take the action. This is so all passwords cannot accidentally be expired","required":true,"style":"form","explode":true,"schema":{"type":"boolean"}}],"responses":{"204":{"description":"passwords were expired successfully"},"500":{"description":"returned if any of the directories fail to expire all passwords. This can lead to only some of the users having expired passwords"}}}},"/rest/usermanagement/1/user/group/direct":{"get":{"tags":["Users"],"summary":"Get direct groups","description":"Returns the a list of groups the user is a direct member of","operationId":"getDirectGroups","parameters":[{"name":"username","in":"query","description":"name of the user","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"groupname","in":"query","description":"name of the group (optional). If null, then all the groups that the user is a direct member of, are returned","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"max-results","in":"query","description":"maximum number of results to return","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":1000}},{"name":"start-index","in":"query","description":"start index of the result","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":0}}],"responses":{"200":{"description":"a list of groups was retrieved successfully","content":{"application/json":{"example":{"group":[{"link":{"href":"https://crowdserver/crowd/group?groupname=group&groupname=crowd-administrators","rel":"self"},"name":"crowd-administrators"}]}},"application/xml":{"example":{"group":[{"link":{"href":"https://crowdserver/crowd/group?groupname=group&groupname=crowd-administrators","rel":"self"},"name":"crowd-administrators"}]}}}},"404":{"description":"returned if the user could not be found or the user is not a direct member of the specified group"}}},"post":{"tags":["Users"],"summary":"Add user to group","description":"Adds a user as a direct member of the group","operationId":"addUserToGroup","parameters":[{"name":"username","in":"query","description":"name of the user","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"parent group entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GroupEntity"}},"application/xml":{"schema":{"$ref":"#/components/schemas/GroupEntity"}}}},"responses":{"201":{"description":"the user was successfully added to the group"},"400":{"description":"returned if the group could not be found"},"403":{"description":"returned if the application is not allowed to add the membership"},"404":{"description":"returned if the user could not be found"},"409":{"description":"returned if the user is already a direct member of the group"}}},"delete":{"tags":["Users"],"summary":"Remove user from group","description":"Removes a user from a group","operationId":"removeUserFromGroup","parameters":[{"name":"username","in":"query","description":"name of the user","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"groupname","in":"query","description":"name of the group","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"the user was successfully removed from the group"},"403":{"description":"returned if the application is not allowed to delete the membership"},"404":{"description":"returned if the user or group could not be found"}}}},"/rest/usermanagement/1/user/group/nested":{"get":{"tags":["Users"],"summary":"Get nested group","description":"Retrieves the group that the user is a nested member of","operationId":"getNestedGroups","parameters":[{"name":"username","in":"query","description":"name of the user","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"groupname","in":"query","description":"name of the group (optional). If null, then all the groups that the user is a nested member of, are returned","required":false,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"max-results","in":"query","description":"maximum number of results to return","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":1000}},{"name":"start-index","in":"query","description":"start index of the result","required":false,"style":"form","explode":true,"schema":{"type":"integer","format":"int32","default":0}}],"responses":{"200":{"description":"the user was successfully removed from the group","content":{"application/json":{"example":{"group":[{"link":{"href":"https://crowdserver/crowd/group?groupname=group&groupname=crowd-administrators","rel":"self"},"name":"crowd-administrators"}]}},"application/xml":{"example":{"group":[{"link":{"href":"https://crowdserver/crowd/group?groupname=group&groupname=crowd-administrators","rel":"self"},"name":"crowd-administrators"}]}}}},"404":{"description":"returned if the user could not be found or the user is not a nested member of the specified group"}}}},"/rest/usermanagement/1/user/mail/password":{"post":{"tags":["Users"],"summary":"Request password reset","description":"Sends the user a password reset link to the user's email address","operationId":"requestPasswordReset","parameters":[{"name":"username","in":"query","description":"the name of the user to request a password reset","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"the password was reset link was sent"},"403":{"description":"returned if the application is not allowed to update the user's password"},"404":{"description":"returned if the user could not be found"},"500":{"description":"returned if the operation failed due to an error"}}}},"/rest/usermanagement/1/user/mail/usernames":{"post":{"tags":["Users"],"summary":"Request usernames reminder","description":"Requests an email to be sent containing usernames associated with the given email address","operationId":"requestUsernamesReminder","parameters":[{"name":"email","in":"query","description":"email address of the user","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"email was sent successfully"},"500":{"description":"returned if no users with the given email were found"}}}},"/rest/usermanagement/1/user/password":{"put":{"tags":["Users"],"summary":"Update user password","description":"Updates a user password","operationId":"updateUserPassword","parameters":[{"name":"username","in":"query","description":"the name of the user to update the password for","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"update password entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PasswordEntity"},"example":{"link":null,"value":"hunter2"}},"application/xml":{"schema":{"$ref":"#/components/schemas/PasswordEntity"},"example":{"link":null,"value":"hunter2"}}}},"responses":{"204":{"description":"the password was updated"},"403":{"description":"returned if the application is not allowed to update a user's password"},"404":{"description":"returned if the user could not be found"}}},"delete":{"tags":["Users"],"summary":"Delete user password","description":"Deletes a user password. This will prevent the user from logging in using a password","operationId":"deleteUserPassword","parameters":[{"name":"username","in":"query","description":"the name of the user to delete the password for","required":true,"style":"form","explode":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"the password was deleted"},"403":{"description":"returned if the application is not allowed to delete a user's password"},"404":{"description":"returned if the user could not be found"}}}},"/rest/usermanagement/1/user/rename":{"post":{"tags":["Users"],"summary":"Rename user","description":"Renames a user","operationId":"renameUser","parameters":[{"name":"username","in":"query","description":"name of the user to rename","required":false,"style":"form","explode":true,"schema":{"type":"string"}}],"requestBody":{"description":"rename user entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RenameEntity"},"example":{"newName":"sampleuser-brandnewname"}},"application/xml":{"schema":{"$ref":"#/components/schemas/RenameEntity"},"example":{"newName":"sampleuser-brandnewname"}}}},"responses":{"204":{"description":"the user was successfully renamed","content":{"application/json":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}},"application/xml":{"example":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user?username=sampleuser","rel":"self"},"name":"sampleuser","password":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/password?username=sampleuser","rel":"edit"}},"key":"557057:927441f1-cc92-4030-b633-8a2bbdf7136e","active":true,"attributes":{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"attribute":[{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts","rel":"self"},"name":"invalidPasswordAttempts","values":["0"]},{"link":{"href":"https://crowdserver/crowd/rest/usermanagement/1/user/attributes?username=sampleuser&attributename=invalidPasswordAttempts&attributename=requiresPasswordChange","rel":"self"},"name":"requiresPasswordChange","values":["false"]}]},"first-name":"Sample","last-name":"User","display-name":"Sample User","email":"sample@user.cool"}}}},"400":{"description":"returned if new user name is invalid or already taken"},"403":{"description":"returned if application is not allowed to rename the user"},"404":{"description":"returned if the user could not be found"}}}}},"components":{"schemas":{"AccessBasedSynchronizationFilterTypeEntity":{"type":"object","properties":{"filterType":{"type":"string","enum":["NO_FILTERING","USER_ONLY_FILTERING","USER_AND_GROUP_FILTERING"]}}},"ApplicationEntity":{"type":"object","properties":{"active":{"type":"boolean"},"aliasingEnabled":{"type":"boolean","xml":{"name":"aliasing-enabled"}},"attributes":{"$ref":"#/components/schemas/AttributeEntityList"},"description":{"type":"string"},"directoryMappings":{"$ref":"#/components/schemas/DirectoryMappingEntityList"},"id":{"type":"integer","format":"int64","xml":{"attribute":true}},"link":{"$ref":"#/components/schemas/Link"},"lowercaseOutput":{"type":"boolean","xml":{"name":"lowercase-output"}},"name":{"type":"string"},"password":{"$ref":"#/components/schemas/PasswordEntity"},"remoteAddresses":{"$ref":"#/components/schemas/RemoteAddressEntitySet"},"type":{"type":"string"}},"xml":{"name":"application"}},"ApplicationSamlConfigurationRestEntity":{"type":"object","properties":{"addUserAttributesEnabled":{"type":"boolean"},"assertionConsumerUrl":{"type":"string"},"enabled":{"type":"boolean"},"entityId":{"type":"string"},"nameIdFormat":{"type":"string","enum":["UNSPECIFIED","EMAIL"]}}},"ApplicationSessionsSearchResultEntity":{"type":"object","properties":{"application":{"$ref":"#/components/schemas/ApplicationEntity"},"id":{"type":"integer","format":"int64"},"initialization":{"type":"string","format":"date-time"},"lastAccess":{"type":"integer","format":"int64"},"randomHash":{"type":"string"}}},"AttributeEntityList":{"type":"object","properties":{"callback":{"$ref":"#/components/schemas/ListWrapperCallbackAttributeEntity"},"empty":{"type":"boolean"},"link":{"$ref":"#/components/schemas/Link"}},"xml":{"name":"attributes"}},"AuditLogAuthorRestDTO":{"type":"object","properties":{"displayName":{"type":"string"},"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"originalName":{"type":"string"},"subtype":{"type":"string"},"type":{"type":"string","enum":["USER","APPLICATION","SYSTEM","PLUGIN","SYNCHRONIZATION","DATA_IMPORT","OTHER"]}}},"AuditLogAuthorRestrictionRestDTO":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"type":{"type":"string","enum":["USER","APPLICATION","SYSTEM","PLUGIN","SYNCHRONIZATION","DATA_IMPORT","OTHER"]}}},"AuditLogChangesetRestDTO":{"type":"object","properties":{"author":{"$ref":"#/components/schemas/AuditLogAuthorRestDTO"},"authorId":{"type":"integer","format":"int64"},"authorName":{"type":"string"},"authorType":{"type":"string","enum":["USER","APPLICATION","SYSTEM","PLUGIN","SYNCHRONIZATION","DATA_IMPORT","OTHER"]},"entities":{"uniqueItems":true,"type":"array","items":{"$ref":"#/components/schemas/AuditLogEntityRestDTO"}},"entityId":{"type":"integer","format":"int64"},"entityName":{"type":"string"},"entityType":{"type":"string","enum":["APPLICATION","DIRECTORY","USER","GROUP","CONFIGURATION","RESTORE","OTHER"]},"entries":{"uniqueItems":true,"type":"array","items":{"$ref":"#/components/schemas/AuditLogEntryRestDTO"}},"eventMessage":{"type":"string"},"eventType":{"type":"string","enum":["CREATED","MODIFIED","DELETED","STARTED","COMPLETED","FAILED","OTHER","APPLICATION_CREATED","APPLICATION_UPDATED","APPLICATION_DELETED","DIRECTORY_CREATED","DIRECTORY_UPDATED","DIRECTORY_DELETED","CONFIGURATION_MODIFIED","BACKUP_STARTED","BACKUP_FINISHED","RESTORE_STARTED","RESTORE_FINISHED","USER_CREATED","USER_UPDATED","USER_DELETED","GROUP_CREATED","GROUP_UPDATED","GROUP_DELETED","ADDED_TO_GROUP","REMOVED_FROM_GROUP","ALIAS_CREATED","ALIAS_UPDATED","ALIAS_DELETED","SYNCHRONIZATION_STARTED","SYNCHRONIZATION_FINISHED","IMPORT_STARTED","IMPORT_FINISHED","PASSWORD_RESET_STARTED","PASSWORD_RESET_FINISHED","PASSWORD_CHANGED","GROUP_ADMIN_ASSIGNED","GROUP_ADMIN_REVOKED"]},"id":{"type":"integer","format":"int64"},"ipAddress":{"type":"string"},"source":{"type":"string","enum":["MANUAL","SYNCHRONIZATION","DATA_IMPORT"]},"timestamp":{"type":"string","format":"date-time"}}},"AuditLogConfigurationEntity":{"type":"object","properties":{"retentionPeriod":{"type":"string","enum":["ONE_MONTH","THREE_MONTHS","SIX_MONTHS","UNLIMITED"]}}},"AuditLogEntityRestDTO":{"type":"object","properties":{"displayName":{"type":"string"},"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"originalName":{"type":"string"},"primary":{"type":"boolean"},"subtype":{"type":"string"},"type":{"type":"string","enum":["APPLICATION","DIRECTORY","USER","GROUP","CONFIGURATION","RESTORE","OTHER"]}}},"AuditLogEntityRestrictionRestDTO":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}},"AuditLogEntryRestDTO":{"type":"object","properties":{"newValue":{"type":"string"},"oldValue":{"type":"string"},"propertyName":{"type":"string"}}},"AuditLogQueryRestDTO":{"type":"object","properties":{"actions":{"type":"array","items":{"type":"string","enum":["CREATED","MODIFIED","DELETED","STARTED","COMPLETED","FAILED","OTHER","APPLICATION_CREATED","APPLICATION_UPDATED","APPLICATION_DELETED","DIRECTORY_CREATED","DIRECTORY_UPDATED","DIRECTORY_DELETED","CONFIGURATION_MODIFIED","BACKUP_STARTED","BACKUP_FINISHED","RESTORE_STARTED","RESTORE_FINISHED","USER_CREATED","USER_UPDATED","USER_DELETED","GROUP_CREATED","GROUP_UPDATED","GROUP_DELETED","ADDED_TO_GROUP","REMOVED_FROM_GROUP","ALIAS_CREATED","ALIAS_UPDATED","ALIAS_DELETED","SYNCHRONIZATION_STARTED","SYNCHRONIZATION_FINISHED","IMPORT_STARTED","IMPORT_FINISHED","PASSWORD_RESET_STARTED","PASSWORD_RESET_FINISHED","PASSWORD_CHANGED","GROUP_ADMIN_ASSIGNED","GROUP_ADMIN_REVOKED"]}},"applications":{"type":"array","items":{"$ref":"#/components/schemas/AuditLogEntityRestrictionRestDTO"}},"authors":{"type":"array","items":{"$ref":"#/components/schemas/AuditLogAuthorRestrictionRestDTO"}},"beforeOrOn":{"type":"string","format":"date-time"},"directories":{"type":"array","items":{"$ref":"#/components/schemas/AuditLogEntityRestrictionRestDTO"}},"groups":{"type":"array","items":{"$ref":"#/components/schemas/AuditLogEntityRestrictionRestDTO"}},"onOrAfter":{"type":"string","format":"date-time"},"sources":{"type":"array","items":{"type":"string","enum":["MANUAL","SYNCHRONIZATION","DATA_IMPORT"]}},"users":{"type":"array","items":{"$ref":"#/components/schemas/AuditLogEntityRestrictionRestDTO"}}}},"AuthenticationContextEntity":{"type":"object","properties":{"password":{"type":"string"},"userName":{"type":"string"},"validationFactors":{"type":"array","xml":{"name":"validation-factors"},"items":{"$ref":"#/components/schemas/ValidationFactorEntity"}}},"xml":{"name":"authentication-context"}},"AzureAdConnectionTestEntity":{"type":"object","properties":{"authorityEndpoint":{"type":"string"},"graphEndpoint":{"type":"string"},"nativeAppId":{"type":"string"},"region":{"type":"string"},"tenantId":{"type":"string"},"webAppId":{"type":"string"},"webAppSecret":{"type":"string"}},"xml":{"name":"connection-test-data"}},"BackupConfigurationEntity":{"type":"object","properties":{"backupConnectorEnabled":{"type":"boolean"},"dailyBackupTime":{"type":"string"},"resetDomainEnabled":{"type":"boolean"},"scheduledBackupEnabled":{"type":"boolean"}}},"BackupSummaryEntity":{"type":"object","properties":{"currentTimeOnServer":{"type":"string","format":"date-time"},"oldestBackupDate":{"type":"string","format":"date-time"},"recentBackupDate":{"type":"string","format":"date-time"}}},"BatchResultWithFailureReasonsRestDtoDirectoryEntityRestDTO":{"type":"object","properties":{"failures":{"type":"array","items":{"$ref":"#/components/schemas/FailedEntityDirectoryEntityRestDTO"}},"successes":{"type":"array","items":{"$ref":"#/components/schemas/DirectoryEntityRestDTO"}}}},"BooleanRestrictionEntity":{"type":"object","xml":{"name":"boolean-search-restriction"},"allOf":[{"$ref":"#/components/schemas/SearchRestrictionEntity"},{"type":"object","properties":{"booleanLogic":{"type":"string","xml":{"name":"boolean-logic","attribute":true}},"restrictions":{"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/components/schemas/SearchRestrictionEntity"}}}}]},"CrowdConnectionTestEntity":{"type":"object","properties":{"applicationName":{"type":"string"},"applicationPassword":{"type":"string"},"httpProxyHost":{"type":"string"},"httpProxyPassword":{"type":"string"},"httpProxyPort":{"type":"integer","format":"int32"},"httpProxyUsername":{"type":"string"},"url":{"type":"string"}},"xml":{"name":"connection-test-data"}},"DetailedDirectoryData":{"type":"object","properties":{"active":{"type":"boolean"},"descriptiveName":{"type":"string"},"directoryType":{"type":"string"},"displayName":{"type":"string"},"id":{"type":"integer","format":"int64"},"synchronizable":{"type":"boolean"},"synchronizationStatus":{"$ref":"#/components/schemas/DetailedDirectorySynchronizationData"}}},"DetailedDirectorySynchronizationData":{"type":"object","properties":{"endDate":{"type":"integer","format":"int64"},"startDate":{"type":"integer","format":"int64"},"status":{"type":"string","enum":["IN_PROGRESS","SUCCESS","FAILURE","UNKNOWN"]},"type":{"type":"string","enum":["INCREMENTAL","FULL"]}}},"DirectoryData":{"type":"object","properties":{"directoryType":{"type":"string","enum":["UNKNOWN","INTERNAL","CONNECTOR","CUSTOM","DELEGATING","CROWD","AZURE_AD"]},"displayName":{"type":"string"},"id":{"type":"integer","format":"int64"}}},"DirectoryEntityRestDTO":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string","enum":["USER","GROUP"]}}},"DirectoryMappingAuthenticationEntity":{"type":"object","properties":{"allowAll":{"type":"boolean"},"allowGroups":{"type":"array","items":{"type":"string"}}}},"DirectoryMappingEntity":{"type":"object","properties":{"authentication":{"$ref":"#/components/schemas/DirectoryMappingAuthenticationEntity"},"defaultGroups":{"type":"array","items":{"type":"string"}},"id":{"type":"integer","format":"int64"},"name":{"type":"string"}}},"DirectoryMappingEntityList":{"type":"object","properties":{"empty":{"type":"boolean"},"link":{"$ref":"#/components/schemas/Link"}},"xml":{"name":"directory-mappings"}},"DirectoryMappingsEntity":{"type":"object","properties":{"mappings":{"type":"array","items":{"$ref":"#/components/schemas/DirectoryMappingEntity"}}}},"FailedEntityDirectoryEntityRestDTO":{"type":"object","properties":{"entity":{"$ref":"#/components/schemas/DirectoryEntityRestDTO"},"reason":{"type":"string"}}},"FileNameEntity":{"type":"object","properties":{"fileName":{"type":"string"}}},"FilePart":{"type":"object","properties":{"contentType":{"type":"string"},"formField":{"type":"boolean"},"inputStream":{"type":"object"},"name":{"type":"string"},"size":{"type":"integer","format":"int64"},"value":{"type":"string"}}},"GroupAdministrationMappingRestDTO":{"type":"object","properties":{"active":{"type":"boolean"},"directory":{"$ref":"#/components/schemas/DirectoryData"},"displayName":{"type":"string"},"email":{"type":"string"},"entity":{"$ref":"#/components/schemas/DirectoryEntityRestDTO"},"name":{"type":"string"}}},"GroupEntity":{"type":"object","properties":{"active":{"type":"boolean"},"attributes":{"$ref":"#/components/schemas/MultiValuedAttributeEntityList"},"description":{"type":"string"},"expanded":{"type":"boolean"},"link":{"$ref":"#/components/schemas/Link"},"name":{"type":"string","xml":{"attribute":true}},"type":{"type":"string","enum":["GROUP","LEGACY_ROLE"]}},"xml":{"name":"group"}},"GroupIdentifiersEntityList":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string"}}}},"GroupSearchResultEntity":{"type":"object","properties":{"active":{"type":"boolean"},"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"}}},"GroupsFilter":{"type":"object","properties":{"directoryId":{"type":"integer","format":"int64"},"search":{"type":"string"}}},"LdapConnectionTestEntity":{"type":"object","properties":{"baseDN":{"type":"string"},"connector":{"type":"string"},"groupDNaddition":{"type":"string"},"groupDescriptionAttr":{"type":"string"},"groupMemberAttr":{"type":"string"},"groupNameAttr":{"type":"string"},"groupObjectClass":{"type":"string"},"groupObjectFilter":{"type":"string"},"ldapPassword":{"type":"string"},"referral":{"type":"boolean"},"secureMode":{"type":"string","enum":["false","true","starttls"]},"url":{"type":"string"},"userDN":{"type":"string"},"userDNaddition":{"type":"string"},"userDisplayNameAttr":{"type":"string"},"userEncryptionMethod":{"type":"string"},"userExternalIdAttr":{"type":"string"},"userFirstnameAttr":{"type":"string"},"userGroupMemberAttr":{"type":"string"},"userLastnameAttr":{"type":"string"},"userMailAttr":{"type":"string"},"userNameAttr":{"type":"string"},"userNameRdnAttr":{"type":"string"},"userObjectClass":{"type":"string"},"userObjectFilter":{"type":"string"},"userPasswordAttr":{"type":"string"}},"xml":{"name":"connection-test-data"}},"LdapSearchTestEntity":{"type":"object","properties":{"baseDN":{"type":"string"},"connector":{"type":"string"},"filterExpiredUsers":{"type":"boolean"},"groupDNaddition":{"type":"string"},"groupDescriptionAttr":{"type":"string"},"groupMemberAttr":{"type":"string"},"groupNameAttr":{"type":"string"},"groupObjectClass":{"type":"string"},"groupObjectFilter":{"type":"string"},"ldapPassword":{"type":"string"},"pagedResults":{"type":"boolean"},"pagedResultsSize":{"type":"integer","format":"int32"},"primaryGroupSupport":{"type":"boolean"},"referral":{"type":"boolean"},"secureMode":{"type":"string","enum":["false","true","starttls"]},"strategy":{"type":"string"},"url":{"type":"string"},"useRelaxedDNStandardisation":{"type":"boolean"},"useUserMembershipAttribute":{"type":"boolean"},"useUserMembershipAttributeForGroupMembership":{"type":"boolean"},"userDN":{"type":"string"},"userDNaddition":{"type":"string"},"userDisplayNameAttr":{"type":"string"},"userEncryptionMethod":{"type":"string"},"userExternalIdAttr":{"type":"string"},"userFirstnameAttr":{"type":"string"},"userGroupMemberAttr":{"type":"string"},"userLastnameAttr":{"type":"string"},"userMailAttr":{"type":"string"},"userNameAttr":{"type":"string"},"userNameRdnAttr":{"type":"string"},"userObjectClass":{"type":"string"},"userObjectFilter":{"type":"string"},"userPasswordAttr":{"type":"string"}},"xml":{"name":"ldap-configuration"}},"LicensedUserSearchParameters":{"type":"object","properties":{"directoryId":{"type":"string"},"jiraType":{"type":"string"},"lastLoginBefore":{"type":"integer","format":"int64"},"search":{"type":"string"},"searchVersion":{"type":"integer","format":"int64"}}},"Link":{"type":"object","properties":{"href":{"type":"string","format":"uri","xml":{"attribute":true}},"rel":{"type":"string","xml":{"attribute":true}}}},"ListWrapperCallbackAttributeEntity":{"type":"object"},"ListWrapperCallbackMultiValuedAttributeEntity":{"type":"object"},"LookAndFeelConfigEntity":{"type":"object","properties":{"announcementText":{"type":"string"},"customLogoId":{"type":"string"},"header":{"type":"string"},"logo":{"type":"string"},"primaryColor":{"type":"string"},"showAnnouncement":{"type":"boolean"},"showLogo":{"type":"boolean"},"welcomeText":{"type":"string"}}},"MailServerConfigurationEntity":{"type":"object","properties":{"addressToTest":{"type":"string"},"from":{"type":"string"},"host":{"type":"string"},"id":{"type":"string"},"jndiLocation":{"type":"string"},"jndiMailActive":{"type":"boolean"},"notificationEmails":{"type":"array","items":{"type":"string"}},"oauth2ConfigurationId":{"type":"string"},"password":{"type":"string"},"port":{"type":"integer","format":"int32"},"prefix":{"type":"string"},"startTLS":{"type":"string"},"timeout":{"type":"integer","format":"int32"},"useSSL":{"type":"string"},"username":{"type":"string"}}},"MultiValuedAttributeEntity":{"type":"object","properties":{"link":{"$ref":"#/components/schemas/Link"},"name":{"type":"string","xml":{"attribute":true}},"value":{"type":"string"},"values":{"type":"array","xml":{"wrapped":true},"items":{"type":"string"}}},"xml":{"name":"attribute"}},"MultiValuedAttributeEntityList":{"type":"object","properties":{"attributes":{"type":"array","xml":{"name":"attribute"},"items":{"$ref":"#/components/schemas/MultiValuedAttributeEntity"}},"callback":{"$ref":"#/components/schemas/ListWrapperCallbackMultiValuedAttributeEntity"},"empty":{"type":"boolean"},"link":{"$ref":"#/components/schemas/Link"}},"xml":{"name":"attributes"}},"NullRestrictionEntity":{"type":"object","xml":{"name":"null-search-restriction"},"allOf":[{"$ref":"#/components/schemas/SearchRestrictionEntity"}]},"PasswordChangeRequest":{"type":"object","properties":{"newPassword":{"type":"string"},"oldPassword":{"type":"string"},"username":{"type":"string"}}},"PasswordEntity":{"type":"object","properties":{"link":{"$ref":"#/components/schemas/Link"},"value":{"type":"string"}},"xml":{"name":"password"}},"PasswordResetRequest":{"type":"object","properties":{"directoryId":{"type":"integer","format":"int64"},"password":{"type":"string"},"token":{"type":"string"},"username":{"type":"string"}}},"PropertyEntity":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string"}},"xml":{"name":"property"}},"PropertyRestrictionEntity":{"type":"object","xml":{"name":"property-search-restriction"},"allOf":[{"$ref":"#/components/schemas/SearchRestrictionEntity"},{"type":"object","properties":{"matchMode":{"type":"string","xml":{"name":"match-mode"}},"property":{"$ref":"#/components/schemas/PropertyEntity"},"value":{"type":"string"}}}]},"RememberMeConfigurationEntity":{"type":"object","properties":{"enabled":{"type":"boolean"},"expirationPeriod":{"type":"integer","format":"int32"}}},"RemoteAddressEntity":{"type":"object","properties":{"link":{"$ref":"#/components/schemas/Link"},"value":{"type":"string"}},"xml":{"name":"remote-address"}},"RemoteAddressEntitySet":{"type":"object","properties":{"empty":{"type":"boolean"},"link":{"$ref":"#/components/schemas/Link"}},"xml":{"name":"remote-addresses"}},"RenameEntity":{"type":"object","properties":{"newName":{"type":"string","xml":{"name":"new-name"}}},"xml":{"name":"rename"}},"ReorderEntity":{"type":"object","properties":{"after":{"type":"string"},"position":{"type":"string"}}},"RestPageApplicationEntity":{"type":"object","properties":{"isLastPage":{"type":"boolean"},"limit":{"type":"integer","format":"int32"},"size":{"type":"integer","format":"int32"},"start":{"type":"integer","format":"int32"},"values":{"type":"array","items":{"$ref":"#/components/schemas/ApplicationEntity"}}}},"RestPageApplicationSessionsSearchResultEntity":{"type":"object","properties":{"isLastPage":{"type":"boolean"},"limit":{"type":"integer","format":"int32"},"size":{"type":"integer","format":"int32"},"start":{"type":"integer","format":"int32"},"values":{"type":"array","items":{"$ref":"#/components/schemas/ApplicationSessionsSearchResultEntity"}}}},"RestPageDetailedDirectoryData":{"type":"object","properties":{"isLastPage":{"type":"boolean"},"limit":{"type":"integer","format":"int32"},"size":{"type":"integer","format":"int32"},"start":{"type":"integer","format":"int32"},"values":{"type":"array","items":{"$ref":"#/components/schemas/DetailedDirectoryData"}}}},"RestPageDirectoryData":{"type":"object","properties":{"isLastPage":{"type":"boolean"},"limit":{"type":"integer","format":"int32"},"size":{"type":"integer","format":"int32"},"start":{"type":"integer","format":"int32"},"values":{"type":"array","items":{"$ref":"#/components/schemas/DirectoryData"}}}},"RestPageDirectoryMappingEntity":{"type":"object","properties":{"isLastPage":{"type":"boolean"},"limit":{"type":"integer","format":"int32"},"size":{"type":"integer","format":"int32"},"start":{"type":"integer","format":"int32"},"values":{"type":"array","items":{"$ref":"#/components/schemas/DirectoryMappingEntity"}}}},"RestPageGroupAdministrationMappingRestDTO":{"type":"object","properties":{"isLastPage":{"type":"boolean"},"limit":{"type":"integer","format":"int32"},"size":{"type":"integer","format":"int32"},"start":{"type":"integer","format":"int32"},"values":{"type":"array","items":{"$ref":"#/components/schemas/GroupAdministrationMappingRestDTO"}}}},"RestPageGroupSearchResultEntity":{"type":"object","properties":{"isLastPage":{"type":"boolean"},"limit":{"type":"integer","format":"int32"},"size":{"type":"integer","format":"int32"},"start":{"type":"integer","format":"int32"},"values":{"type":"array","items":{"$ref":"#/components/schemas/GroupSearchResultEntity"}}}},"RestPageUserSessionsSearchResultEntity":{"type":"object","properties":{"isLastPage":{"type":"boolean"},"limit":{"type":"integer","format":"int32"},"size":{"type":"integer","format":"int32"},"start":{"type":"integer","format":"int32"},"values":{"type":"array","items":{"$ref":"#/components/schemas/UserSessionsSearchResultEntity"}}}},"SearchRestrictionEntity":{"required":["restriction-type"],"type":"object","properties":{"restriction-type":{"type":"string"}},"xml":{"name":"search-restriction"},"discriminator":{"propertyName":"restriction-type"}},"TokenValidEntity":{"type":"object","properties":{"status":{"type":"string","enum":["VALID","INVALID","UNVERIFIED_SINCE_USER_DISABLED"]}}},"TokenValidRequest":{"type":"object","properties":{"directoryId":{"type":"integer","format":"int64"},"token":{"type":"string"},"username":{"type":"string"}}},"UserEntity":{"type":"object","properties":{"active":{"type":"boolean"},"attributes":{"$ref":"#/components/schemas/MultiValuedAttributeEntityList"},"createdDate":{"type":"string","format":"date-time","xml":{"name":"created-date"}},"directoryId":{"type":"integer","format":"int64","xml":{"name":"directory-id"}},"directoryName":{"type":"string","xml":{"name":"directory-name"}},"displayName":{"type":"string","xml":{"name":"display-name"}},"email":{"type":"string"},"encryptedPassword":{"$ref":"#/components/schemas/PasswordEntity"},"expanded":{"type":"boolean"},"firstName":{"type":"string","xml":{"name":"first-name"}},"key":{"type":"string"},"lastName":{"type":"string","xml":{"name":"last-name"}},"link":{"$ref":"#/components/schemas/Link"},"name":{"type":"string","xml":{"attribute":true}},"password":{"$ref":"#/components/schemas/PasswordEntity"},"updatedDate":{"type":"string","format":"date-time","xml":{"name":"updated-date"}}},"xml":{"name":"user"}},"UserIdentifiersEntityList":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"string"}}}},"UserSearchParams":{"type":"object","properties":{"active":{"type":"boolean"},"avatarSizeHint":{"type":"integer","format":"int32"},"directoryIds":{"type":"array","items":{"type":"integer","format":"int64"}},"search":{"type":"string"}}},"UserSessionsSearchResultEntity":{"type":"object","properties":{"directory":{"$ref":"#/components/schemas/DirectoryData"},"id":{"type":"integer","format":"int64"},"initialization":{"type":"string","format":"date-time"},"lastAccess":{"type":"integer","format":"int64"},"randomHash":{"type":"string"},"username":{"type":"string"}}},"ValidationFactorEntity":{"type":"object","properties":{"name":{"type":"string"},"value":{"type":"string"}},"xml":{"name":"validation-factor"}},"ValidationFactorEntityList":{"type":"object","properties":{"validationFactors":{"type":"array","xml":{"name":"validation-factor"},"items":{"$ref":"#/components/schemas/ValidationFactorEntity"}}},"xml":{"name":"validation-factors"}}},"securitySchemes":{"basic":{"type":"http","description":"In order to use basic authorization, provide username:password Base64 encoded in the 'Authorization' header.","scheme":"basic"}}},"x-atlassian-narrative":{"documents":[{"anchor":"about","body":"Welcome to the Crowd REST API reference. This page documents the REST resources available in Crowd, along with expected \nHTTP response codes and sample requests. This set of REST APIs is intended to be used by applications connecting to Crowd.\n\n
\n
\n\n### Transition from docs.atlassian.com\nWe’ve recently moved our Crowd Data Center REST API and it now uses Swagger. This REST API is applicable for Crowd Data \nCenter 6.0.0 and later. If you’re looking for the REST API for earlier versions of Crowd, visit\n
Crowd 5.x REST API Documentation.\n\n
","title":"About"},{"anchor":"uri-structure","body":"The Crowd REST APIs allow you to address the Crowd data entities as 'resources'. This means that the data entities are\nidentified by URIs and operated on by HTTP requests (`GET`, `POST`, `PUT` and `DELETE`). Below are details of the resources made\navailable by the APIs. To use a REST API, your application will make an HTTP request and parse the response.\n\nDepending on the resource, responses are returned as [JSON](http://en.wikipedia.org/wiki/JSON) and/or [XML](http://en.wikipedia.org/wiki/XML).\nFor resources that offer both, you can use the [Accept HTTP header](https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html)\nto specify which one you prefer. URIs for Crowd's REST API resource have the following structure:\n```url\nhttp://host:port/context/rest/api-name/api-version/resource-name\n```\n\nThe following API names are available in Crowd:\n\n- *usermanagement* - used by applications to interact with the Crowd server for user management operations\n- *admin* - used for administrative operations on the Crowd server\n- *appmanagement* - used for administrative operations on the Crowd server for application management\n\nEach API has it's version. However, there is also a symbolic version, called *latest*, which resolves to the latest\nversion supported by the given Crowd instance. As an example, if you wanted to retrieve information about a user 'admin'\nfrom a Crowd instance, you would access:\n```url\nhttps://crowd-server:8095/crowd/rest/usermanagement/latest/user?username=admin\n```\n","title":"URI Structure"},{"anchor":"authentication","body":"The preferred authentication methods for the Crowd REST APIs is [HTTP basic authentication](https://developer.atlassian.com/display/JIRADEV/JIRA+REST+API+Example+-+Basic+Authentication) (when using SSL).\n\nPlease note that the *usermanagement* resource expects the callers to authenticate using the application credentials\n(i.e. the application name and password configured in Crowd). Calls to this APIs are restricted by IP as configured.\nPermissions and seen users, groups and other entities depend on the application configuration as well.\n\nOther resources expect the callers to authenticate using the user credentials. Permissions depend on configured user permissions.","title":"Authentication"},{"anchor":"expansion","body":"In order to simplify API responses, the Crowd REST API uses resource expansion. This means the API will only return parts\nof the resource when explicitly requested.\n\nYou can use the expand query parameter to specify a comma-separated list of entities that you want expanded, identifying\neach of them by name. For example, appending `?expand=attributes` to a users's URI requests the inclusion of the user\nattribute names and values in the response. Continuing with our example above, we would use the following URL to get the\nattribute values for the 'admin' user:\n```url\nhttps://crowd-server:8095/crowd/rest/usermanagement/latest/user?username=admin&expand=attributes\n```\nTo discover the identifiers for each entity, look at the expand property in the parent object. In the JSON example below,\nthe resource declares widgets as being expandable.\n```json\n{\n \"expand\": \"widgets\",\n \"widgets\": {\n \"widgets\": []\n }\n}\n```\nYou can use the dot notation to specify expansion of entities within another entity. For example `?expand=widgets.fringels`\nwould expand the widgets collection and also the fringel property on each widget.","title":"Expansion"},{"anchor":"pagination","body":"Crowd uses pagination to limit the response size for resources that return a potentially large collection of items.\nA request to a paged API will result in a `values` array, wrapped in a JSON object with some paging metadata:\n```json\n{\n \"values\": [\n {\n /* result 0 */\n },\n {\n /* result 1 */\n },\n {\n /* result 2 */\n }\n ],\n \"size\": 3,\n \"start\": 0,\n \"limit\": 50,\n \"isLastPage\": true\n}\n```\nClients can use the limit and start query parameters to retrieve the desired number of results.\n\nThe `limit` parameter indicates how many results to return per page. Most APIs default to returning 50 if the limit is\nleft unspecified. This number can be increased, but note that a resource-specific hard limit will apply. These hard\nlimits can be configured by server administrators, so it's always best practice to check the limit attribute on the\nresponse to see what limit has been applied. The request to get a larger page should look like this:\n```url\nhttp://host:port/context/rest/api-name/api-version/path/to/resource?limit={desired size of page}\n```\nThe `start` parameter indicates which item should be used as the first item in the page of results. All paged responses\ncontain an isLastPage attribute indicating whether another page of items exists.","title":"Pagination"},{"anchor":"crowd-query-language","body":"The Crowd Query Language (CQL) allows developers using the Crowd REST API to perform user and group searches in a more intuitive and simpler form.\n\nThe Crowd REST API allows applications to POST to the Search resource with the search restriction in XML or JSON. The XML and JSON form is similar to the Java search restriction classes that Crowd uses.\n\nIn order to search for all users with an email of `bob@example.net`, you would previously `POST` to http://myhost.com:8095/rest/usermanagement/1/search?entity-type=user, with the following XML content:\n\n``` xml\n\n\n \n email\n STRING\n \n EXACTLY_MATCHES\n bob@example.net\n\n```\n\nThere is a much simpler way to perform user and group searches. You can now perform a `GET` request to the search resource with the restrictions expressed in CQL as a query parameter.\n\n``` bash\nGET http://myhost.com:8095/rest/usermanagement/1/search?entity-type=ENTITY_TYPE&restriction=RESTRICTION\n```\n\nwhere `ENTITY_TYPE` is: user or group\nand `RESTRICTION` is the URL encoded search restriction expressed in CQL.\n\nThe above XML content now becomes:\n\n``` bash\nemail=bob@example.net\n```\n\ni.e.\n\n``` bash\nGET http://myhost.com:8095/rest/usermanagement/1/search?entity-type=user&restriction=email%3Dbob%40example.net\n```\n\n### Keywords Reference\n\n##### AND\n\nUsed to combine multiple restrictions, allowing you to refine your search. The AND statement is satisfied if all of the conditions are true.\n\nNote that you can use [\\#parentheses](#setting-precedence-of-operators) to control the order in which statements are executed.\n\n###### Examples\n\n- Find all users with a first name of bob and an email of bob@example.net:\n\n ``` sql\n firstName = \"bob\" and email = \"bob@example.net\"\n ```\n\n- Find all inactive groups with a name starting with \"admin\":\n\n ``` sql\n name = \"admin*\" and active = false\n ```\n\n##### OR\n\nUsed to combine multiple restrictions, allowing you to expand your search. The OR statement is satisfied if any of the conditions are true.\n\nNote that you can use [\\#parentheses](#setting-precedence-of-operators) to control the order in which statements are executed.\n\n###### Examples\n\n- Find all users with either a last name of Smith or Jones:\n\n ``` sql\n lastName = Smith or lastName = Jones\n ```\n\n- Find all users created after December 2010 or a first name starting with Jo:\n\n ``` sql\n createdDate > 2010-12 or firstName = Jo*\n ```\n\n### Property Names Reference\n\nCrowd distinguishes between entity primary properties and entity secondary properties. The set of primary properties for each entity type is listed below with their type:\n\n- User primary properties: `name` (String), `email` (String), `firstName` (String), `lastName` (String), `displayName` (String), `active` (Boolean), `externalId` (String), `createdDate` (Date), `updatedDate` (Date).\n- Group primary properties: `name` (String), `description` (String), `active` (Boolean), `local` (Boolean), `createdDate` (Date), `updatedDate` (Date).\n\nCustom attributes are secondary properties of type String and can be referred by their attribute key.\n\n### Operators Reference\n\n##### EQUALS: =\n\nThe \"`=`\" operator is used to search for exact and partial matches of the specified value.\n\nTo find entities where the value of a specified field exactly matches *multiple* values, use multiple \"`=`\" statements with the [\\#AND](#and) operator. Partial matches are performed with the wildcard, \"\\*\", symbol. The only currently supported partial matches are:\n\n- starts-with (\"term\\*\") and\n- contains (\"\\*term\\*\")\n\n
\nThe only currently supported partial matches are: \"starts-with\" and \"contains\". For instance, these restrictions are illegal: \"email=\\*@example.net\", \"firstName=Ro\\*ert\"\n
\n\n###### Examples\n\n- Find all active users:\n\n ``` sql\n active = true\n ```\n\n- Find all users with a display name of John Smith:\n\n ``` sql\n displayName = \"John Smith\"\n ```\n\n- Find all users with a first name starting with Jo:\n\n ``` sql\n firstName = \"Jo*\"\n ```\n\n- Find all users with an email containing atlassian:\n\n ``` sql\n email = \"*atlassian*\"\n ```\n\n##### GREATER THAN: >\n\nThe \"`>`\" operator is used to search for entities where the value of the specified field is greater than the specified value. Cannot be used with [\\#string](#string) fields.\n\nNote that the \"`>`\" operator can only be used with fields which support ordering (e.g. date fields). To see a field's supported operators, check the individual [\\#field](#fields-reference) reference.\n\n###### Examples\n\n- Find all groups created after 1 January 2010:\n\n ``` sql\n createdDate > 2010-01-01\n ```\n\n##### LESS THAN: <\n\nThe \"`<`\" operator is used to search for entities where the value of the specified field is less than the specified value. Cannot be used with [\\#string](#string) fields.\n\nNote that the \"`<`\" operator can only be used with fields which support ordering (e.g. date fields). To see a field's supported operators, check the individual [\\#field](#fields-reference) reference.\n\n###### Examples\n\n- Find all groups created before the year 2011:\n\n ``` sql\n updatedDate < 2011\n ```\n\n### Fields Reference\n\n- [User Fields](#user-fields)\n - [Email](#email)\n - [Group Fields](#group-fields)\n\n### User Fields\n\nThe following fields may be used in user queries.\n\n##### Name\n\nSearch for users with the specified user name.\n\nNote: this field supports [partial-matching](#partial-matching).\n\n###### Syntax\n\n``` javascript\nname\n```\n\n###### Field Type\n\nString\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

yes

no

no

\n\n###### Examples\n\n- Find the user with username ernie:\n\n ``` javascript\n name = \"ernie\"\n ```\n\n- Find all users with a username starting with ern:\n\n ``` javascript\n name = \"ern*\"\n ```\n\n- Find all users with a username containing rni:\n\n ``` javascript\n name = *rni*\n ```\n\n#### Email\n\nSearch for users with the specified email.\n\nNote: this field supports [partial-matching](#partial-matching).\n\n###### Syntax\n\n``` javascript\nemail\n```\n\n###### Field Type\n\nString\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

yes

no

no

\n\n###### Examples\n\n- Find all users with an email of bob@example.net:\n\n ``` javascript\n email = \"bob@example.net\"\n ```\n\n- Find all users with an email starting with bob:\n\n ``` javascript\n email = \"bob*\"\n ```\n\n- Find all users with an email containing example:\n\n ``` javascript\n email = *example*\n ```\n\n##### First Name\n\nSearch for users with the specified first name.\n\nNote: this field supports [partial-matching](#partial-matching).\n\n###### Syntax\n\n``` javascript\nfirstName\n```\n\n###### Field Type\n\nString\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

yes

no

no

\n\n###### Examples\n\n- Find all users with a first name of Shrek:\n\n ``` javascript\n firstName = \"Shrek\"\n ```\n\n- Find all users with a first name starting with Sh:\n\n ``` javascript\n firstName = \"Sh*\"\n ```\n\n- Find all users with a first name containing hr:\n\n ``` javascript\n firstName = *hr*\n ```\n\n##### Last Name\n\nSearch for users with the specified last name.\n\nNote: this field supports [partial-matching](#partial-matching).\n\n###### Syntax\n\n``` javascript\nlastName\n```\n\n###### Field Type\n\nString\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

yes

no

no

\n\n###### Examples\n\n- Find all users with a last name of Smith:\n\n ``` javascript\n lastName = \"Smith\"\n ```\n\n- Find all users with a last name starting with Smi:\n\n ``` javascript\n lastName = \"Smi*\"\n ```\n\n- Find all users with a last name containing mit:\n\n ``` javascript\n lastName = *mit*\n ```\n\n##### Display Name\n\nSearch for users with the specified display name.\n\nNote: this field supports [partial-matching](#partial-matching).\n\n###### Syntax\n\n``` javascript\ndisplayName\n```\n\n###### Field Type\n\nString\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

yes

no

no

\n\n###### Examples\n\n- Find all users with a display name of John Smith:\n\n ``` javascript\n displayName = \"John Smith\"\n ```\n\n- Find all users with a display name starting with John:\n\n ``` javascript\n displayName = \"John*\"\n ```\n\n- Find all users with a display name containing Smi:\n\n ``` javascript\n displayName = *Smi*\n ```\n\n##### Active\n\nSearch for users with the specified active field value. The only valid values for active are: true, false.\n\n###### Syntax\n\n``` javascript\nactive\n```\n\n###### Field Type\n\nBoolean\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

no

no

no

\n\n###### Examples\n\n- Find all active users:\n\n ``` javascript\n active = true\n ```\n\n- Find all inactive users:\n\n ``` javascript\n active = false\n ```\n\n##### Created Date\n\nSearch for users created on, before or after a particular date.\n\nThe date is specified in ISO-8601 format:\nYYYY-MM-DDTHH-MM-SS-ZZ±hhmm\n\nThe final \"±hhmm\" is the UTC offset.\n\nValid examples include:\n\n- 2010-12-08T16:11:21.181+1100\n- 2010-12-08T16:11:21.181\n- 2010-12-08T16:11:21\n- 2010-12-08T16:11\n- 2010-12-08T16\n- 2010-12-08\n- 2010-12\n- 2010\n\nAs seen in the example above, the date element can be omitted from the smallest date element up to (but not including) the year element. It is important to note that though the smaller date elements can be omitted, each of the above examples represent a date instance. So a date of \"2010\" represents \"2010-01-01T00:00:00.000+0000\".\n\n###### Syntax\n\n``` javascript\ncreatedDate\n```\n\n###### Field Type\n\nISO-8601 Date\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

no

yes

yes

\n\n###### Examples\n\n- Find all users created exactly at 5:23pm on 15 December 2010:\n\n ``` javascript\n createdDate = 2010-12-15T17:23\n ```\n\n- Find all users created before 2010:\n\n ``` javascript\n createdDate < 2010\n ```\n\n- Find all users created after 15 December 2010 midnight:\n\n ``` javascript\n createdDate > 2010-12-15\n ```\n\n##### Updated Date\n\nSearch for users updated on, before or after a particular date.\n\nThe date is specified in ISO-8601 format:\nYYYY-MM-DDTHH-MM-SS-ZZ±hhmm\n\nThe final \"±hhmm\" is the UTC offset.\n\nValid examples include:\n\n- 2010-12-08T16:11:21.181+1100\n- 2010-12-08T16:11:21.181\n- 2010-12-08T16:11:21\n- 2010-12-08T16:11\n- 2010-12-08T16\n- 2010-12-08\n- 2010-12\n- 2010\n\nAs seen in the example above, the date element can be omitted from the smallest date element up to (but not including) the year element. It is important to note that though the smaller date elements can be omitted, each of the above examples represent a date instance. So a date of \"2010\" represents \"2010-01-01T00:00:00.000+0000\".\n\n###### Syntax\n\n``` javascript\nupdatedDate\n```\n\n###### Field Type\n\nISO-8601 Date\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

no

yes

yes

\n\n###### Examples\n\n- Find all users updated exactly at 5:23pm on 15 December 2010:\n\n ``` javascript\n updatedDate = 2010-12-15T17:23\n ```\n\n- Find all users updated before 2010:\n\n ``` javascript\n updatedDate < 2010\n ```\n\n- Find all users updated after 15 December 2010 midnight:\n\n ``` javascript\n updatedDate > 2010-12-15\n ```\n\n#### Group Fields\n\nThe following fields may be used in group queries.\n\n##### Name\n\nSearch for groups with the specified name.\n\nNote: this field supports [partial-matching](#partial-matching).\n\n###### Syntax\n\n``` javascript\nname\n```\n\n###### Field Type\n\nString\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

yes

no

no

\n\n###### Examples\n\n- Find the group with the name administrators:\n\n ``` javascript\n name = \"administrators\"\n ```\n\n- Find all groups with a name starting with admin:\n\n ``` javascript\n name = \"admin*\"\n ```\n\n- Find all groups with a name containing nistra:\n\n ``` javascript\n name = *nistra*\n ```\n\n##### Active\n\nSearch for groups with the specified active field value. The only valid values for active are: true, false.\n\n###### Syntax\n\n``` javascript\nactive\n```\n\n###### Field Type\n\nBoolean\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

no

no

no

\n\n###### Examples\n\n- Find all active groups:\n\n ``` javascript\n active = true\n ```\n\n- Find all inactive groups:\n\n ``` javascript\n active = false\n ```\n\n##### Created Date\n\nSearch for groups created on, before or after a particular date.\n\nThe date is specified in ISO-8601 format:\nYYYY-MM-DDTHH-MM-SS-ZZ±hhmm\n\nThe final \"±hhmm\" is the UTC offset.\n\nValid examples include:\n\n- 2010-12-08T16:11:21.181+1100\n- 2010-12-08T16:11:21.181\n- 2010-12-08T16:11:21\n- 2010-12-08T16:11\n- 2010-12-08T16\n- 2010-12-08\n- 2010-12\n- 2010\n\nAs seen in the example above, the date element can be omitted from the smallest date element up to (but not including) the year element. It is important to note that though the smaller date elements can be omitted, each of the above examples represent a date instance. So a date of \"2010\" represents \"2010-01-01T00:00:00.000+0000\".\n\n###### Syntax\n\n``` javascript\ncreatedDate\n```\n\n###### Field Type\n\nISO-8601 Date\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

no

yes

yes

\n\n###### Examples\n\n- Find all groups created exactly at 5:23pm on 15 December 2010:\n\n ``` javascript\n createdDate = 2010-12-15T17:23\n ```\n\n- Find all groups created before 2010:\n\n ``` javascript\n createdDate < 2010\n ```\n\n- Find all groups created after 15 December 2010 midnight:\n\n ``` javascript\n createdDate > 2010-12-15\n ```\n\n##### Updated Date\n\nSearch for groups updated on, before or after a particular date.\n\nThe date is specified in ISO-8601 format:\nYYYY-MM-DDTHH-MM-SS-ZZ±hhmm\n\nThe final \"±hhmm\" is the UTC offset.\n\nValid examples include:\n\n- 2010-12-08T16:11:21.181+1100\n- 2010-12-08T16:11:21.181\n- 2010-12-08T16:11:21\n- 2010-12-08T16:11\n- 2010-12-08T16\n- 2010-12-08\n- 2010-12\n- 2010\n\nAs seen in the example above, the date element can be omitted from the smallest date element up to (but not including) the year element. It is important to note that though the smaller date elements can be omitted, each of the above examples represent a date instance. So a date of \"2010\" represents \"2010-01-01T00:00:00.000+0000\".\n\n###### Syntax\n\n``` javascript\nupdatedDate\n```\n\n###### Field Type\n\nISO-8601 Date\n\n###### Supported Operators\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

=

= with wildcard (*)

>

<

yes

no

yes

yes

\n\n###### Examples\n\n- Find all groups updated exactly at 5:23pm on 15 December 2010:\n\n ``` javascript\n updatedDate = 2010-12-15T17:23\n ```\n\n- Find all groups updated before 2010:\n\n ``` javascript\n updatedDate < 2010\n ```\n\n- Find all groups updated after 15 December 2010 midnight:\n\n ``` javascript\n updatedDate > 2010-12-15\n ```\n\n### Setting Precedence of Operators\n\nYou can use parentheses in complex CQL statements to enforce the precedence of [\\#operators](#property-names-reference).\n\nFor example, if you want to find all users with a username of \"bob\", updated after January 2011, with either an email starting with \"bob@ex\" or the user was created before 1 January 2010, you can use parentheses to enforce the precedence of the boolean operators in your query, i.e.:\n\n``` javascript\nname=\"bob\" AND (email = \"bob@ex*\" OR createdDate < 2010) AND updatedDate > 2011-01\n```\n\nNote that if you do not use parentheses, the operators have the following precedence starting from least to most:\n\n1. OR\n2. AND\n3. =, <, >\n\n## Reserved Characters\n\nCQL has a list of reserved characters:\n\n- **space** (`\" \"`)\n- `\"+\"`\n- `\".\"`\n- `\",\"`\n- `\";\"`\n- `\"?\"`\n- `\"|\"`\n- `\"*\"`\n- `\"/\"`\n- `\"%\"`\n- `\"^\"`\n- `\"$\"`\n- `\"#\"`\n- `\"@\"`\n- `\"[\"`\n- `\"]\"`\n- `\"<\"`\n- `\">\"`\n\nIf you wish to use these characters in queries, you need to surround them with quote-marks (you can use either single quote-marks (`'`) or double quote-marks (`\"`)).\n\nFor example:\n\n``` javascript\nfirstName = \"John Smith\"\n```\n\nWhile some of these characters are not being used at the moment, it is highly recommended that none of the characters in the above list are used as they may be used in future releases of Crowd.\n\n### Reserved Words\n\nCQL has a list of reserved words. These words need to be surrounded by quote-marks if you wish to use them in queries:\n\n\"and\", \"or\", \"<\", \">\"\n\n
You can use either single quote-marks (`'`) or double quote-marks (`\"`).
\n\nWhile some of these words are not being used at the moment, it is highly recommended that none of the words in the above list are used unquoted, as they may be used in future releases of Crowd.","title":"Crowd Query Language"}]}}