openapi: 3.0.1 info: title: Coscine Web Admin SystemStatus 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: SystemStatus description: Endpoints for system status messages. paths: /api/v2/system/status/internal: get: tags: - SystemStatus summary: Retrieves the internal messages. operationId: GetInternalMessages parameters: - name: StartDateAfter in: query description: Will only return messages that have their start date after this date (UTC). schema: type: string format: date-time - name: StartDateBefore in: query description: Will only return messages that have their start date before this date (UTC). schema: type: string format: date-time - name: EndDateAfter in: query description: Will only return messages that have their end date after this date (UTC). schema: type: string format: date-time - name: EndDateBefore in: query description: Will only return messages that have their end date before this date (UTC). schema: type: string format: date-time - name: Type in: query description: Filter messages by their type (e.g. information, warning, error). schema: $ref: '#/components/schemas/MessageType' - name: SearchTerm in: query description: Filter messages by text contained in the messages or title. schema: type: string - 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 - name: Accept-Language in: header description: The desired language. schema: $ref: '#/components/schemas/AcceptedLanguage' responses: '200': description: Returns the internal message. content: application/json: schema: $ref: '#/components/schemas/MessageDtoPagedResponse' text/json: schema: $ref: '#/components/schemas/MessageDtoPagedResponse' /api/v2/system/status/noc: get: tags: - SystemStatus summary: Retrieves the NOC messages. operationId: GetNocMessages parameters: - 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 - name: Accept-Language in: header description: The desired language. schema: $ref: '#/components/schemas/AcceptedLanguage' responses: '200': description: Returns the NOC messages. content: application/json: schema: $ref: '#/components/schemas/MessageDtoPagedResponse' text/json: schema: $ref: '#/components/schemas/MessageDtoPagedResponse' /api/v2/system/status/noc/active: get: tags: - SystemStatus summary: Retrieves the NOC messages. operationId: GetActiveNocMessages parameters: - name: Accept-Language in: header description: The desired language. schema: $ref: '#/components/schemas/AcceptedLanguage' responses: '200': description: Returns the active NOC messages. content: application/json: schema: $ref: '#/components/schemas/MessageDtoIEnumerableResponse' text/json: schema: $ref: '#/components/schemas/MessageDtoIEnumerableResponse' /api/v2/system/status: options: tags: - SystemStatus summary: Responds with the HTTP methods allowed for the endpoint. responses: '200': description: OK components: schemas: MessageDtoPagedResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/MessageDto' 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. MessageDtoIEnumerableResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/MessageDto' nullable: true isSuccess: type: boolean readOnly: true statusCode: type: integer format: int32 nullable: true traceId: type: string nullable: true additionalProperties: false 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. MessageDto: required: - id type: object properties: id: type: string description: ID of the message. body: type: object additionalProperties: type: string description: "Message body in multiple languages as key-value pairs. \r\nThe key is the ISO 639-1 Alpha-2 two-letter language code, and the value is the message in that language." nullable: true type: $ref: '#/components/schemas/MessageType' title: type: string description: Title of the message. nullable: true href: type: string description: URL related to the message. format: uri nullable: true startDate: type: string description: Start date of the message (UTC). format: date-time nullable: true endDate: type: string description: End date of the message (UTC). format: date-time nullable: true additionalProperties: false MessageType: enum: - Disturbance - PartialDisturbance - Maintenance - PartialMaintenance - LimitedOperation - Interruption - Change - Hint - Warning - Information type: string description: Defines the various types of messages. securitySchemes: Bearer: type: apiKey description: JWT Authorization header using the Bearer scheme. name: Authorization in: header