BlindInsight organizations API

The organizations API from BlindInsight — 15 operation(s) for organizations.

OpenAPI Specification

blindinsight-organizations-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Blind Insight REST accounts organizations API
  version: 10.22.0
  description: End-to-end encrypted datastore
tags:
- name: organizations
paths:
  /api/organizations/:
    get:
      operationId: organizations_list
      description: 'Query for a list of all organizations that the currently authenticated user has

        access to.


        The response will be a list of organization objects.


        **On the command line:**


        ```bash

        blind organizations list

        ```'
      summary: List organizations
      parameters:
      - in: query
        name: created
        schema:
          type: string
          format: date-time
      - in: query
        name: id
        schema:
          type: string
      - in: query
        name: is_active
        schema:
          type: boolean
      - name: limit
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: modified
        schema:
          type: string
          format: date-time
      - in: query
        name: name
        schema:
          type: string
        description: The name of the organization
      - name: offset
        required: false
        in: query
        description: The initial index from which to return the results.
        schema:
          type: integer
      - in: query
        name: slug
        schema:
          type: string
        description: The name in all lowercase, suitable for URL identification
      - in: query
        name: stripe_customer_id
        schema:
          type: string
        description: Stripe customer id mirrored from settings['stripe']; indexed.
      - in: query
        name: users
        schema:
          type: array
          items:
            type: string
        explode: true
        style: form
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedOrganizationList'
          description: ''
    post:
      operationId: organizations_create
      description: 'Create a new organization. The only required field is `name`. The currently

        authenticated user will be set as the owner of the organization.


        The response will be the newly created organization object.


        **On the command line:**


        ```bash

        blind organizations create --data ''{"name": "Example Organization"}''

        ```'
      summary: Create organization
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrganizationCreate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrganizationCreate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/OrganizationCreate'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationCreate'
          description: ''
  /api/organizations/{id}/:
    get:
      operationId: organizations_retrieve
      description: 'Retrieve a single organization by its ID.


        The response will be the organization object.


        **On the command line:**


        ```bash

        blind organizations retrieve --id "<organization-id>"

        ```'
      summary: Retrieve organization
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this organization.
        required: true
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization'
          description: ''
    put:
      operationId: organizations_update
      description: 'Replace an organization with the data provided in the request.


        The response will be the updated organization object.


        **On the command line:**


        ```bash

        blind organizations update --id "<organization-id>" --data organization.json

        ```'
      summary: Update organization
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this organization.
        required: true
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrganizationUpdate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrganizationUpdate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/OrganizationUpdate'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationUpdate'
          description: ''
    patch:
      operationId: organizations_partial-update
      description: 'Update one or more fields of an organization. This does not replace the entire

        organization, it only updates the fields provided in the request.


        The response will be the updated organization object.


        **On the command line:**


        ```bash

        blind organizations partial-update --id "<organization-id>" --data organization-update.json

        ```'
      summary: Partial update organization
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this organization.
        required: true
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedOrganizationUpdate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedOrganizationUpdate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedOrganizationUpdate'
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationUpdate'
          description: ''
    delete:
      operationId: organizations_destroy
      description: 'Delete an organization. Note that this does not delete the organization''s

        members or any associated data.


        The response will be a 204 No Content if successful.


        **On the command line:**


        ```bash

        blind organizations destroy --id "<organization-id>"

        ```'
      summary: Delete organization
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this organization.
        required: true
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '204':
          description: No response body
  /api/organizations/{id}/dataset/{slug}/:
    get:
      operationId: organizations_dataset
      description: 'Retrieve a single organization dataset by its slug.


        The response is the dataset object.


        **On the command line:**


        ```bash

        blind organizations dataset --id "<organization-id>" --slug "<dataset-slug>"

        ```'
      summary: Retrieve organization dataset by slug
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this organization.
        required: true
      - in: path
        name: slug
        schema:
          type: string
          pattern: ^[-a-zA-Z0-9_]+$
        required: true
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization'
          description: ''
  /api/organizations/{id}/owner/:
    get:
      operationId: organizations_owner
      description: 'Retrieve a single owner of an organization by its ID.


        The response will be the user object of the owner.


        **On the command line:**


        ```bash

        blind organizations owner --id "<organization-id>"

        ```'
      summary: Retrieve organization owner
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this organization.
        required: true
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization'
          description: ''
  /api/organizations/{organization_id}/audit-logs/:
    get:
      operationId: organizations_audit_logs_list
      description: Return a list of all organization audit logs.
      summary: List organization audit logs
      parameters:
      - in: query
        name: action
        schema:
          type: integer
          enum:
          - 0
          - 1
          - 2
          - 3
        description: '* `0` - create

          * `1` - update

          * `2` - delete

          * `3` - access'
      - in: query
        name: actor
        schema:
          type: string
      - in: query
        name: actor_email
        schema:
          type: string
      - in: query
        name: changes_text
        schema:
          type: string
      - in: query
        name: cid
        schema:
          type: string
      - in: query
        name: content_type
        schema:
          type: integer
      - name: limit
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: object_id
        schema:
          type: integer
      - in: query
        name: object_pk
        schema:
          type: string
      - in: query
        name: object_repr
        schema:
          type: string
      - name: offset
        required: false
        in: query
        description: The initial index from which to return the results.
        schema:
          type: integer
      - in: path
        name: organization_id
        schema:
          type: string
        required: true
      - in: query
        name: remote_addr
        schema:
          type: string
      - in: query
        name: remote_port
        schema:
          type: integer
      - in: query
        name: timestamp
        schema:
          type: string
          format: date-time
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedAuditLogEntryList'
          description: ''
  /api/organizations/{organization_id}/audit-logs/{id}/:
    get:
      operationId: organizations_audit_logs_retrieve
      description: Retrieve a single organization audit log by its ID.
      summary: Retrieve organization audit log
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this log entry.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
        required: true
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditLogEntry'
          description: ''
  /api/organizations/{organization_id}/invitations/:
    get:
      operationId: organizations_invitations_list
      description: 'Return a list of all organization invitations, including those which have

        already been accepted.


        The response is a list of invitation objects.


        **On the command line:**


        ```bash

        blind organizations invitations list --organization-id "<organization-id>"

        ```'
      summary: List organization invitations
      parameters:
      - name: limit
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - name: offset
        required: false
        in: query
        description: The initial index from which to return the results.
        schema:
          type: integer
      - in: path
        name: organization_id
        schema:
          type: string
        required: true
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedOrganizationInvitationList'
          description: ''
    post:
      operationId: organizations_invitations_create
      description: 'Invite a user to join an organization.


        The response is the newly created invitation object.


        **On the command line:**


        ```bash

        blind organizations invitations create --organization-id "<organization-id>" --data organization-invitation.json

        ```'
      summary: Create organization invitation
      parameters:
      - in: path
        name: organization_id
        schema:
          type: string
        required: true
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrganizationInvitationCreate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrganizationInvitationCreate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/OrganizationInvitationCreate'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationInvitationCreate'
          description: ''
  /api/organizations/{organization_id}/invitations/{id}/:
    get:
      operationId: organizations_invitations_retrieve
      description: 'Retrieve a single organization invitation by its ID.


        The response is the invitation object.


        **On the command line:**


        ```bash

        blind organizations invitations retrieve --organization-id "<organization-id>" --id "<invitation-id>"

        ```'
      summary: Retrieve organization invitation
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this organization invitation.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
        required: true
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationInvitation'
          description: ''
    put:
      operationId: organizations_invitations_update
      description: 'Update an organization invitation.


        The response is the updated invitation object.


        **On the command line:**


        ```bash

        blind organizations invitations update --organization-id "<organization-id>" --id "<invitation-id>" --data organization-invitation.json

        ```'
      summary: Update organization invitation
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this organization invitation.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
        required: true
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrganizationInvitation'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OrganizationInvitation'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/OrganizationInvitation'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationInvitation'
          description: ''
    patch:
      operationId: organizations_invitations_partial-update
      description: 'Update one or more fields of an organization invitation. This does not replace

        the entire invitation, it only updates the fields provided in the request.


        The response is the updated invitation object.


        **On the command line:**


        ```bash

        blind organizations invitations partial-update --organization-id "<organization-id>" --id "<invitation-id>" --data organization-invitation-update.json

        ```'
      summary: Partial update organization invitation
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this organization invitation.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
        required: true
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedOrganizationInvitation'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedOrganizationInvitation'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedOrganizationInvitation'
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationInvitation'
          description: ''
    delete:
      operationId: organizations_invitations_destroy
      description: 'Delete an organization invitation.


        The response is a 204 No Content if successful.


        **On the command line:**


        ```bash

        blind organizations invitations destroy --organization-id "<organization-id>" --id "<invitation-id>"

        ```'
      summary: Delete organization invitation
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this organization invitation.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
        required: true
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '204':
          description: No response body
  /api/organizations/{organization_id}/teams/:
    get:
      operationId: organizations_teams_list
      description: List all Team objects that you have access to.
      summary: List all teams
      parameters:
      - in: query
        name: dataset
        schema:
          type: string
        description: Filter by dataset ID.
      - in: query
        name: dataset_slug
        schema:
          type: string
        description: Filter by dataset slug.
      - in: query
        name: id
        schema:
          type: string
      - name: limit
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: members
        schema:
          type: array
          items:
            type: string
        description: The users that are members of this team.
        explode: true
        style: form
      - in: query
        name: name
        schema:
          type: string
        description: A human-readable name for this team.
      - name: offset
        required: false
        in: query
        description: The initial index from which to return the results.
        schema:
          type: integer
      - in: query
        name: organization
        schema:
          type: string
        description: The organization that this team belongs to.
      - in: path
        name: organization_id
        schema:
          type: string
          description: The organization that this team belongs to.
        required: true
      - in: query
        name: schema
        schema:
          type: string
        description: Filter by schema ID.
      - in: query
        name: schema_slug
        schema:
          type: string
        description: Filter by schema slug.
      - in: query
        name: slug
        schema:
          type: string
        description: A unique slug for this team.
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedTeamList'
          description: ''
    post:
      operationId: organizations_teams_create
      description: Create a new Team object.
      summary: Create a new team
      parameters:
      - in: path
        name: organization_id
        schema:
          type: string
          description: The organization that this team belongs to.
        required: true
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Team'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Team'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Team'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Team'
          description: ''
  /api/organizations/{organization_id}/teams/{id}/:
    get:
      operationId: organizations_teams_retrieve
      description: Retrieve a single Team object by its ID.
      summary: Retrieve a single team
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this team.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
          description: The organization that this team belongs to.
        required: true
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Team'
          description: ''
    put:
      operationId: organizations_teams_update
      description: Update a Team object by its ID. This completely replaces the object.
      summary: Update a team
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this team.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
          description: The organization that this team belongs to.
        required: true
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Team'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Team'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Team'
        required: true
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Team'
          description: ''
    patch:
      operationId: organizations_teams_partial-update
      description: Partially update a Team object by its ID. This only replaces the specified fields.
      summary: Partially update a team
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this team.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
          description: The organization that this team belongs to.
        required: true
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedTeam'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedTeam'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedTeam'
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Team'
          description: ''
    delete:
      operationId: organizations_teams_destroy
      description: Delete a Team object by its ID.
      summary: Delete a team
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this team.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
          description: The organization that this team belongs to.
        required: true
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '204':
          description: No response body
  /api/organizations/{organization_id}/teams/{id}/add_member/:
    post:
      operationId: organizations_teams_add-member
      description: Adds a member to a team if you have permissions to manage that team.
      summary: Add a member to a team
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this team.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
          description: The organization that this team belongs to.
        required: true
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - id
              properties:
                id:
                  type: string
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
              - id
              properties:
                id:
                  type: string
          multipart/form-data:
            schema:
              type: object
              required:
              - id
              properties:
                id:
                  type: string
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '204':
          content:
            application/json:
              schema:
                description: The resource was added successfully.
          description: ''
  /api/organizations/{organization_id}/teams/{id}/remove_member/:
    post:
      operationId: organizations_teams_remove-member
      description: Removes a member from a team if you have permissions to manage that team.
      summary: Remove a member from a team
      parameters:
      - in: path
        name: id
        schema:
          type: string
        description: A unique value identifying this team.
        required: true
      - in: path
        name: organization_id
        schema:
          type: string
          description: The organization that this team belongs to.
        required: true
      tags:
      - organizations
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - id
              properties:
                id:
                  type: string
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
              - id
              properties:
                id:
                  type: string
          multipart/form-data:
            schema:
              type: object
              required:
              - id
              properties:
                id:
                  type: string
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '204':
          content:
            application/json:
              schema:
                description: The resource was deleted successfully.
          description: ''
  /api/organizations/{organization_id}/users/:
    get:
      operationId: organizations_users_list
      description: 'Return a list of all users of an organization.


        The response is a list of user objects belonging to the organization.


        **On the command line:**


        ```bash

        blind organizations users list --organization-id "<organization-id>"

        ```'
      summary: List organization users
      parameters:
      - in: query
        name: created
        schema:
          type: string
          format: date-time
      - in: query
        name: has_identity
        schema:
          type: boolean
        description: Filter by whether the organization user has an identity.
      - in: query
        name: id
        schema:
          type: string
      - in: query
        name: is_admin
        schema:
          type: boolean
      - name: limit
        required: false
        in: query
        description: Number of results to return per page.
        schema:
          type: integer
      - in: query
        name: modified
        schema:
          type: string
          format: date-time
      - name: offset
        required: false
        in: query
        description: The initial index from which to return the results.
        schema:
          type: integer
      - in: query
        name: organization
        schema:
          type: string
      - in: path
        name: organization_id
        schema:
          type: string
        required: true
      - in: query
        name: user
        schema:
          type: string
      tags:
      - organizations
      security:
      - cookieAuth: []
      - basicAuth: []
      - jwtAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedOrganizationUserList'
          description: ''
    post:
      operationId: organizations_users_create
      description: 'Add a new user to an organization.


        The response is the newly added user object.


        **On the command line:**


        ```bash

        blind organizations users create --organization-id "<organization-id

# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/blindinsight/refs/heads/main/openapi/blindinsight-organizations-api-openapi.yml