Edge Impulse Admin API

The Admin API from Edge Impulse — 49 operation(s) for admin.

OpenAPI Specification

edge-impulse-admin-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Edge Impulse Admin API
  version: 1.0.0
servers:
- url: https://studio.edgeimpulse.com/v1
security:
- ApiKeyAuthentication: []
- JWTAuthentication: []
- JWTHttpHeaderAuthentication: []
tags:
- name: Admin
paths:
  /api/admin/metrics:
    get:
      summary: Get global metrics
      description: Admin-only API to get global metrics.
      x-internal-api: true
      security:
      - permissions:
        - admin:metrics:read
      tags:
      - Admin
      operationId: adminGetMetrics
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetMetricsResponse'
  /api/admin/metrics/reports:
    get:
      summary: Get global metrics reports
      description: Admin-only API to get global metrics reports.
      x-internal-api: true
      security:
      - permissions:
        - admin:metrics:read
      tags:
      - Admin
      operationId: adminGetMetricsReports
      parameters:
      - $ref: '#/components/parameters/LimitResultsParameter'
      - $ref: '#/components/parameters/OffsetResultsParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetReportsResponse'
    post:
      summary: Create a new global metrics report
      description: 'Admin-only API to create a new global metrics report.

        A job is created to process the report request and the job details are returned in the response.

        '
      x-internal-api: true
      security:
      - permissions:
        - admin:metrics:read
      tags:
      - Admin
      operationId: adminCreateMetricsReport
      parameters:
      - $ref: '#/components/parameters/RequiredStartDateParameter'
      - $ref: '#/components/parameters/RequiredEndDateParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StartJobResponse'
  /api/admin/metrics/reports/{reportId}:
    get:
      summary: Get global metrics report
      description: Admin-only API to get a global metrics report.
      x-internal-api: true
      security:
      - permissions:
        - admin:metrics:read
      tags:
      - Admin
      operationId: adminGetMetricsReport
      parameters:
      - $ref: '#/components/parameters/ReportIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetReportResponse'
    delete:
      summary: Delete global metrics report
      description: Admin-only API to delete a global metrics report.
      x-internal-api: true
      security:
      - permissions:
        - admin:metrics:write
      tags:
      - Admin
      operationId: adminDeleteMetricsReport
      parameters:
      - $ref: '#/components/parameters/ReportIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/metrics/reports/{reportId}/download:
    get:
      summary: Download global metrics report
      description: Admin-only API to download a global metrics report.
      x-internal-api: true
      security:
      - permissions:
        - admin:metrics:read
      tags:
      - Admin
      operationId: adminDownloadMetricsReport
      parameters:
      - $ref: '#/components/parameters/ReportIdParameter'
      responses:
        '302':
          description: A redirect to the ZIP file
  /api/admin/infra/migrations:
    get:
      summary: Get data migrations
      description: Admin-only API to get data migrations.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:migrations:read
      tags:
      - Admin
      operationId: adminGetDataMigrations
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetDataMigrationsResponse'
  /api/admin/infra/migrations/{migrationId}:
    get:
      summary: Get data migration
      description: Admin-only API to get a data migration.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:migrations:read
      tags:
      - Admin
      operationId: adminGetDataMigration
      parameters:
      - $ref: '#/components/parameters/MigrationIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetDataMigrationResponse'
    post:
      summary: Run or pause a data migration
      description: Admin-only API to run or pause a data migration.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:migrations:write
      tags:
      - Admin
      operationId: adminToggleDataMigration
      parameters:
      - $ref: '#/components/parameters/MigrationIdParameter'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminToggleDataMigrationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/infra/disallowedEmailDomains:
    get:
      summary: Get the list of disallowed email domains
      description: Admin-only API to get the list of disallowed email domains.
      x-internal-api: true
      tags:
      - Admin
      operationId: adminGetDisallowedEmailDomains
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetDisallowedEmailDomainsResponse'
    put:
      summary: Add a disallowed email domain
      description: Admin-only API to add an email domain to the list of disallowed email domains.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:disallowedEmailDomains:write
      tags:
      - Admin
      operationId: adminAddDisallowedEmailDomain
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminAddDisallowedEmailDomainRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/infra/disallowedEmailDomains/{domainName}:
    delete:
      summary: Delete disallowed email domain
      description: Admin-only API to delete an email domain from the list of disallowed email domains.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:disallowedEmailDomains:write
      tags:
      - Admin
      operationId: adminDeleteDisallowedEmailDomain
      parameters:
      - $ref: '#/components/parameters/DomainNameParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/infra/featureFlags:
    get:
      summary: Get all feature flags
      description: Admin-only API to get all feature flags.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:featureFlags:read
      tags:
      - Admin
      operationId: adminGetFeatureFlags
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetFeatureFlagsResponse'
  /api/admin/infra/featureFlags/{featureId}:
    put:
      summary: Set a feature flag ON
      description: Admin-only API to set a feature flag ON. Setting a feature flag ON essentially enables the feature for all users.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:featureFlags:write
      tags:
      - Admin
      operationId: adminEnableFeature
      parameters:
      - $ref: '#/components/parameters/FeatureIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
    delete:
      summary: Set a feature flag OFF
      description: Admin-only API to delete a feature flag. Deleting a feature flag essentially disables the feature for all users.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:featureFlags:write
      tags:
      - Admin
      operationId: adminDisableFeature
      parameters:
      - $ref: '#/components/parameters/FeatureIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/infra/config:
    get:
      summary: Get all studio config
      description: Admin-only API to get all studio config.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:config:read
      tags:
      - Admin
      operationId: adminGetStudioConfig
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetStudioConfigResponse'
  /api/admin/infra/config/{configKey}:
    post:
      summary: Update studio config
      description: Admin-only API to update a studio config item.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:config:write
      tags:
      - Admin
      operationId: adminSetStudioConfig
      parameters:
      - $ref: '#/components/parameters/ConfigKeyParameter'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminUpdateConfigRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
    delete:
      summary: Delete a studio config item
      description: Admin-only API to delete a studio config item.
      x-internal-api: true
      security:
      - permissions:
        - admin:infra:config:write
      tags:
      - Admin
      operationId: adminDeleteStudioConfig
      parameters:
      - $ref: '#/components/parameters/ConfigKeyParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/users:
    get:
      summary: Get all users
      description: Admin-only API to get the list of all registered users.
      x-internal-api: true
      security:
      - permissions:
        - admin:users:read
      tags:
      - Admin
      operationId: adminGetUsers
      parameters:
      - $ref: '#/components/parameters/FiltersActiveParameter'
      - $ref: '#/components/parameters/FiltersTierParameter'
      - $ref: '#/components/parameters/FieldsParameter'
      - $ref: '#/components/parameters/SortQueryParameter'
      - $ref: '#/components/parameters/FiltersQueryParameter'
      - $ref: '#/components/parameters/LimitResultsParameter'
      - $ref: '#/components/parameters/OffsetResultsParameter'
      - $ref: '#/components/parameters/SearchQueryParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetUsersResponse'
  /api/admin/users/{userId}:
    get:
      summary: Get user
      description: Admin-only API to get information about a user.
      x-internal-api: true
      security:
      - permissions:
        - admin:users:read
      tags:
      - Admin
      operationId: adminGetUser
      parameters:
      - $ref: '#/components/parameters/UserIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetUserResponse'
    post:
      summary: Update user
      description: Admin-only API to update user properties.
      x-internal-api: true
      security:
      - permissions:
        - admin:users:write
      tags:
      - Admin
      operationId: adminUpdateUser
      parameters:
      - $ref: '#/components/parameters/UserIdParameter'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminUpdateUserRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
    delete:
      summary: Delete a user
      description: Admin-only API to delete a user.
      x-internal-api: true
      security:
      - permissions:
        - admin:users:write
      tags:
      - Admin
      operationId: adminDeleteUser
      parameters:
      - $ref: '#/components/parameters/UserIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StartJobResponse'
  /api/admin/users/{userId}/metrics:
    get:
      summary: Get user metrics
      description: Admin-only API to get marketing metrics about a user.
      x-internal-api: true
      security:
      - permissions:
        - admin:users:read
      tags:
      - Admin
      operationId: adminGetUserMetrics
      parameters:
      - $ref: '#/components/parameters/UserIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetUserMetricsResponse'
  /api/admin/users/{userId}/permissions:
    post:
      summary: Update user permissions
      description: Admin-only API to update the list of permissions for a user.
      x-internal-api: true
      security:
      - permissions:
        - admin:users:permissions:write
      tags:
      - Admin
      operationId: adminUpdateUserPermissions
      parameters:
      - $ref: '#/components/parameters/UserIdParameter'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminUpdateUserPermissionsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/users/{userId}/jobs:
    get:
      summary: Get user jobs
      description: Admin-only API to get the list of all project jobs for a user.
      x-internal-api: true
      security:
      - permissions:
        - admin:users:read
      tags:
      - Admin
      operationId: adminGetUserJobs
      parameters:
      - $ref: '#/components/parameters/UserIdParameter'
      - $ref: '#/components/parameters/LimitResultsParameter'
      - $ref: '#/components/parameters/OffsetResultsParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListJobsResponse'
  /api/admin/trials:
    post:
      summary: Create user enterprise trial
      description: Admin-only API to create an enterprise trial for a user.
      x-internal-api: true
      security:
      - permissions:
        - admin:trials:write
      tags:
      - Admin
      operationId: adminCreateTrial
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminStartEnterpriseTrialRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityCreatedResponse'
  /api/admin/trials/{enterpriseTrialId}:
    get:
      summary: Get enterprise trial
      description: Admin-only API to get a specific enterprise trial.
      x-internal-api: true
      security:
      - permissions:
        - admin:trials:read
      tags:
      - Admin
      operationId: adminGetTrial
      parameters:
      - $ref: '#/components/parameters/EnterpriseTrialIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetTrialResponse'
    put:
      summary: Update enterprise trial
      description: Admin-only API to update an enterprise trial.
      x-internal-api: true
      security:
      - permissions:
        - admin:trials:write
      tags:
      - Admin
      operationId: adminUpdateTrial
      parameters:
      - $ref: '#/components/parameters/EnterpriseTrialIdParameter'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminUpdateTrialRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
    delete:
      summary: Delete enterprise trial
      description: Admin-only API to delete an enterprise trial.
      x-internal-api: true
      security:
      - permissions:
        - admin:trials:write
      tags:
      - Admin
      operationId: adminDeleteTrial
      parameters:
      - $ref: '#/components/parameters/EnterpriseTrialIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/trials/{enterpriseTrialId}/upgrade:
    post:
      summary: Upgrade enterprise trial to a full enterprise account
      description: Admin-only API to upgrade a specific enterprise trial to a full enterprise account.
      x-internal-api: true
      security:
      - permissions:
        - admin:trials:write
      tags:
      - Admin
      operationId: adminUpgradeTrial
      parameters:
      - $ref: '#/components/parameters/EnterpriseTrialIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/projects:
    get:
      summary: Get all projects
      description: Admin-only API to get the list of all projects.
      x-internal-api: true
      security:
      - permissions:
        - admin:projects:read
      tags:
      - Admin
      operationId: adminGetProjects
      parameters:
      - $ref: '#/components/parameters/FiltersActiveParameter'
      - $ref: '#/components/parameters/SortQueryParameter'
      - $ref: '#/components/parameters/FiltersQueryParameter'
      - $ref: '#/components/parameters/LimitResultsParameter'
      - $ref: '#/components/parameters/OffsetResultsParameter'
      - $ref: '#/components/parameters/SearchQueryParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminListProjectsResponse'
    post:
      summary: Create a new project
      description: Admin-only API to create a new free tier project.
      x-internal-api: true
      tags:
      - Admin
      security:
      - permissions:
        - admin:projects:write
      operationId: adminCreateProject
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminCreateProjectRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateProjectResponse'
  /api/admin/projects/{projectId}:
    get:
      summary: Get project
      description: Admin-only API to get project information.
      x-internal-api: true
      security:
      - permissions:
        - admin:projects:read
      tags:
      - Admin
      operationId: adminGetProject
      parameters:
      - $ref: '#/components/parameters/ProjectIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectInfoResponse'
    post:
      summary: Update project
      description: Admin-only API to update project properties.
      x-internal-api: true
      security:
      - permissions:
        - admin:projects:write
      tags:
      - Admin
      operationId: adminUpdateProject
      parameters:
      - $ref: '#/components/parameters/ProjectIdParameter'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateProjectRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
    delete:
      summary: Delete a project
      description: Admin-only API to delete a project.
      x-internal-api: true
      security:
      - permissions:
        - admin:projects:write
      tags:
      - Admin
      operationId: adminDeleteProject
      parameters:
      - $ref: '#/components/parameters/ProjectIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/projects/{projectId}/members:
    post:
      summary: Add user to a project
      description: Admin-only API to add a user to a project. If no user is provided, the current user is used.
      x-internal-api: true
      security:
      - permissions:
        - admin:projects:members:write
      tags:
      - Admin
      parameters:
      - $ref: '#/components/parameters/ProjectIdParameter'
      operationId: adminAddUserToProject
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminAddProjectUserRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/projects/{projectId}/members/{userId}:
    delete:
      summary: Remove user from a project
      description: Admin-only API to remove a user from a project.
      x-internal-api: true
      security:
      - permissions:
        - admin:projects:members:write
      tags:
      - Admin
      parameters:
      - $ref: '#/components/parameters/ProjectIdParameter'
      - $ref: '#/components/parameters/UserIdParameter'
      operationId: adminRemoveUserFromProject
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/projects/{projectId}/jobs:
    get:
      summary: Get project jobs
      description: Admin-only API to get the list of all jobs for a project.
      x-internal-api: true
      security:
      - permissions:
        - admin:projects:read
      tags:
      - Admin
      operationId: adminGetProjectJobs
      parameters:
      - $ref: '#/components/parameters/ProjectIdParameter'
      - $ref: '#/components/parameters/LimitResultsParameter'
      - $ref: '#/components/parameters/OffsetResultsParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListJobsResponse'
  /api/admin/organizations:
    get:
      summary: Get all organizations
      description: Admin-only API to get the list of all organizations.
      x-internal-api: true
      security:
      - permissions:
        - admin:organizations:read
      tags:
      - Admin
      operationId: adminGetOrganizations
      parameters:
      - $ref: '#/components/parameters/FiltersActiveParameter'
      - $ref: '#/components/parameters/FiltersIncludeDeletedParameter'
      - $ref: '#/components/parameters/SortQueryParameter'
      - $ref: '#/components/parameters/FiltersQueryParameter'
      - $ref: '#/components/parameters/LimitResultsParameter'
      - $ref: '#/components/parameters/OffsetResultsParameter'
      - $ref: '#/components/parameters/SearchQueryParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetOrganizationsResponse'
    post:
      summary: Create a new organization
      description: Admin-only API to create a new organization.
      x-internal-api: true
      security:
      - permissions:
        - admin:organizations:write
      tags:
      - Admin
      operationId: adminCreateOrganization
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminCreateOrganizationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateOrganizationResponse'
  /api/admin/organizations/{organizationId}:
    get:
      summary: Organization information
      description: Admin-only API to list all information about this organization.
      x-internal-api: true
      security:
      - permissions:
        - admin:organizations:read
      tags:
      - Admin
      parameters:
      - $ref: '#/components/parameters/OrganizationIdParameter'
      - $ref: '#/components/parameters/FiltersIncludeDeletedParameter'
      operationId: adminGetOrganizationInfo
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminOrganizationInfoResponse'
    post:
      summary: Update organization
      description: Admin-only API to update organization properties such as name and logo.
      x-internal-api: true
      security:
      - permissions:
        - admin:organizations:write
      tags:
      - Admin
      parameters:
      - $ref: '#/components/parameters/OrganizationIdParameter'
      operationId: adminUpdateOrganization
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminUpdateOrganizationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
    delete:
      summary: Delete an organization
      description: Admin-only API to delete an organization. If `fullDeletion` is set, it deletes the organization's identifiable information and files. Otherwise, it soft deletes the organization by setting its `delete_date` value.
      x-internal-api: true
      security:
      - permissions:
        - admin:organizations:write
      tags:
      - Admin
      operationId: adminDeleteOrganization
      parameters:
      - $ref: '#/components/parameters/OrganizationIdParameter'
      - $ref: '#/components/parameters/FullDeleteEntityParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/organizations/{organizationId}/restore:
    post:
      summary: Restore an organization
      description: 'Admin-only API to restore a soft deleted organization. All organization projects sharing the same deletion date as that of the organization will also be restored. If this is a trial organization that was never upgraded to a paid plan then the organization will be restored to its original trial state.

        '
      x-internal-api: true
      security:
      - permissions:
        - admin:organizations:write
      tags:
      - Admin
      operationId: adminRestoreOrganization
      parameters:
      - $ref: '#/components/parameters/OrganizationIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericApiResponse'
  /api/admin/organizations/{organizationId}/usage/computeTime:
    get:
      summary: Get organization compute time usage
      description: Admin-only API to get compute time usage for an organization over a period of time.
      x-internal-api: true
      security:
      - permissions:
        - admin:organizations:read
      tags:
      - Admin
      operationId: adminGetOrganizationComputeTimeUsage
      parameters:
      - $ref: '#/components/parameters/OrganizationIdParameter'
      - $ref: '#/components/parameters/RequiredStartDateParameter'
      - $ref: '#/components/parameters/RequiredEndDateParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetOrganizationComputeTimeUsageResponse'
  /api/admin/organizations/{organizationId}/usage/reports:
    get:
      summary: Get all usage reports
      description: Admin-only API to get all usage reports for an organization.
      x-internal-api: true
      security:
      - permissions:
        - admin:organizations:read
      tags:
      - Admin
      operationId: adminGetOrganizationUsageReports
      parameters:
      - $ref: '#/components/parameters/OrganizationIdParameter'
      - $ref: '#/components/parameters/LimitResultsParameter'
      - $ref: '#/components/parameters/OffsetResultsParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetReportsResponse'
    post:
      summary: Creates a new usage report
      description: Admin-only API to create a new usage report for an organization. A job is created to process the report request and the job details are returned in the response.
      x-internal-api: true
      security:
      - permissions:
        - admin:organizations:read
      tags:
      - Admin
      operationId: adminCreateOrganizationUsageReport
      parameters:
      - $ref: '#/components/parameters/OrganizationIdParameter'
      - $ref: '#/components/parameters/RequiredStartDateParameter'
      - $ref: '#/components/parameters/RequiredEndDateParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StartJobResponse'
  /api/admin/organizations/{organizationId}/usage/reports/{reportId}:
    get:
      summary: Get usage report
      description: Admin-only API to get a usage report for an organization.
      x-internal-api: true
      security:
      - permissions:
        - admin:organizations:read
      tags:
      - Admin
      operationId: adminGetOrganizationUsageReport
      parameters:
      - $ref: '#/components/parameters/OrganizationIdParameter'
      - $ref: '#/components/parameters/ReportIdParameter'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminGetReportResponse'
    delete:
      summary: Delete usage report
      description: Admin-only API to delete a usage report for an organization.
      x-internal-api: true
      security:
      - permissions:
      

# --- truncated at 32 KB (131 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/edge-impulse/refs/heads/main/openapi/edge-impulse-admin-api-openapi.yml