openapi: 3.0.1 info: title: Coscine Web Admin ProjectPublicationRequest 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: ProjectPublicationRequest description: Endpoints for the projects. paths: /api/v2/projects/{projectId}/publications/requests: post: tags: - ProjectPublicationRequest summary: Creates a new publication request. operationId: CreatePublicationRequest parameters: - name: projectId in: path description: The Id or slug of the project. required: true schema: type: string requestBody: description: The publication request data for creation. content: application/json: schema: $ref: '#/components/schemas/PublicationRequestForCreationDto' text/json: schema: $ref: '#/components/schemas/PublicationRequestForCreationDto' application/*+json: schema: $ref: '#/components/schemas/PublicationRequestForCreationDto' responses: '201': description: Publication request created. content: application/json: schema: $ref: '#/components/schemas/ProjectPublicationRequestDtoResponse' text/json: schema: $ref: '#/components/schemas/ProjectPublicationRequestDtoResponse' '403': description: User is missing authorization requirements. '400': description: Provided input has a bad format. '404': description: Provided input refers to entries that do not exist or have been deleted. options: tags: - ProjectPublicationRequest summary: Responds with the HTTP methods allowed for the endpoint. parameters: - name: projectId in: path required: true schema: type: string responses: '200': description: OK /api/v2/projects/{projectId}/publications/requests/{publicationRequestId}: get: tags: - ProjectPublicationRequest summary: Retrieves a publication request. operationId: GetPublicationRequest parameters: - name: projectId in: path description: The ID of the project. required: true schema: type: string - name: publicationRequestId in: path description: The ID of the publication request. required: true schema: type: string format: uuid responses: '200': description: Returns the publication request. content: application/json: schema: $ref: '#/components/schemas/ProjectPublicationRequestDtoResponse' text/json: schema: $ref: '#/components/schemas/ProjectPublicationRequestDtoResponse' '403': description: User is missing authorization requirements. '400': description: Provided input has a bad format. '404': description: Publication request does not exist or has been deleted. components: schemas: PublicationRequestForCreationDto: required: - publicationServiceRorId - resourceIds type: object properties: publicationServiceRorId: minLength: 1 type: string description: The data publication service's ror id. resourceIds: type: array items: type: string format: uuid description: The resource guids. message: type: string description: A message of the requester. nullable: true additionalProperties: false description: Data transfer object (DTO) representing the creation of a publication request. UserMinimalDto: required: - id type: object properties: id: type: string description: The unique identifier for the user. format: uuid additionalProperties: false description: Represents a minimal Data Transfer Object (DTO) for user information. ProjectMinimalDto: required: - id type: object properties: id: type: string description: Unique identifier for the project. format: uuid additionalProperties: false description: Represents a minimal data transfer object (DTO) for a project. ResourceMinimalDto: required: - id type: object properties: id: type: string description: Unique identifier for the resource. format: uuid additionalProperties: false description: Represents a minimal Data Transfer Object (DTO) for a resource, containing essential identifiers. ProjectPublicationRequestDtoResponse: type: object properties: data: $ref: '#/components/schemas/ProjectPublicationRequestDto' isSuccess: type: boolean readOnly: true statusCode: type: integer format: int32 nullable: true traceId: type: string nullable: true additionalProperties: false ProjectPublicationRequestDto: type: object properties: id: type: string description: Unique identifier for the project publication request. format: uuid project: $ref: '#/components/schemas/ProjectMinimalDto' publicationServiceRorId: type: string description: Identifier for the publication service used for this request. format: uri creator: $ref: '#/components/schemas/UserMinimalDto' dateCreated: type: string description: The date and time when the request was created. format: date-time message: type: string description: Optional message associated with the publication request. nullable: true resources: type: array items: $ref: '#/components/schemas/ResourceMinimalDto' description: Collection of the resources involved in the publication request. additionalProperties: false description: Represents a data transfer object (DTO) for a project publication request. securitySchemes: Bearer: type: apiKey description: JWT Authorization header using the Bearer scheme. name: Authorization in: header