RWTH Aachen University Graph API

Controller for managing storage operations for project resources.

Operations 4

GET /api/v2/projects/{projectId}/resources/{resourceId}/graphs Retrieves a paginated subset of nodes that make up the metadata tree for a specified resource within a given project. #
OPTIONS /api/v2/projects/{projectId}/resources/{resourceId}/graphs Responds with the HTTP methods allowed for the endpoint.
HEAD /api/v2/projects/{projectId}/resources/{resourceId}/graphs/{encodedPath} Performs a metadata check for a graph node or group at the specified path without returning a response body. #
GET /api/v2/projects/{projectId}/resources/{resourceId}/graphs/{encodedPath} Retrieves metadata for a graph node or group at the specified path. #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/rwth-aachen-university-graph-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

rwth-aachen-university-graph-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Coscine Web Admin Graph API
  description: Coscine (short for <b>CO</b>llaborative <b>SC</b>ientific <b>IN</b>tegration <b>E</b>nvironment) 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: Graph
  description: Controller for managing storage operations for project resources.
paths:
  /api/v2/projects/{projectId}/resources/{resourceId}/graphs:
    get:
      tags:
      - Graph
      summary: 'Retrieves a paginated subset of nodes that make up the metadata tree

        for a specified resource within a given project.'
      operationId: GetStorageGraphTree
      parameters:
      - name: projectId
        in: path
        description: 'The unique identifier of the project containing the resource.

          Supplied as a route parameter.'
        required: true
        schema:
          type: string
      - name: resourceId
        in: path
        description: 'The unique identifier of the resource whose metadata tree should be retrieved.

          Supplied as a route parameter.'
        required: true
        schema:
          type: string
          format: uuid
      - name: OrderBy
        in: query
        description: 'Gets or sets the field name used for ordering the results.



          The properties `HasChildren`, `HasMetadata`, `HasData` and `Subject` are supported for ordering.

          Use "asc" or "desc" as the direction.

          The Default is `HasChildren desc, subject asc`.

          '
        schema:
          type: string
      - name: Prefix
        in: query
        description: 'Gets or sets the prefix filter.



          The prefix to filter the storage objects by.

          Slashes are taken into account when filtering by prefix.

          The forwads slash (/) character is treated as the path separator.

          The lookup is only done for one level.

          To look into the next level, include the trailing slash to indicate the next level of the tree.

          '
        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
      responses:
        '200':
          description: Successfully retrieved a paged list of metadata tree nodes for the specified resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StorageNodeDtoPagedResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/StorageNodeDtoPagedResponse'
        '403':
          description: The user is missing the necessary authorization to access the resource.
        '404':
          description: The resource was not found.
        '400':
          description: Invalid request parameters were supplied.
    options:
      tags:
      - Graph
      summary: Responds with the HTTP methods allowed for the endpoint.
      parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
      - name: resourceId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /api/v2/projects/{projectId}/resources/{resourceId}/graphs/{encodedPath}:
    head:
      tags:
      - Graph
      summary: Performs a metadata check for a graph node or group at the specified path without returning a response body.
      operationId: HeadStorageGraph
      parameters:
      - name: projectId
        in: path
        description: The unique identifier of the project. Supplied as a route parameter.
        required: true
        schema:
          type: string
      - name: resourceId
        in: path
        description: The unique identifier of the resource. Supplied as a route parameter.
        required: true
        schema:
          type: string
          format: uuid
      - name: encodedPath
        in: path
        description: The url encoded path of the file.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The resource exists. Metadata is available in the headers.
        '403':
          description: User is missing authorization requirements.
        '404':
          description: The resource was not found.
        '400':
          description: Invalid request parameters were supplied.
        '401':
          description: The user is not authorized to access the resource.
    get:
      tags:
      - Graph
      summary: Retrieves metadata for a graph node or group at the specified path.
      operationId: GetStorageGraph
      parameters:
      - name: projectId
        in: path
        description: The unique identifier of the project. Supplied as a route parameter.
        required: true
        schema:
          type: string
      - name: resourceId
        in: path
        description: The unique identifier of the resource. Supplied as a route parameter.
        required: true
        schema:
          type: string
          format: uuid
      - name: encodedPath
        in: path
        description: The url encoded path of the file.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The resource exists. Metadata is available in the body and headers.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StorageNodeDtoResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/StorageNodeDtoResponse'
        '403':
          description: User is missing authorization requirements.
        '404':
          description: The resource was not found.
        '400':
          description: Invalid request parameters were supplied.
        '401':
          description: The user is not authorized to access the resource.
components:
  schemas:
    StorageNodeDtoPagedResponse:
      type: object
      properties:
        data:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/StorageNodeDto'
        isSuccess:
          type: boolean
          readOnly: true
        statusCode:
          type:
          - integer
          - 'null'
          format: int32
        traceId:
          type:
          - string
          - 'null'
        pagination:
          $ref: '#/components/schemas/Pagination'
      additionalProperties: false
    StorageNodeDto:
      type: object
      properties:
        subject:
          type:
          - string
          - 'null'
          format: uri
        path:
          type: string
        prefix:
          type: string
          description: Gets the prefix of the node.
        name:
          type: string
          description: Gets the name of the node.
        hasMetadata:
          type: boolean
        hasData:
          type: boolean
        hasChildren:
          type: boolean
        links:
          $ref: '#/components/schemas/StorageNodeLinks'
      additionalProperties: false
    StorageNodeLinks:
      type: object
      properties:
        metadata:
          type: object
          additionalProperties:
            type: string
        data:
          type: object
          additionalProperties:
            type: string
        children:
          type: object
          additionalProperties:
            type: string
        self:
          type: object
          additionalProperties:
            type: string
        links:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: string
      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.
    StorageNodeDtoResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/StorageNodeDto'
        isSuccess:
          type: boolean
          readOnly: true
        statusCode:
          type:
          - integer
          - 'null'
          format: int32
        traceId:
          type:
          - string
          - 'null'
      additionalProperties: false
  securitySchemes:
    Bearer:
      type: apiKey
      description: JWT Authorization header using the Bearer scheme.
      name: Authorization
      in: header