Flowable Groups API

The Groups API from Flowable — 9 operation(s) for groups.

Operations 15

GET /identity/groups List groups #
POST /identity/groups Create a group #
GET /identity/groups/{groupId} Get a single group #
PUT /identity/groups/{groupId} Update a group #
DELETE /identity/groups/{groupId} Delete a group #
POST /identity/groups/{groupId}/members Add a member to a group #
DELETE /identity/groups/{groupId}/members/{userId} Delete a member from a group #
GET /groups List groups #
POST /groups Create a group #
GET /groups/{groupId} Get a single group #
PUT /groups/{groupId} Update a group #
DELETE /groups/{groupId} Delete a group #
POST /groups/{groupId}/members Add a member to a group #
DELETE /groups/{groupId}/members/{userId} Delete a member from a group #
POST /query/groups Query groups #

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/flowable-groups-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

flowable-groups-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: '# flowable / flowəb(ə)l /


    - a compact and highly efficient workflow and Business Process Management (BPM) platform for developers, system admins and business users.

    - a lightning fast, tried and tested BPMN 2 process engine written in Java. It is Apache 2.0 licensed open source, with a committed community.

    - can run embedded in a Java application, or as a service on a server, a cluster, and in the cloud. It integrates perfectly with Spring. With a rich Java and REST API, it is the ideal engine for orchestrating human or system activities.'
  version: v1
  title: Flowable REST Access Tokens Groups API
  contact:
    name: Flowable
    url: http://www.flowable.org/
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: /flowable-rest/service
tags:
- name: Groups
paths:
  /identity/groups:
    get:
      tags:
      - Groups
      summary: List groups
      description: ''
      operationId: listGroups
      parameters:
      - name: id
        in: query
        description: Only return group with the given id
        required: false
        schema:
          type: string
      - name: name
        in: query
        description: Only return groups with the given name
        required: false
        schema:
          type: string
      - name: type
        in: query
        description: Only return groups with the given type
        required: false
        schema:
          type: string
      - name: nameLike
        in: query
        description: Only return groups with a name like the given value. Use % as wildcard-character.
        required: false
        schema:
          type: string
      - name: member
        in: query
        description: Only return groups which have a member with the given username.
        required: false
        schema:
          type: string
      - name: potentialStarter
        in: query
        description: Only return groups which members are potential starters for a process-definition with the given id.
        required: false
        schema:
          type: string
      - name: sort
        in: query
        description: Property to sort on, to be used together with the order.
        required: false
        schema:
          type: string
          enum:
          - id
          - name
          - type
      - name: order
        in: query
        description: The sort order, either 'asc' or 'desc'. Defaults to 'asc'.
        required: false
        schema:
          type: string
      - name: start
        in: query
        description: Index of the first row to fetch. Defaults to 0.
        required: false
        schema:
          type: integer
      - name: size
        in: query
        description: Number of rows to fetch, starting from start. Defaults to 10.
        required: false
        schema:
          type: integer
      responses:
        '200':
          description: Indicates the requested groups were returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataResponseGroupResponse'
      security:
      - basicAuth: []
    post:
      tags:
      - Groups
      summary: Create a group
      description: ''
      operationId: createGroup
      requestBody:
        $ref: '#/components/requestBodies/GroupRequest'
      responses:
        '201':
          description: Indicates the group was created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupResponse'
        '400':
          description: Indicates the id of the group was missing.
      security:
      - basicAuth: []
  /identity/groups/{groupId}:
    get:
      tags:
      - Groups
      summary: Get a single group
      description: ''
      operationId: getGroup
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Indicates the group exists and is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupResponse'
        '404':
          description: Indicates the requested group does not exist.
      security:
      - basicAuth: []
    put:
      tags:
      - Groups
      summary: Update a group
      description: All request values are optional. For example, you can only include the name attribute in the request body JSON-object, only updating the name of the group, leaving all other fields unaffected. When an attribute is explicitly included and is set to null, the group-value will be updated to null.
      operationId: updateGroup
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/GroupRequest'
      responses:
        '200':
          description: Indicates the group was updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupResponse'
        '404':
          description: Indicates the requested group was not found.
        '409':
          description: Indicates the requested group was updated simultaneously.
      security:
      - basicAuth: []
    delete:
      tags:
      - Groups
      summary: Delete a group
      description: ''
      operationId: deleteGroup
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Indicates the group was found and  has been deleted. Response-body is intentionally empty.
        '404':
          description: Indicates the requested group does not exist.
      security:
      - basicAuth: []
  /identity/groups/{groupId}/members:
    post:
      tags:
      - Groups
      summary: Add a member to a group
      description: ''
      operationId: createMembership
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MembershipRequest'
      responses:
        '201':
          description: Indicates the group was found and the member has been added.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MembershipResponse'
        '400':
          description: Indicates the userId was not included in the request body.
        '404':
          description: Indicates the requested group was not found.
        '409':
          description: Indicates the requested user is already a member of the group.
      security:
      - basicAuth: []
  /identity/groups/{groupId}/members/{userId}:
    delete:
      tags:
      - Groups
      summary: Delete a member from a group
      description: ''
      operationId: deleteMembership
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      - name: userId
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Indicates the group was found and the member has been deleted. The response body is left empty intentionally.
        '404':
          description: Indicates the requested group was not found or that the user is not a member of the group. The status description contains additional information about the error.
      security:
      - basicAuth: []
  /groups:
    get:
      tags:
      - Groups
      summary: List groups
      description: ''
      operationId: listGroups
      parameters:
      - name: id
        in: query
        description: Only return group with the given id
        required: false
        schema:
          type: string
      - name: name
        in: query
        description: Only return groups with the given name
        required: false
        schema:
          type: string
      - name: type
        in: query
        description: Only return groups with the given type
        required: false
        schema:
          type: string
      - name: nameLike
        in: query
        description: Only return groups with a name like the given value.
        required: false
        schema:
          type: string
      - name: nameLikeIgnoreCase
        in: query
        description: Only return groups with a name like the given value ignoring case.
        required: false
        schema:
          type: string
      - name: member
        in: query
        description: Only return groups which have a member with the given username.
        required: false
        schema:
          type: string
      - name: key
        in: query
        description: Only return groups with the given key.
        required: false
        schema:
          type: string
      - name: tenantId
        in: query
        description: Only return groups with the given tenant ID.
        required: false
        schema:
          type: string
      - name: includeIdentityInfo
        in: query
        description: Include the group identity info in the response.
        required: false
        schema:
          type: boolean
      - name: sort
        in: query
        description: Property to sort on, to be used together with the order.
        required: false
        schema:
          type: string
          enum:
          - id
          - name
          - type
      responses:
        '200':
          description: Indicates the requested groups were returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataResponseGroupResponse'
      security:
      - basicAuth: []
    post:
      tags:
      - Groups
      summary: Create a group
      description: ''
      operationId: createGroup
      requestBody:
        $ref: '#/components/requestBodies/GroupRequest'
      responses:
        '201':
          description: Indicates the group was created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupResponse_2'
        '400':
          description: Indicates the id of the group was missing.
      security:
      - basicAuth: []
  /groups/{groupId}:
    get:
      tags:
      - Groups
      summary: Get a single group
      description: ''
      operationId: getGroup
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      - name: includeUserInfo
        in: query
        required: false
        schema:
          type: boolean
      - name: includePrivilegeInfo
        in: query
        required: false
        schema:
          type: boolean
      - name: includeIdentityInfo
        in: query
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: Indicates the group exists and is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupResponse_2'
        '404':
          description: Indicates the requested group does not exist.
      security:
      - basicAuth: []
    put:
      tags:
      - Groups
      summary: Update a group
      description: All request values are optional. For example, you can only include the name attribute in the request body JSON-object, only updating the name of the group, leaving all other fields unaffected. When an attribute is explicitly included and is set to null, the group-value will be updated to null.
      operationId: updateGroup
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/GroupRequest'
      responses:
        '200':
          description: Indicates the group was updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupResponse_2'
        '404':
          description: Indicates the requested group was not found.
        '409':
          description: Indicates the requested group was updated simultaneously.
      security:
      - basicAuth: []
    delete:
      tags:
      - Groups
      summary: Delete a group
      description: ''
      operationId: deleteGroup
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Indicates the group was found and  has been deleted. Response-body is intentionally empty.
        '404':
          description: Indicates the requested group does not exist.
      security:
      - basicAuth: []
  /groups/{groupId}/members:
    post:
      tags:
      - Groups
      summary: Add a member to a group
      description: ''
      operationId: createMembership
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MembershipRequest'
      responses:
        '201':
          description: Indicates the group was found and the member has been added.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MembershipResponse_2'
        '400':
          description: Indicates the userId was not included in the request body.
        '404':
          description: Indicates the requested group was not found.
        '409':
          description: Indicates the requested user is already a member of the group.
      security:
      - basicAuth: []
  /groups/{groupId}/members/{userId}:
    delete:
      tags:
      - Groups
      summary: Delete a member from a group
      description: ''
      operationId: deleteMembership
      parameters:
      - name: groupId
        in: path
        required: true
        schema:
          type: string
      - name: userId
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Indicates the group was found and the member has been deleted. The response body is left empty intentionally.
        '404':
          description: Indicates the requested group was not found or that the user is not a member of the group. The status description contains additional information about the error.
      security:
      - basicAuth: []
  /query/groups:
    post:
      tags:
      - Groups
      summary: Query groups
      description: ''
      operationId: queryGroups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupQueryRequest'
        description: Group request
      responses:
        '200':
          description: Indicates the requested groups were returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataResponseGroupResponse'
      security:
      - basicAuth: []
