openapi: 3.0.1 info: title: Pure activity authorCollaboration 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.au.dk/ws/api security: - api-key: [] tags: - name: authorCollaboration paths: /author-collaborations: get: tags: - authorCollaboration summary: Lists all author collaborations description: Lists all author collaborations in the Pure instance. If you need to filter the author collaborations returned, see the POST version which supports additional filtering. operationId: authorCollaboration_list parameters: - name: size in: query description: Number of returned author collaborations 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 /author-collaborations/orderings schema: type: string responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/AuthorCollaborationListResult' put: tags: - authorCollaboration summary: Create author collaboration description: Create author collaboration operationId: authorCollaboration_create requestBody: description: The content to create content: application/json: schema: $ref: '#/components/schemas/AuthorCollaboration' required: true responses: '201': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/AuthorCollaboration' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' /author-collaborations/allowed-locales: get: tags: - authorCollaboration 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: authorCollaborations_getAllowedLocales responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/LocalesList' /author-collaborations/allowed-workflow-steps: get: tags: - authorCollaboration summary: A list of allowed workflow steps description: Get a list of allowed workflow steps that can be used for the 'workflow' attribute of author collaboration operationId: authorCollaborations_getAllowedWorkflowSteps responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/WorkflowListResult' /author-collaborations/orderings: get: tags: - authorCollaboration summary: Lists available orderings description: Lists all orderings available to the author collaboration endpoint. These values can be used by the order parameter when listing author collaborations. operationId: authorCollaborations_getOrderings responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/OrderingsList' /author-collaborations/search: post: tags: - authorCollaboration summary: Query operation for author-collaborations description: Lists author-collaborations 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: authorCollaborations_query requestBody: description: The query to perform content: application/json: schema: $ref: '#/components/schemas/AuthorCollaborationQuery' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/AuthorCollaborationListResult' '400': description: Bad request content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' /author-collaborations/{uuid}: get: tags: - authorCollaboration summary: Get author collaboration description: Get author collaboration with specific UUID. operationId: authorCollaborations_get parameters: - name: uuid in: path description: UUID of the desired author collaboration required: true schema: pattern: .+ type: string format: uuid responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/AuthorCollaboration' '301': description: The requested content have changed UUID '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' put: tags: - authorCollaboration summary: Update author collaboration description: Update author collaboration with specific UUID. operationId: authorCollaboration_update parameters: - name: uuid in: path description: UUID of the author collaboration to update required: true schema: pattern: .+ type: string format: uuid requestBody: description: The content to update content: application/json: schema: $ref: '#/components/schemas/AuthorCollaboration' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/AuthorCollaboration' '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: - authorCollaboration summary: Delete author collaboration description: Delete author collaboration with specific UUID. operationId: authorCollaboration_delete parameters: - name: uuid in: path description: UUID of the author collaboration 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' /author-collaborations/{uuid}/actions/lock: post: tags: - authorCollaboration 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: authorCollaborations_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' /author-collaborations/{uuid}/actions/unlock: post: tags: - authorCollaboration 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: authorCollaborations_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' /author-collaborations/{uuid}/notes: get: tags: - authorCollaboration summary: Lists notes description: Lists notes associated with a author collaboration ordered by date (nulls last) operationId: authorCollaborations_listNotes parameters: - name: uuid in: path description: UUID of the author collaboration 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: Author collaboration not found content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' put: tags: - authorCollaboration summary: Create note description: Create note and associate it with a author collaboration operationId: authorCollaborations_createNote parameters: - name: uuid in: path description: UUID of the author collaboration 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: 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 AuthorCollaborationQuery: 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 author-collaborations 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 AuthorCollaboration: required: - name 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' nameVariants: type: array description: Name variants items: type: string externalOrganizations: type: array description: A collection of external organization affiliations. nullable: true items: $ref: '#/components/schemas/ExternalOrganizationRef' identifiers: type: array description: Identifiers related to the author collaboration. nullable: true items: $ref: '#/components/schemas/Identifier' workflow: $ref: '#/components/schemas/Workflow' systemName: type: string description: The content system name readOnly: true description: Author collaboration 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 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' 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' 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 Workflow: required: - step type: object properties: step: type: string description: Current workflow step description: $ref: '#/components/schemas/SystemLocalizedString' description: Information about workflow 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 WorkflowListResult: type: object properties: workflows: type: array description: Allowed workflow steps. items: $ref: '#/components/schemas/Workflow' description: List of workflow steps. 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 AuthorCollaborationListResult: type: object properties: count: type: integer description: The full count, ignoring paging format: int32 pageInformation: $ref: '#/components/schemas/PageInformation' items: type: array description: Users items: $ref: '#/components/schemas/AuthorCollaboration' description: List of author collaborations. Can contain a subset of all items along with the full count 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 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' 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 ExternalOrganizationRef: required: - uuid type: object description: A reference to an organization external to the institution nullable: true allOf: - $ref: '#/components/schemas/ContentRef' securitySchemes: api-key: type: apiKey description: Security mechanism for the API name: api-key in: header