openapi: 3.0.1 info: title: Pure activity organization API description: The Pure API provides a secure and complete web services API for using and managing research information data in Pure. The API enables a broad range of use-cases for interacting with research information, from anonymous Open Data scenarios to enabling the next generation Pure admin. termsOfService: '' contact: name: '' url: '' email: pure-support@elsevier.com license: name: '' url: '' version: 5.35.3-4 servers: - url: https://pure.kfupm.edu.sa/ws/api description: KFUPM Elsevier Pure Web Services (authentication required) security: - api-key: [] tags: - name: organization paths: /organizations: get: tags: - organization summary: Lists all organizations description: Lists all organizations in the Pure instance. If you need to filter the organizations returned, see the POST version which supports additional filtering. operationId: organization_list parameters: - name: size in: query description: Number of returned organizations per request. schema: maximum: 1000 type: integer format: int32 default: 10 - name: offset in: query description: The offset for the returned list. 0 or null value is from the start schema: type: integer format: int32 default: 0 - name: order in: query description: The order of the list, must be a value from /organizations/orderings schema: type: string responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/OrganizationListResult' put: tags: - organization summary: Create organization description: Create organization operationId: organization_create requestBody: description: The content to create content: application/json: schema: $ref: '#/components/schemas/Organization' required: true responses: '201': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Organization' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' /organizations/allowed-address-countries: get: tags: - organization summary: A list of allowed address countries description: Get a list of allowed countries that can be used for the 'addresses.country' attribute of organizations operationId: organization_getAllowedAddressCountries responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-address-subdivision: get: tags: - organization summary: A list of allowed address subdivisions description: Get a list of allowed subdivisions that can be used for the 'addresses.subdivisions' attribute of organizations operationId: organization_getAllowedAddressSubdivisions responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-address-types: get: tags: - organization summary: A list of allowed address types description: Get a list of allowed address types that can be used for the 'addresses.type' attribute of organizations operationId: organization_getAllowedAddressTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-classified-file-types: get: tags: - organization summary: DEPRECATED - use 'allowed-photo-types' - A list of allowed classified identifier types description: DEPRECATED - use 'allowed-photo-types' - Get a list of allowed classified photo types that can be used for the 'photos.type' attribute of organizations operationId: organization_getAllowedClassifiedImageTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' deprecated: true /organizations/allowed-classified-identifier-types: get: tags: - organization summary: A list of allowed classified identifier types description: Get a list of allowed classified identifier types that can be used for the 'identifiers.type' attribute of organizations operationId: organization_getAllowedClassifiedIdentifierTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-cost-centers: get: tags: - organization summary: A list of allowed cost centers description: Get a list of allowed cost centers that can be used for the 'costCenters' attribute of organizations operationId: organization_getAllowedCostCenters responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-custom-defined-field-values/{propertyName}/classifications: get: tags: - organization summary: Get allowed classifications for the custom-defined field associated with the organization description: Get allowed classifications for the custom-defined field associated with the organization. operationId: organization_getAllowedCustomDefinedFieldClassifications parameters: - name: propertyName in: path description: PropertyName for the desired custom-defined field required: true schema: type: string responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Resource not found content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' /organizations/allowed-email-types: get: tags: - organization summary: A list of allowed e-mail types description: Get a list of allowed e-mail types that can be used for the 'emails.type' attribute of organizations operationId: organization_getAllowedEmailTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-keyword-group-configurations: get: tags: - organization summary: A list of keyword group configurations description: Get a list of allowed keyword group configurations that can be used when submitting keyword groups. operationId: organization_getAllowedKeywordGroupConfigurations responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/AllowedKeywordGroupConfigurationList' /organizations/allowed-keyword-group-configurations/{id}/classifications: get: tags: - organization summary: A list of allowed classifications for the specified keyword group description: Get a list of allowed classifications that can be used when submitting a specified keyword group. operationId: organization_getAllowedKeywordGroupConfigurationClassifications parameters: - name: id in: path description: Pure id of the keyword group configuration required: true schema: type: integer format: int64 responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-link-types: get: tags: - organization summary: A list of allowed link types description: Get a list of allowed link types on organizations operationId: organization_getAllowedLinkTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-locales: get: tags: - organization summary: A list of allowed locales in localized strings description: Get a list of allowed locales that can be used when submitting localized string entities. operationId: organization_getAllowedLocales responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/LocalesList' /organizations/allowed-main-research-areas: get: tags: - organization summary: A list of allowed main research areas description: Get a list of allowed main research areas on organizations operationId: organization_getAllowedMainResearchAreas responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-name-variant-types: get: tags: - organization summary: A list of allowed name variant types description: Get a list of allowed name variant types that can be used for the 'nameVariants.type' attribute of organizations operationId: organization_getAllowedNameVariantTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-phone-number-types: get: tags: - organization summary: A list of allowed phone number types description: Get a list of allowed phone number types that can be used for the 'phoneNumbers.type' attribute of organizations operationId: organization_getAllowedPhoneNumberTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-photo-types: get: tags: - organization summary: A list of allowed photo types description: Get a list of allowed photo types that can be used for the 'photos.type' attribute of organizations operationId: organization_getAllowedPhotoTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-profile-information-types: get: tags: - organization summary: A list of allowed profile information types description: Get a list of allowed profile information types that can be used for the 'profileInformations.type' attribute of organizations operationId: organization_getAllowedProfileInformationTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-types: get: tags: - organization summary: A list of allowed organization types description: Get a list of allowed types that can be used for the 'type' attribute of organizations operationId: organization_getAllowedTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/allowed-web-address-types: get: tags: - organization summary: A list of allowed web address types description: Get a list of allowed web address types that can be used for the 'webAddresses.type' attribute of organizations operationId: organization_getAllowedWebAddressTypes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ClassificationRefList' /organizations/disciplines/allowed-discipline-schemes: get: tags: - organization summary: A list of allowed discipline schemes description: Get a list fo a allowed discipline schemes for organizations operationId: organization_getAllowedDisciplineSchemes responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/DisciplinesDisciplineSchemeListResult' /organizations/disciplines/{discipline-scheme}/allowed-disciplines: get: tags: - organization summary: A list of allowed disciplines for a specific discipline scheme description: Get a list of a allowed disciplines for specific discipline scheme for organizations operationId: organization_getAllowedDisciplines parameters: - name: discipline-scheme in: path description: Identifier for the discipline scheme for organizations required: true schema: type: string - name: size in: query description: Number of returned disciplines per request schema: maximum: 1000 type: integer format: int32 default: 10 - name: offset in: query description: The offset for the returned list. 0 or null value is from the start schema: type: integer format: int32 default: 0 responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/DisciplinesDisciplineListResult' /organizations/disciplines/{discipline-scheme}/search: post: tags: - organization summary: Query operation for disciplines associated with organizations description: Lists disciplines from the discipline scheme associated with organizations in the Pure instance that matches the provided query. operationId: organization_listDisciplineAssociations parameters: - name: discipline-scheme in: path description: Identifier for the discipline scheme required: true schema: type: string requestBody: description: The query to perform content: application/json: schema: $ref: '#/components/schemas/DisciplinesAssociationsQuery' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/DisciplinesAssociationListResult' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' /organizations/file-uploads: put: tags: - organization summary: Upload file to a specific organization description: Uploads file for the organization operationId: organization_fileUploads parameters: - name: Content-Type in: header description: Set the mime type for the file schema: type: string requestBody: content: '*/*': schema: type: string format: binary required: true responses: default: description: default response content: application/json: schema: $ref: '#/components/schemas/UploadedFile' application/xml: schema: $ref: '#/components/schemas/UploadedFile' /organizations/orderings: get: tags: - organization summary: Lists available orderings description: Lists all orderings available to the organization endpoint. These values can be used by the order parameter. operationId: organization_getOrderings responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/OrderingsList' /organizations/search: post: tags: - organization summary: Query operation for organizations description: Lists organizations in the Pure instance that matches the provided query, similar to the GET version, instead of using parameters to alter the response, an JSON document is posted with the request. The JSON document contains fields for all the parameters available for the GET version, but also additional filtering options. operationId: organization_query requestBody: description: The query to perform content: application/json: schema: $ref: '#/components/schemas/OrganizationsQuery' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/OrganizationListResult' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' /organizations/{uuid}: get: tags: - organization summary: Get organization description: Get organization with specific UUID. operationId: organization_get parameters: - name: uuid in: path description: UUID of the desired organization required: true schema: pattern: .+ type: string format: uuid responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Organization' '301': description: The requested content have changed UUID '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' put: tags: - organization summary: Update organization description: Update organization with specific UUID. operationId: organization_update parameters: - name: uuid in: path description: UUID of the organization to update required: true schema: pattern: .+ type: string format: uuid requestBody: description: The content to update content: application/json: schema: $ref: '#/components/schemas/Organization' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Organization' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Resource not found content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' '409': description: Version conflict content: application/problem+json: schema: $ref: '#/components/schemas/ConflictProblemDetails' delete: tags: - organization summary: Delete organization description: Delete organization with specific UUID. operationId: organization_delete parameters: - name: uuid in: path description: UUID of the organization required: true schema: pattern: .+ type: string format: uuid responses: '204': description: Successful operation '404': description: Resource not found content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' '409': description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/ConflictProblemDetails' /organizations/{uuid}/actions/lock: post: tags: - organization summary: Lock the content description: Mark the content as external (used when content contains synchronised data). This has no effect on interactions with the content through the API. operationId: organization_lock parameters: - name: uuid in: path description: UUID of the content to lock required: true schema: pattern: .+ type: string format: uuid responses: '204': description: Content marked as locked '404': description: Resource not found content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' '409': description: Content already locked content: application/problem+json: schema: $ref: '#/components/schemas/ConflictProblemDetails' /organizations/{uuid}/actions/unlock: post: tags: - organization summary: Unlock the content description: Remove the external mark on the content (used when content contains synchronised data). This has no effect on interactions with the content through the API. operationId: organization_unlock parameters: - name: uuid in: path description: UUID of the content to unlock required: true schema: pattern: .+ type: string format: uuid responses: '204': description: Content marked as unlocked '404': description: Resource not found content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' '409': description: Content already unlocked content: application/problem+json: schema: $ref: '#/components/schemas/ConflictProblemDetails' /organizations/{uuid}/dependents: get: tags: - organization summary: Lists all dependents to the organization description: 'Lists all dependents to the organization with the specified UUID. If the user does not have access to view all the dependent content, an authorization error will be thrown. ' operationId: organization_dependents parameters: - name: uuid in: path description: UUID of the organization required: true schema: pattern: .+ type: string format: uuid - name: verbose in: query description: DEPRECATED - Parameter has no effect. deprecated: true schema: type: boolean responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ContentRefListResult' /organizations/{uuid}/disciplines/{discipline-scheme}: get: tags: - organization summary: Get disciplines from the discipline scheme associated with the organization description: Get disciplines from the discipline scheme associated with the organization with specific UUID. operationId: organization_getDisciplineAssociation parameters: - name: uuid in: path description: UUID of the desired organization required: true schema: pattern: .+ type: string format: uuid - name: discipline-scheme in: path description: Identifier for the discipline scheme required: true schema: type: string responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/DisciplinesAssociation' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' put: tags: - organization summary: Update disciplines from the discipline scheme associated with the organization description: Update disciplines from the discipline scheme associated with the organization with specific UUID. operationId: organization_putDisciplineAssociation parameters: - name: uuid in: path description: UUID of the organization to update required: true schema: pattern: .+ type: string format: uuid - name: discipline-scheme in: path description: Identifier for the discipline scheme required: true schema: type: string requestBody: description: The disciplines association to create content: application/json: schema: $ref: '#/components/schemas/DisciplinesAssociation' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/DisciplinesAssociation' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Resource not found content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' /organizations/{uuid}/files/{fileId}: get: tags: - organization summary: Get file from the organization description: Get file from the organization operationId: organization_getFile parameters: - name: uuid in: path description: UUID of the organization required: true schema: pattern: .+ type: string format: uuid - name: fileId in: path description: Id of the file required: true schema: pattern: .+ type: string responses: '200': description: Successful operation content: '*/*': schema: type: string format: binary /organizations/{uuid}/fingerprints: get: tags: - organization summary: Get the fingerprints for the organization description: Get the fingerprints for the organization with the specified UUID. operationId: organization_getFingerprints parameters: - name: uuid in: path description: UUID of the organization required: true schema: pattern: .+ type: string format: uuid responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/FingerprintListResult' '403': description: Access to requested resource is forbidden content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' /organizations/{uuid}/notes: get: tags: - organization summary: Lists notes description: Lists notes associated with an organization ordered by date (nulls last) operationId: organization_listNotes parameters: - name: uuid in: path description: UUID of the organization to get notes for required: true schema: pattern: .+ type: string format: uuid - name: size in: query description: Number of returned notes per request schema: maximum: 1000 type: integer format: int32 default: 10 - name: offset in: query description: The offset for the returned list. 0 or null value is from the start schema: type: integer format: int32 default: 0 responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/NoteListResult' '404': description: Organization not found content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' put: tags: - organization summary: Create note description: Create note and associate it with an organization operationId: organization_createNote parameters: - name: uuid in: path description: UUID of the organization to add note to required: true schema: pattern: .+ type: string format: uuid requestBody: description: The note to create content: application/json: schema: $ref: '#/components/schemas/Note' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Note' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' components: schemas: DisciplinesDisciplineScheme: required: - disciplineScheme - title type: object properties: disciplineScheme: type: string description: The discipline scheme identifier title: type: string description: The discipline title description: A discipline scheme SystemLocalizedString: type: object additionalProperties: type: string description: A set of localized string values each for a specific UI locale. nullable: true example: '{"en_GB":"Some text"}' description: A set of localized string values each for a specific UI locale. nullable: true example: en_GB: Some text RemoteFile: required: - fileId - fileState - sourceId - storeName type: object properties: sourceId: type: string description: The remote source ID storeName: type: string description: The name of the remote store timeStamp: type: string description: The timestamp at which the file was stored format: date-time fileId: type: string description: The remote file ID fileState: type: string description: The remote file state enum: - AWAITING_CREATION - CREATION_IN_PROGRESS - CREATION_FAILED - STORED - AWAITING_DELETE - DELETE_IN_PROGRESS - DELETE_FAILED - DELETED metadataUpdateRequired: type: boolean description: Whether the file's metadata should be updated default: false description: Information about a remote file (Elsevier only) UploadedFile: required: - key type: object properties: digest: type: string description: The calculated digest for the file in Pure readOnly: true digestType: type: string description: The digest type readOnly: true size: type: integer description: The file size of the file in Pure format: int64 readOnly: true mimeType: type: string description: The mime type detected for the file readOnly: true timeStamp: type: string description: The timestamp Pure received the file format: date-time readOnly: true expires: type: string description: The timestamp where Pure deletes the uploaded file if it has not been attached to any content format: date-time readOnly: true key: type: string description: Pure key identifer for the file upload readOnly: true description: Information about the uploaded file DisciplinesDisciplineListResult: type: object properties: count: type: integer description: The full count, ignoring paging format: int32 pageInformation: $ref: '#/components/schemas/PageInformation' items: type: array description: Disciplines items: $ref: '#/components/schemas/DisciplinesDiscipline' description: List of disciplines for a specific discipline scheme Link: required: - url type: object properties: pureId: type: integer description: Pure database ID of the object, prefer using the UUID if it is present on the entity format: int64 readOnly: true url: type: string description: The URL (Uniform Resource Locator) of the link alias: type: string description: A user-friendly text to show instead of the URL nullable: true description: $ref: '#/components/schemas/LocalizedString' linkType: $ref: '#/components/schemas/ClassificationRef' description: A hyperlink describing a location on the web. ConflictProblemDetails: type: object properties: type: type: string description: A URI reference [RFC3986] that identifies the problem type. title: type: string description: A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4). status: type: integer description: The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem. format: int32 detail: type: string description: A human-readable explanation specific to this occurrence of the problem. instance: type: string description: A URI reference that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced. modified: type: string format: date-time modifiedBy: type: string description: Problem details for state conflict failures Identifier: required: - typeDiscriminator type: object properties: typeDiscriminator: type: string discriminator: propertyName: typeDiscriminator mapping: ClassifiedId: '#/components/schemas/ClassifiedId' PrimaryId: '#/components/schemas/PrimaryId' Id: '#/components/schemas/Id' ClassifiedValue: required: - type - value type: object properties: pureId: type: integer description: Pure database ID of the object, prefer using the UUID if it is present on the entity format: int64 readOnly: true value: type: string description: Classified value type: $ref: '#/components/schemas/ClassificationRef' description: A classified value Visibility: required: - key type: object properties: key: type: string description: Visibility value enum: - FREE - CAMPUS - BACKEND - CONFIDENTIAL description: $ref: '#/components/schemas/SystemLocalizedString' description: Visibility of an object DisciplinesDisciplineAssignment: required: - disciplineId - splitPercentage type: object properties: disciplineId: type: string description: The assigned discipline splitPercentage: type: number description: The split percentages within an assigned discipline scheme must sum up to 100% format: double description: The assigned discipline and its split percentage Organization: required: - lifecycle - name - type type: object properties: pureId: type: integer description: Pure database ID of the object, prefer using the UUID if it is present on the entity format: int64 readOnly: true uuid: type: string description: UUID, this is the primary identity of the entity format: uuid readOnly: true createdBy: type: string description: Username of creator readOnly: true createdDate: type: string description: Date and time of creation format: date-time readOnly: true modifiedBy: type: string description: Username of the user that performed a modification readOnly: true modifiedDate: type: string description: Date and time of last modification format: date-time readOnly: true portalUrl: type: string description: URL of the content on the Pure Portal readOnly: true prettyUrlIdentifiers: type: array description: All pretty URLs readOnly: true items: type: string description: All pretty URLs readOnly: true previousUuids: type: array description: UUIDs of other content items which have been merged into this content item (or similar) readOnly: true items: type: string description: UUIDs of other content items which have been merged into this content item (or similar) readOnly: true version: type: string description: Used to guard against conflicting updates. For new content this is null, and for existing content the current value. The property should never be modified by a client, except in the rare case where the client wants to perform an update irrespective of if other clients have made updates in the meantime, also known as a "dirty write". A dirty write is performed by not including the property value or setting the property to null nullable: true name: $ref: '#/components/schemas/LocalizedString' type: $ref: '#/components/schemas/ClassificationRef' identifiers: type: array description: IDs that this object corresponds to in external systems. Such as a Scopus ID. Used by Pure where it is necessary to identify objects to specific external systems nullable: true items: $ref: '#/components/schemas/Identifier' nameVariants: type: array description: A list of organization name variants nullable: true items: $ref: '#/components/schemas/ClassifiedLocalizedValue' profileInformations: type: array description: A list of organization profile information entries nullable: true items: $ref: '#/components/schemas/ClassifiedFormattedLocalizedValue' photos: type: array description: A list of organization photos nullable: true items: $ref: '#/components/schemas/ImageFile' addresses: type: array description: A list of organization addresses nullable: true items: $ref: '#/components/schemas/ClassifiedAddress' phoneNumbers: type: array description: A list of organization phone numbers nullable: true items: $ref: '#/components/schemas/ClassifiedValue' emails: type: array description: A list of organization email addresses nullable: true items: $ref: '#/components/schemas/ClassifiedValue' webAddresses: type: array description: A list of organization web addresses nullable: true items: $ref: '#/components/schemas/ClassifiedLocalizedValue' lifecycle: $ref: '#/components/schemas/DateRange' takenOverBy: $ref: '#/components/schemas/OrganizationRef' parents: type: array description: A list of parent organizations nullable: true items: $ref: '#/components/schemas/OrganizationRef' contactPersons: type: array description: A list of organization contact persons nullable: true items: $ref: '#/components/schemas/PersonRef' keywordGroups: type: array description: A group for each type of keyword present nullable: true items: $ref: '#/components/schemas/KeywordGroup' costCenters: type: array description: A list of cost center classifications nullable: true items: $ref: '#/components/schemas/ClassificationRef' visibility: $ref: '#/components/schemas/Visibility' customDefinedFields: $ref: '#/components/schemas/CustomDefinedFields' links: type: array description: Links associated with this organization. nullable: true items: $ref: '#/components/schemas/Link' mainResearchArea: $ref: '#/components/schemas/ClassificationRef' systemName: type: string description: The content system name readOnly: true description: An organization in the institution DisciplinesAssociationsQuery: type: object properties: uuids: type: array items: type: string format: uuid size: type: integer format: int32 offset: type: integer format: int32 description: Create a query for discipline associations ClassifiedFormattedLocalizedValue: required: - type type: object properties: pureId: type: integer description: Pure database ID of the object, prefer using the UUID if it is present on the entity format: int64 readOnly: true value: $ref: '#/components/schemas/FormattedLocalizedString' type: $ref: '#/components/schemas/ClassificationRef' description: A classified formatted localized value Note: required: - text type: object properties: date: type: string description: Date and time of when the note was created, an event occurred or similar. Can be any point in time, but is normally preferred format: date-time nullable: true username: type: string description: Username related to the note. Usually a username of the user creating the note. Does not have to be a username of a Pure user nullable: true text: type: string description: Note text description: A note AllowedKeywordGroupConfigurationList: type: object properties: configurations: type: array items: $ref: '#/components/schemas/AllowedKeywordGroupConfiguration' description: List of allowed keyword group configurations ClassificationRef: required: - uri type: object properties: uri: type: string description: Classification URI of the referred classification term: $ref: '#/components/schemas/SystemLocalizedString' description: A reference to a classification value nullable: true DisciplinesDisciplineSchemeListResult: type: object properties: count: type: integer description: The amount of discipline schemes format: int32 items: type: array description: Discipline schemes items: $ref: '#/components/schemas/DisciplinesDisciplineScheme' description: List of discipline schemes ContentRefListResult: type: object properties: items: type: array items: $ref: '#/components/schemas/ContentRef' description: List of Content Refs GeoLocation: type: object properties: point: type: string description: Location expressed as a point nullable: true polygon: type: string description: Location expressed as a polygon nullable: true calculatedPoint: type: string description: Used to determine whether or not we may update the point. An end-user has not entered a point manually if the value of the calculated point is the same as point readOnly: true description: Geographical location nullable: true ProblemDetails: type: object properties: type: type: string description: A URI reference [RFC3986] that identifies the problem type. title: type: string description: A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4). status: type: integer description: The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem. format: int32 detail: type: string description: A human-readable explanation specific to this occurrence of the problem. instance: type: string description: A URI reference that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced. description: RFC7807 Error details discriminator: propertyName: type mapping: /error: '#/components/schemas/GenericProblemDetails' /validation-error: '#/components/schemas/ValidationProblemDetails' /dependency-violation-error: '#/components/schemas/DependencyViolationProblemDetails' ContentRef: required: - systemName - uuid type: object properties: uuid: type: string description: UUID of the referred content format: uuid systemName: type: string nullable: true discriminator: propertyName: systemName mapping: AccessDefinition: '#/components/schemas/AccessDefinitionRef' Activity: '#/components/schemas/ActivityRef' Application: '#/components/schemas/ApplicationRef' AuthorCollaboration: '#/components/schemas/AuthorCollaborationRef' Award: '#/components/schemas/AwardRef' ClassificationScheme: '#/components/schemas/ClassificationSchemeRef' ConferenceSeries: '#/components/schemas/ConferenceSeriesRef' DataSet: '#/components/schemas/DataSetRef' Equipment: '#/components/schemas/EquipmentRef' Event: '#/components/schemas/EventRef' ExternalOrganization: '#/components/schemas/ExternalOrganizationRef' ExternalPerson: '#/components/schemas/ExternalPersonRef' Impact: '#/components/schemas/ImpactRef' Journal: '#/components/schemas/JournalRef' Organization: '#/components/schemas/OrganizationRef' Person: '#/components/schemas/PersonRef' Publisher: '#/components/schemas/PublisherRef' PressMedia: '#/components/schemas/PressMediaRef' Prize: '#/components/schemas/PrizeRef' Project: '#/components/schemas/ProjectRef' ResearchOutput: '#/components/schemas/ResearchOutputRef' StudentThesis: '#/components/schemas/StudentThesisRef' FundingOpportunity: '#/components/schemas/FundingOpportunityRef' EthicalReview: '#/components/schemas/EthicalReviewRef' ApplicationCluster: '#/components/schemas/ApplicationClusterRef' AwardCluster: '#/components/schemas/AwardClusterRef' User: '#/components/schemas/UserRef' ERA2018FieldOfResearch: '#/components/schemas/Anzsrc2008FieldOfResearchRef' UnitOfAssessmentREF2014: '#/components/schemas/Ref2014UnitOfAssessmentRef' UnitOfAssessmentREF2020: '#/components/schemas/Ref2020UnitOfAssessmentRef' ANZSRCTypeOfActivity: '#/components/schemas/Anzsrc2020TypeOfActivityRef' ANZSRCFieldOfResearch: '#/components/schemas/Anzsrc2020FieldOfResearchRef' ANZSRCSocioEconomicObjective: '#/components/schemas/Anzsrc2020SocioEconomicObjectiveRef' Semester: '#/components/schemas/SemesterRef' Education: '#/components/schemas/EducationRef' Course: '#/components/schemas/CourseRef' CurriculumVitae: '#/components/schemas/CurriculumVitaeRef' CustomDefinedFieldConfiguration: '#/components/schemas/CustomDefinedFieldConfigurationRef' KeywordGroupConfiguration: '#/components/schemas/KeywordGroupConfigurationRef' Review: '#/components/schemas/ReviewRef' GenericContentRef: '#/components/schemas/GenericContentRef' UserProfile: '#/components/schemas/UserProfileRef' Thesaurus: '#/components/schemas/ThesaurusRef' Concept: '#/components/schemas/ConceptRef' PersonExpertise: '#/components/schemas/PersonExpertiseRef' Contract: '#/components/schemas/ContractRef' Milestone: '#/components/schemas/MilestoneRef' Fingerprint: '#/components/schemas/FingerprintRef' Specialization: '#/components/schemas/SpecializationRef' StudentProject: '#/components/schemas/StudentProjectRef' Fingerprint: required: - relatedContent type: object properties: pureId: type: integer description: Pure database ID of the object, prefer using the UUID if it is present on the entity format: int64 readOnly: true uuid: type: string description: UUID, this is the primary identity of the entity format: uuid readOnly: true createdBy: type: string description: Username of creator readOnly: true createdDate: type: string description: Date and time of creation format: date-time readOnly: true modifiedBy: type: string description: Username of the user that performed a modification readOnly: true modifiedDate: type: string description: Date and time of last modification format: date-time readOnly: true portalUrl: type: string description: URL of the content on the Pure Portal readOnly: true prettyUrlIdentifiers: type: array description: All pretty URLs readOnly: true items: type: string description: All pretty URLs readOnly: true previousUuids: type: array description: UUIDs of other content items which have been merged into this content item (or similar) readOnly: true items: type: string description: UUIDs of other content items which have been merged into this content item (or similar) readOnly: true version: type: string description: Used to guard against conflicting updates. For new content this is null, and for existing content the current value. The property should never be modified by a client, except in the rare case where the client wants to perform an update irrespective of if other clients have made updates in the meantime, also known as a "dirty write". A dirty write is performed by not including the property value or setting the property to null nullable: true relatedContent: $ref: '#/components/schemas/ContentRef' concepts: type: array description: The ranked concepts that makes up this fingerprint nullable: true items: $ref: '#/components/schemas/RankedConcept' systemName: type: string description: The content system name readOnly: true description: A fingerprint DisciplinesDiscipline: type: object properties: disciplineId: type: string description: The discipline identifier readOnly: true title: type: string description: The discipline title readOnly: true description: type: string description: The discipline description readOnly: true description: A discipline within a specific discipline scheme OrganizationListResult: type: object properties: count: type: integer description: The full count, ignoring paging format: int32 pageInformation: $ref: '#/components/schemas/PageInformation' items: type: array items: $ref: '#/components/schemas/Organization' description: A list of organizations ImageFile: required: - fileName - mimeType type: object properties: pureId: type: integer description: Pure database ID of the object, prefer using the UUID if it is present on the entity format: int64 readOnly: true fileId: type: string description: The id of the file readOnly: true fileName: type: string description: The documents file name mimeType: type: string description: The documents mime type size: type: integer description: The documents size in bytes format: int64 url: type: string description: Download url for the binary file readOnly: true fileStoreLocations: type: object additionalProperties: type: string description: Locations of the binary file in file stores. readOnly: true description: Locations of the binary file in file stores. readOnly: true uploadedFile: $ref: '#/components/schemas/UploadedFile' remoteFile: $ref: '#/components/schemas/RemoteFile' fileData: type: string description: Base64 encoded file data for new files. This property can be used instead of uploadedFile for small files format: byte writeOnly: true type: $ref: '#/components/schemas/ClassificationRef' copyrightConfirmation: type: boolean description: Indicates whether this file has been confirmed to adhere to the appropriate copyrights nullable: true caption: $ref: '#/components/schemas/LocalizedString' altText: $ref: '#/components/schemas/LocalizedString' copyrightStatement: $ref: '#/components/schemas/LocalizedString' description: An image file CustomDefinedField: required: - typeDiscriminator type: object properties: typeDiscriminator: type: string description: Map of CustomDefinedField values, where the key is the field identifier nullable: true example: '{ "fieldName1": "typeDiscriminator": "Integer", "value" : 1}' discriminator: propertyName: typeDiscriminator mapping: Integer: '#/components/schemas/CustomDefinedFieldInteger' String: '#/components/schemas/CustomDefinedFieldString' Date: '#/components/schemas/CustomDefinedFieldDate' Classification: '#/components/schemas/CustomDefinedFieldClassification' Boolean: '#/components/schemas/CustomDefinedFieldBoolean' Decimal: '#/components/schemas/CustomDefinedFieldDecimal' FormattedLocalizedString: type: object additionalProperties: type: string description: A set of localized strings that support formatting. Invalid locale values will be ignored. nullable: true example: '{"en_GB":"Some text"}' description: A set of localized strings that support formatting. Invalid locale values will be ignored. nullable: true example: en_GB: Some text PageInformation: type: object properties: offset: type: integer description: Offset that returned items start at format: int32 size: type: integer description: The requested number of items. May be higher than the actual number of items in the result if there are fewer items in the store than requested format: int32 description: Information about pages CustomDefinedFields: type: object additionalProperties: $ref: '#/components/schemas/CustomDefinedField' description: Map of CustomDefinedField values, where the key is the field identifier nullable: true example: '{ "fieldName1": "typeDiscriminator": "Integer", "value" : 1}' OrganizationRef: required: - uuid type: object description: A reference to an organization in the institution nullable: true allOf: - $ref: '#/components/schemas/ContentRef' ClassificationSchemeRef: required: - uuid type: object description: A reference to a classification scheme nullable: true allOf: - $ref: '#/components/schemas/ContentRef' PersonRef: required: - uuid type: object description: A reference to a person internal to the institution nullable: true allOf: - $ref: '#/components/schemas/ContentRef' ClassificationRefList: type: object properties: classifications: type: array items: $ref: '#/components/schemas/ClassificationRef' description: List of classification references ClassifiedAddress: required: - addressType type: object properties: pureId: type: integer description: Pure database ID of the object, prefer using the UUID if it is present on the entity format: int64 readOnly: true addressType: $ref: '#/components/schemas/ClassificationRef' addressLines: type: string description: Address for personal residence nullable: true street: type: string description: The name of the street nullable: true building: type: string description: The name of the building nullable: true postalcode: type: string description: The postal code of the city nullable: true city: type: string description: The name of the city nullable: true country: $ref: '#/components/schemas/ClassificationRef' subdivision: $ref: '#/components/schemas/ClassificationRef' geoLocation: $ref: '#/components/schemas/GeoLocation' description: A physical address ConceptRef: required: - uuid type: object description: A reference to a concept nullable: true allOf: - $ref: '#/components/schemas/ContentRef' - type: object properties: conceptId: type: string description: The concept ID readOnly: true DateRange: type: object properties: startDate: type: string description: Start date format: date nullable: true endDate: type: string description: End date format: date nullable: true description: A date range AllowedKeywordGroupConfiguration: required: - targetSystemName type: object properties: pureId: type: integer description: Pure database ID of the object, prefer using the UUID if it is present on the entity format: int64 readOnly: true targetSystemName: type: string description: The content system name this configuration applies to keywordGroupType: type: string description: The OpenAPI schema type of this keyword configuration readOnly: true name: $ref: '#/components/schemas/LocalizedString' description: $ref: '#/components/schemas/FormattedLocalizedString' classificationScheme: $ref: '#/components/schemas/ClassificationSchemeRef' allowUserdefinedKeywords: type: boolean description: Defines if user defined keywords are allowed limitToLeafSelection: type: boolean logicalName: type: string relationType: type: string description: The schema name of the type (with the ability to associate keywords) on which the keyword group configuration is related to, e.g. StaffOrganizationAssociation. It can also be set to null (default value), which means the keyword group configuration is related to the main type (the target system name) and not a relation of the main type. nullable: true description: A specification of the allowed behavior of a specified keyword group DisciplinesAssociation: required: - disciplineAssignments type: object properties: content: $ref: '#/components/schemas/ContentRef' disciplineScheme: type: string description: The discipline scheme these disciplines are assigned from readOnly: true disciplineAssignments: type: array description: A collection of assigned disciplines items: $ref: '#/components/schemas/DisciplinesDisciplineAssignment' description: An association between a content and a number of discipline assignments LocalizedString: type: object additionalProperties: type: string description: 'A set of string values, one for each submission locale. Note: invalid locale values will be ignored.' nullable: true example: '{"en_GB":"Some text"}' description: 'A set of string values, one for each submission locale. Note: invalid locale values will be ignored.' nullable: true example: en_GB: Some text RankedConcept: required: - concept - rank type: object properties: concept: $ref: '#/components/schemas/ConceptRef' rank: type: number description: The rank of the ranked concept. If this is not set on creation, the ranked concept will have a default rank value of 0 format: double weightedRank: type: number description: WeightedRank format: double nullable: true frequency: type: integer description: Frequency format: int32 nullable: true description: A ranked concept KeywordGroup: required: - logicalName - typeDiscriminator type: object properties: pureId: type: integer description: Pure database ID of the object, prefer using the UUID if it is present on the entity format: int64 readOnly: true logicalName: type: string description: Unique name of the configuration that specifies this keyword group name: $ref: '#/components/schemas/LocalizedString' typeDiscriminator: type: string discriminator: propertyName: typeDiscriminator mapping: ClassificationsKeywordGroup: '#/components/schemas/ClassificationsKeywordGroup' FreeKeywordsKeywordGroup: '#/components/schemas/FreeKeywordsKeywordGroup' FullKeywordGroup: '#/components/schemas/FullKeywordGroup' LocalesList: type: object properties: locales: pattern: /^[a-z]{2}_[A-Z]{2}$/ type: array description: Allowed locale values for use in localized string entities. The locale format consists of lower-case ISO 639 alpha-2 language code and upper-cased ISO 3166 alpha-2 country code. items: pattern: /^[a-z]{2}_[A-Z]{2}$/ type: string description: Allowed locale values for use in localized string entities. The locale format consists of lower-case ISO 639 alpha-2 language code and upper-cased ISO 3166 alpha-2 country code. description: List of available locales NoteListResult: type: object properties: count: type: integer description: The full count, ignoring paging format: int32 pageInformation: $ref: '#/components/schemas/PageInformation' items: type: array description: Notes items: $ref: '#/components/schemas/Note' description: List of notes DisciplinesAssociationListResult: type: object properties: count: type: integer description: The full count, ignoring paging format: int32 pageInformation: $ref: '#/components/schemas/PageInformation' items: type: array description: Discipline associations items: $ref: '#/components/schemas/DisciplinesAssociation' description: List of discipline associations. Can contain a subset of all items along with the full count FingerprintListResult: type: object properties: count: type: integer description: The full count, ignoring paging format: int32 pageInformation: $ref: '#/components/schemas/PageInformation' items: type: array description: Fingerprints items: $ref: '#/components/schemas/Fingerprint' description: List of fingerprints. Can contain a subset of all items along with the full count OrganizationsQuery: type: object properties: uuids: type: array items: type: string format: uuid size: type: integer format: int32 offset: type: integer format: int32 orderings: type: array items: type: string searchString: type: string description: String used to perform search orderBy: type: string writeOnly: true description: Create a query for organizations OrderingsList: type: object properties: orderings: type: array description: IDs of ways content can be ordered items: type: string description: IDs of ways content can be ordered description: List of available orderings ClassifiedLocalizedValue: required: - type type: object properties: pureId: type: integer description: Pure database ID of the object, prefer using the UUID if it is present on the entity format: int64 readOnly: true value: $ref: '#/components/schemas/LocalizedString' type: $ref: '#/components/schemas/ClassificationRef' description: A classified localized value securitySchemes: api-key: type: apiKey description: Security mechanism for the API name: api-key in: header