Reonic Teams API

Groups of users. Teams can be assigned to projects and nested under one another.

Operations 4

GET /teams List teams #
GET /teams/{teamId} Get team #
POST /teams/create Create team #
POST /teams/{teamId}/update Update team #

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/reonic-teams-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

reonic-teams-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Reonic REST Api v3 Teams API
  description: The Reonic REST API v3 provides programmatic access to create and manage resources.
  version: 3.2.0
  contact:
    email: kontakt@reonic.de
    url: https://reonic.com
    name: Reonic GmbH
servers:
- url: '{apiBaseUrl}/rest/v3/'
security:
- X-Authorization: []
tags:
- name: Teams
  description: Groups of users. Teams can be assigned to projects and nested under one another.
paths:
  /teams:
    get:
      summary: List teams
      description: 'Lists teams. Use `parentId` for direct children or `ancestorId` for all descendants.


        **Allowed API keys:** Read-only, Read and Write'
      tags:
      - Teams
      parameters:
      - schema:
          type: string
          format: uuid
          example: 123e4567-e89b-12d3-a456-426614174000
          description: Only return direct children of this team. Mutually exclusive with `ancestorId`.
        required: false
        description: Only return direct children of this team. Mutually exclusive with `ancestorId`.
        name: parentId
        in: query
      - schema:
          type: string
          format: uuid
          example: 123e4567-e89b-12d3-a456-426614174000
          description: Returns all descendants of this team, not just direct children. Mutually exclusive with `parentId`.
        required: false
        description: Returns all descendants of this team, not just direct children. Mutually exclusive with `parentId`.
        name: ancestorId
        in: query
      - schema:
          type:
          - array
          - 'null'
          items:
            type: string
            format: uuid
          maxItems: 50
          description: Filter teams that include any of the specified user IDs as either team members or team leaders.
        required: false
        description: Filter teams that include any of the specified user IDs as either team members or team leaders.
        name: memberIds
        in: query
      - schema:
          type: string
          enum:
          - exclude
          - include
          - only
          default: exclude
          description: 'Controls whether archived teams appear in results. Default: exclude.'
        required: false
        description: 'Controls whether archived teams appear in results. Default: exclude.'
        name: archived
        in: query
      - schema:
          type: string
          example: no-cache
        required: false
        name: Reonic-Cache-Control
        in: header
        description: Set to 'no-cache' to bypass the 1-hour response cache and force a fresh read. The fresh response is then written back to the cache for subsequent callers. Forced refreshes count against the uncached rate-limit bucket (30/min); only cache hits count against the cached bucket (500/min).
      responses:
        '200':
          description: List of all teams
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Team'
                    description: List of items
                required:
                - data
      operationId: getTeams
      x-operation-id-source: derived
  /teams/{teamId}:
    get:
      summary: Get team
      description: 'Get a single team by its ID.


        **Allowed API keys:** Read-only, Read and Write'
      tags:
      - Teams
      parameters:
      - schema:
          type: string
          format: uuid
        required: true
        name: teamId
        in: path
      - schema:
          type: string
          example: no-cache
        required: false
        name: Reonic-Cache-Control
        in: header
        description: Set to 'no-cache' to bypass the 1-hour response cache and force a fresh read. The fresh response is then written back to the cache for subsequent callers. Forced refreshes count against the uncached rate-limit bucket (30/min); only cache hits count against the cached bucket (500/min).
      responses:
        '200':
          description: Team details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Team'
      operationId: getTeamsByTeamId
      x-operation-id-source: derived
  /teams/create:
    post:
      summary: Create team
      description: 'Creates a new team.


        **Allowed API keys:** Read and Write'
      tags:
      - Teams
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TeamCreate'
      responses:
        '201':
          description: The created team
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Team'
      operationId: postTeamsCreate
      x-operation-id-source: derived
  /teams/{teamId}/update:
    post:
      summary: Update team
      description: 'Updates a team by its ID.


        **Allowed API keys:** Read and Write'
      tags:
      - Teams
      parameters:
      - schema:
          type: string
          format: uuid
        required: true
        name: teamId
        in: path
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TeamUpdate'
      responses:
        '200':
          description: The updated team
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Team'
                required:
                - data
      operationId: postTeamsByTeamIdUpdate
      x-operation-id-source: derived