components:
  schemas:
    MembershipResponse:
      type: object
      properties:
        userId:
          type: string
          example: kermit
        url:
          type: string
          example: http://localhost:8182/identity/groups/sales/members/kermit
        groupId:
          type: string
          example: sales
    DataResponseGroupResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/GroupResponse'
        total:
          type: integer
          format: int64
        start:
          type: integer
          format: int32
        sort:
          type: string
        order:
          type: string
        size:
          type: integer
          format: int32
    MembershipResponse_2:
      type: object
      properties:
        userId:
          type: string
          example: kermit
        url:
          type: string
          example: http://localhost:8182/groups/sales/members/userId
        groupId:
          type: string
          example: sales
    EngineRestVariable:
      type: object
      properties:
        name:
          type: string
          example: myVariable
          description: Name of the variable
        type:
          type: string
          example: string
          description: Type of the variable.
        value:
          type: object
          example: test
          description: Value of the variable.
        valueUrl:
          type: string
          example: http://....
    GroupQueryRequest:
      type: object
      properties:
        start:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        sort:
          type: string
        order:
          type: string
        id:
          type: string
          description: Only return groups with the given id.
        ids:
          type: array
          description: Only return groups with the given ids.
          items:
            type: string
        key:
          type: string
          description: Only return groups with the given key.
        keys:
          type: array
          description: Only return groups with the given keys.
          items:
            type: string
        name:
          type: string
          description: Only return groups with the given name.
        nameLike:
          type: string
          description: Only return groups with a name like the given value.
        nameLikeIgnoreCase:
          type: string
          description: Only return groups with a name like the given value ignoring case.
        type:
          type: string
          description: Only return groups with a name like the given type.
        member:
          type: string
          description: Only return groups which have a member with the given username.
        members:
          type: array
          description: Only return groups which have members with the given usernames.
          items:
            type: string
        includeIdentityInfo:
          type: boolean
          description: Include the group identity info in the response.
        tenantId:
          type: string
          description: Only return groups with the given tenant ID.
      description: Request that is used for querying groups.
    GroupRequest:
      type: object
      properties:
        id:
          type: string
          example: testgroup
        url:
          type: string
          example: http://localhost:8182/identity/groups/testgroup
        name:
          type: string
          example: Test group
        type:
          type: string
          example: Test type
        nameChanged:
          type: boolean
        typeChanged:
          type: boolean
    GroupResponse:
      type: object
      properties:
        id:
          type: string
          example: testgroup
        url:
          type: string
          example: http://localhost:8182/identity/groups/testgroup
        name:
          type: string
          example: Test group
        type:
          type: string
          example: Test type
    BasicPrivilegeResponse:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
    GroupResponse_2:
      type: object
      properties:
        id:
          type: string
          example: testgroup
        url:
          type: string
          example: http://localhost:8182/groups/groupId
        name:
          type: string
          example: Test group
        type:
          type: string
          example: Test type
        key:
          type: string
          example: testgroup
        tenantId:
          type: string
          example: testtenant
        users:
          type: array
          description: Collection of all users that have a membership with the group
          items:
            $ref: '#/components/schemas/UserResponse'
        privileges:
          type: array
          description: Collection of all privileges for this group
          items:
            $ref: '#/components/schemas/BasicPrivilegeResponse'
        identityInfo:
          type: array
          description: Collection of all identity infos for the group
          items:
            $ref: '#/components/schemas/EngineRestVariable'
    MembershipRequest:
      type: object
      properties:
        userId:
          type: string
          example: kermit
    UserResponse:
      type: object
      required:
      - id
      properties:
        id:
          type: string
          example: john.doe
          description: The id of the user
        firstName:
          type: string
          example: John
          description: The first name if the user
        lastName:
          type: string
          example: Doe
          description: The last name of the user
        displayName:
          type: string
          example: John Doe
          description: The display name of the user
        email:
          type: string
          example: no-reply@flowable.org
          description: The email of the user
        tenantId:
          type: string
          description: The tenant id of the user
      description: The response for the OSS User
  requestBodies:
    GroupRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GroupRequest'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic