Shuffle Organizations API

The Organizations API from Shuffle — 3 operation(s) for organizations.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

shuffle-organizations-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Shuffle Administration Organizations API
  description: Shuffle is an open source security automation platform (SOAR) built for and by security professionals. The Shuffle REST API provides programmatic access to all platform capabilities including workflow management, app integration, execution control, user management, organization administration, file storage, datastore operations, and webhook triggers. Everything available in the Shuffle frontend is accessible via the API.
  version: v1
  contact:
    name: Shuffle Support
    url: https://shuffler.io/docs
    email: frikky@shuffler.io
  license:
    name: Apache 2.0
    url: https://github.com/Shuffle/Shuffle/blob/main/LICENSE
servers:
- url: https://shuffler.io/api/v1
  description: Shuffle Cloud
- url: https://{domain}/api/v1
  description: Shuffle On-Premises
  variables:
    domain:
      description: Your Shuffle instance domain
      default: localhost
security:
- BearerAuth: []
tags:
- name: Organizations
paths:
  /orgs:
    get:
      operationId: listOrganizations
      summary: List Organizations
      description: Returns all organizations accessible to the user.
      tags:
      - Organizations
      responses:
        '200':
          description: List of organizations
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Organization'
  /orgs/{id}:
    get:
      operationId: getOrganization
      summary: Get Organization
      description: Retrieves details of a specific organization.
      tags:
      - Organizations
      parameters:
      - name: id
        in: path
        required: true
        description: Organization ID
        schema:
          type: string
      responses:
        '200':
          description: Organization details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization'
    post:
      operationId: updateOrganization
      summary: Update Organization
      description: Updates organization details.
      tags:
      - Organizations
      parameters:
      - name: id
        in: path
        required: true
        description: Organization ID
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Organization name
                description:
                  type: string
                  description: Organization description
                image:
                  type: string
                  description: Organization logo URL
      responses:
        '200':
          description: Organization updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse'
  /orgs/{org_id}/stats:
    get:
      operationId: getOrganizationStats
      summary: Get Organization Stats
      description: Returns usage statistics for an organization.
      tags:
      - Organizations
      parameters:
      - name: org_id
        in: path
        required: true
        description: Organization ID
        schema:
          type: string
      responses:
        '200':
          description: Organization statistics
          content:
            application/json:
              schema:
                type: object
components:
  schemas:
    Organization:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string
        image:
          type: string
        users:
          type: array
          items:
            $ref: '#/components/schemas/User'
        org_id:
          type: string
        created:
          type: integer
    User:
      type: object
      properties:
        id:
          type: string
        username:
          type: string
        role:
          type: string
          enum:
          - admin
          - user
        org_id:
          type: string
        active:
          type: boolean
        created:
          type: integer
    ApiResponse:
      type: object
      properties:
        success:
          type: boolean
          description: Whether the operation was successful
        reason:
          type: string
          description: Optional error message if success is false
        id:
          type: string
          description: Optional ID of created/affected resource
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: 'API key obtained from Shuffle profile settings. Include as: Authorization: Bearer <APIKEY>'