components:
  schemas:
    Team:
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: 123e4567-e89b-12d3-a456-426614174000
        name:
          type: string
        description:
          type:
          - string
          - 'null'
        parentId:
          type:
          - string
          - 'null'
          format: uuid
          description: References the parent team by id.
          example: 123e4567-e89b-12d3-a456-426614174000
        leaderIds:
          type: array
          items:
            type: string
            format: uuid
          description: IDs of users who are leaders of this team. Reference to [**Users**](#tag/users)
          example:
          - 123e4567-e89b-12d3-a456-426614174000
        memberIds:
          type: array
          items:
            type: string
            format: uuid
          description: IDs of users who are members of this team. Reference to [**Users**](#tag/users)
          example:
          - 123e4567-e89b-12d3-a456-426614174000
        createdAt:
          type: string
          format: date-time
          example: '2026-01-01T15:30:00.000Z'
        updatedAt:
          type: string
          format: date-time
          description: Last edited date
          example: '2026-01-01T15:30:00.000Z'
        archivedAt:
          type:
          - string
          - 'null'
          format: date-time
          example: '2026-01-01T15:30:00.000Z'
      required:
      - id
      - name
      - description
      - parentId
      - leaderIds
      - memberIds
      - createdAt
      - updatedAt
      - archivedAt
    TeamUpdate:
      type: object
      properties:
        name:
          type: string
          minLength: 1
          maxLength: 500
        description:
          type:
          - string
          - 'null'
          maxLength: 5000
        parentId:
          type:
          - string
          - 'null'
          format: uuid
          description: ID of the parent team. Pass `null` to move the team to the root level.
        leaderIds:
          type: array
          items:
            type: string
            format: uuid
          maxItems: 100
          description: Replaces the full set of leaders assigned to the team. Pass `[]` to clear. Reference to [**Users**](#tag/users)
        memberIds:
          type: array
          items:
            type: string
            format: uuid
          maxItems: 100
          description: Replaces the full set of members assigned to the team. Pass `[]` to clear. Reference to [**Users**](#tag/users)
        archived:
          type: boolean
          description: '`true` to archive the team, `false` to unarchive.'
      additionalProperties: false
    TeamCreate:
      type: object
      properties:
        name:
          type: string
          minLength: 1
          maxLength: 500
        description:
          type:
          - string
          - 'null'
          maxLength: 5000
        parentId:
          type:
          - string
          - 'null'
          format: uuid
          description: ID of the parent team. If provided, the new team will be created as a child of this team.
        leaderIds:
          type: array
          items:
            type: string
            format: uuid
          maxItems: 100
          description: IDs of users who should be leaders of this team. Reference to [**Users**](#tag/users)
        memberIds:
          type: array
          items:
            type: string
            format: uuid
          maxItems: 100
          description: IDs of users who should be members of this team. Reference to [**Users**](#tag/users)
      required:
      - name
      additionalProperties: false
  securitySchemes:
    X-Authorization:
      type: apiKey
      in: header
      name: X-Authorization
x-tagGroups:
- name: People
  tags:
  - Contacts
  - Users
  - Teams
- name: Projects
  tags:
  - Residential Projects
  - Commercial Projects
- name: Working on a project
  tags:
  - Notes
  - Tasks
  - Files
  - File Folders
  - Activities
  - Time Tracking
  - Checklists
  - Checklist Templates
  - Signature Requests
- name: Calendar
  tags:
  - Calendars
  - Calendar Categories
  - Appointments
- name: Catalog
  tags:
  - Components
  - Planning Templates
  - Planning Packages
  - Offer Templates
- name: Workspace setup
  tags:
  - Kanban Boards
  - Kanban Columns
  - Tags
  - Lead Sources
- name: Wiki
  tags:
  - Wiki
- name: Services
  tags:
  - Photogrammetry
- name: API helpers
  tags:
  - Upload
  - Links
- name: Integrations
  tags:
  - Webhooks
- name: Guides
  tags:
  - Migrating from API v2 to v3
  - Changelog