openapi: 3.0.1 info: title: Coscine Web Admin Organization API description: Coscine (short for COllaborative SCientific INtegration Environment) is the research data management platform for your research project. termsOfService: https://about.coscine.de/en/termsofuse/ contact: name: Coscine Team email: servicedesk@rwth-aachen.de version: '2.0' servers: - url: https://coscine.rwth-aachen.de/coscine security: - Bearer: [] tags: - name: Organization description: Endpoints for the organizations. paths: /api/v2/organizations/{organizationRorUri}: get: tags: - Organization summary: Retrieves an organization. operationId: GetOrganization parameters: - name: organizationRorUri in: path description: The parameters for organization filtering and pagination. required: true schema: type: string responses: '200': description: Returns the organizations. content: application/json: schema: $ref: '#/components/schemas/OrganizationDtoResponse' text/json: schema: $ref: '#/components/schemas/OrganizationDtoResponse' /api/v2/organizations: get: tags: - Organization summary: Retrieves all organizations. operationId: GetOrganizations parameters: - name: SearchTerm in: query description: Gets or sets the search term used to filter organizations. schema: type: string - name: Language in: query description: Language of name or text (dataPublicationService) schema: $ref: '#/components/schemas/AcceptedLanguage' - name: FilterByPublicationService in: query description: Gets or sets the option to find only organizations having the publication service set. schema: type: boolean - name: PageNumber in: query description: Gets or sets the desired page number. Should be greater than or equal to 1. Default is 1. schema: type: integer format: int32 - name: PageSize in: query description: Gets or sets the desired page size. Should be between 1 and the maximum allowed page size (50). Default is 10. schema: type: integer format: int32 - name: OrderBy in: query description: "Gets or sets the field name used for ordering the results.\r\nThe order is constructed by an order string.\r\nUse the property followed by \"asc\" or \"desc\" and separate properties by commas. Default is asc.\r\nCan be used like this: \"propertyA asc, propertyB desc\"." schema: type: string responses: '200': description: Returns the organizations. content: application/json: schema: $ref: '#/components/schemas/OrganizationDtoPagedResponse' text/json: schema: $ref: '#/components/schemas/OrganizationDtoPagedResponse' options: tags: - Organization summary: Responds with the HTTP methods allowed for the endpoint. responses: '200': description: OK components: schemas: PublicationAdvisoryServiceDto: required: - displayName - email type: object properties: displayName: minLength: 1 type: string description: Gets the data publication service's display name. email: minLength: 1 type: string description: Gets the data publication service's email address. description: type: string description: Gets the data publication service's description. nullable: true organizationRor: type: string description: Gets the ROR of the organization that provides this publication service. nullable: true additionalProperties: false description: Data transfer object (DTO) representing the publication advisory service of an organization. OrganizationDtoPagedResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/OrganizationDto' nullable: true isSuccess: type: boolean readOnly: true statusCode: type: integer format: int32 nullable: true traceId: type: string nullable: true pagination: $ref: '#/components/schemas/Pagination' additionalProperties: false AcceptedLanguage: enum: - de - en type: string description: Accepted languages by the API. OrganizationDto: required: - displayName - uri type: object properties: uri: type: string description: The ROR (Research Organization Registry) ID of the organization. format: uri displayName: type: string description: The display name of the organization. email: type: string description: The email address of the organization. nullable: true publicationAdvisoryService: $ref: '#/components/schemas/PublicationAdvisoryServiceDto' additionalProperties: false description: Represents a data transfer object (DTO) for an organization, including its ROR (Research Organization Registry) ID, display name, and email address. Pagination: type: object properties: currentPage: type: integer description: Gets or sets the current page number. format: int32 totalPages: type: integer description: Gets or sets the total number of pages. format: int32 pageSize: type: integer description: Gets or sets the number of items per page. format: int32 totalCount: type: integer description: Gets or sets the total count of items across all pages. format: int64 hasPrevious: type: boolean description: Gets a value indicating whether there is a previous page. readOnly: true hasNext: type: boolean description: Gets a value indicating whether there is a next page. readOnly: true additionalProperties: false description: Represents pagination information for a collection of items. OrganizationDtoResponse: type: object properties: data: $ref: '#/components/schemas/OrganizationDto' isSuccess: type: boolean readOnly: true statusCode: type: integer format: int32 nullable: true traceId: type: string nullable: true additionalProperties: false securitySchemes: Bearer: type: apiKey description: JWT Authorization header using the Bearer scheme. name: Authorization in: header