Qlik Sense Brands API

The brands API from Qlik Sense — 6 operation(s) for brands.

Operations 12

GET /api/v1/brands List brands #
POST /api/v1/brands Create a new brand #
GET /api/v1/brands/{brand-id} Retrieve a brand #
PATCH /api/v1/brands/{brand-id} Update a brand #
DELETE /api/v1/brands/{brand-id} Delete a brand #
POST /api/v1/brands/{brand-id}/actions/activate Activate a brand #
POST /api/v1/brands/{brand-id}/actions/deactivate Deactivate a brand #
GET /api/v1/brands/{brand-id}/files/{brand-file-id} Download brand file #
POST /api/v1/brands/{brand-id}/files/{brand-file-id} Creates a brand file #
PUT /api/v1/brands/{brand-id}/files/{brand-file-id} Update a brand file #
DELETE /api/v1/brands/{brand-id}/files/{brand-file-id} Delete a brand file #
GET /api/v1/brands/active Retrieve active brand #

Documentation

📖
Documentation
https://qlik.dev/apis/rest/analytics/apps/
📖
APIReference
https://qlik.dev/apis/rest/analytics/apps/
📖
Documentation
https://qlik.dev/apis/rest/analytics/change-stores/
📖
APIReference
https://qlik.dev/apis/rest/analytics/change-stores/
📖
Documentation
https://qlik.dev/apis/rest/analytics/discovery-agent/adaptive-cards/
📖
APIReference
https://qlik.dev/apis/rest/analytics/discovery-agent/adaptive-cards/
📖
Documentation
https://qlik.dev/apis/rest/analytics/odag-apps/
📖
APIReference
https://qlik.dev/apis/rest/analytics/odag-apps/
📖
Documentation
https://qlik.dev/apis/rest/analytics/odag-links/
📖
APIReference
https://qlik.dev/apis/rest/analytics/odag-links/
📖
Documentation
https://qlik.dev/apis/rest/analytics/odag-requests/
📖
APIReference
https://qlik.dev/apis/rest/analytics/odag-requests/
📖
Documentation
https://qlik.dev/apis/rest/analytics/odag-settings/
📖
APIReference
https://qlik.dev/apis/rest/analytics/odag-settings/
📖
Documentation
https://qlik.dev/apis/rest/api-keys/
📖
APIReference
https://qlik.dev/apis/rest/api-keys/
📖
Documentation
https://qlik.dev/apis/rest/apps/
📖
APIReference
https://qlik.dev/apis/rest/apps/
📖
Documentation
https://qlik.dev/apis/rest/assistants/
📖
APIReference
https://qlik.dev/apis/rest/assistants/
📖
Documentation
https://qlik.dev/apis/rest/audits/
📖
APIReference
https://qlik.dev/apis/rest/audits/
📖
Documentation
https://qlik.dev/apis/rest/automation-connections/
📖
APIReference
https://qlik.dev/apis/rest/automation-connections/
📖
Documentation
https://qlik.dev/apis/rest/automation-connectors/
📖
APIReference
https://qlik.dev/apis/rest/automation-connectors/
📖
Documentation
https://qlik.dev/apis/rest/automations/
📖
APIReference
https://qlik.dev/apis/rest/automations/
📖
Documentation
https://qlik.dev/apis/rest/automl-deployments/
📖
APIReference
https://qlik.dev/apis/rest/automl-deployments/
📖
Documentation
https://qlik.dev/apis/rest/automl-predictions/
📖
APIReference
https://qlik.dev/apis/rest/automl-predictions/
📖
Documentation
https://qlik.dev/apis/rest/banners/
📖
APIReference
https://qlik.dev/apis/rest/banners/
📖
Documentation
https://qlik.dev/apis/rest/brands/
📖
APIReference
https://qlik.dev/apis/rest/brands/
📖
Documentation
https://qlik.dev/apis/rest/collections/
📖
APIReference
https://qlik.dev/apis/rest/collections/
📖
Documentation
https://qlik.dev/apis/rest/conditions/
📖
APIReference
https://qlik.dev/apis/rest/conditions/
📖
Documentation
https://qlik.dev/apis/rest/consumption/
📖
APIReference
https://qlik.dev/apis/rest/consumption/
📖
Documentation
https://qlik.dev/apis/rest/core/auth-settings/
📖
APIReference
https://qlik.dev/apis/rest/core/auth-settings/
📖
Documentation
https://qlik.dev/apis/rest/core/ip-policies/
📖
APIReference
https://qlik.dev/apis/rest/core/ip-policies/
📖
Documentation
https://qlik.dev/apis/rest/csp-origins/
📖
APIReference
https://qlik.dev/apis/rest/csp-origins/
📖
Documentation
https://qlik.dev/apis/rest/csrf-token/
📖
APIReference
https://qlik.dev/apis/rest/csrf-token/
📖
Documentation
https://qlik.dev/apis/rest/data-alerts/
📖
APIReference
https://qlik.dev/apis/rest/data-alerts/
📖
Documentation
https://qlik.dev/apis/rest/data-assets/
📖
APIReference
https://qlik.dev/apis/rest/data-assets/
📖
Documentation
https://qlik.dev/apis/rest/data-connections/
📖
APIReference
https://qlik.dev/apis/rest/data-connections/
📖
Documentation
https://qlik.dev/apis/rest/data-credentials/
📖
APIReference
https://qlik.dev/apis/rest/data-credentials/
📖
Documentation
https://qlik.dev/apis/rest/data-files/
📖
APIReference
https://qlik.dev/apis/rest/data-files/
📖
Documentation
https://qlik.dev/apis/rest/data-governance/data-products/
📖
APIReference
https://qlik.dev/apis/rest/data-governance/data-products/
📖
Documentation
https://qlik.dev/apis/rest/data-governance/data-qualities/
📖
APIReference
https://qlik.dev/apis/rest/data-governance/data-qualities/
📖
Documentation
https://qlik.dev/apis/rest/data-governance/trust-scores/
📖
APIReference
https://qlik.dev/apis/rest/data-governance/trust-scores/
📖
Documentation
https://qlik.dev/apis/rest/data-qualities/
📖
APIReference
https://qlik.dev/apis/rest/data-qualities/
📖
Documentation
https://qlik.dev/apis/rest/data-sets/
📖
APIReference
https://qlik.dev/apis/rest/data-sets/
📖
Documentation
https://qlik.dev/apis/rest/data-sources/
📖
APIReference
https://qlik.dev/apis/rest/data-sources/
📖
Documentation
https://qlik.dev/apis/rest/data-stores/
📖
APIReference
https://qlik.dev/apis/rest/data-stores/
📖
Documentation
https://qlik.dev/apis/rest/di-projects/
📖
APIReference
https://qlik.dev/apis/rest/di-projects/
📖
Documentation
https://qlik.dev/apis/rest/direct-access-agents/
📖
APIReference
https://qlik.dev/apis/rest/direct-access-agents/
📖
Documentation
https://qlik.dev/apis/rest/encryption/
📖
APIReference
https://qlik.dev/apis/rest/encryption/
📖
Documentation
https://qlik.dev/apis/rest/extensions/
📖
APIReference
https://qlik.dev/apis/rest/extensions/
📖
Documentation
https://qlik.dev/apis/rest/glossaries/
📖
APIReference
https://qlik.dev/apis/rest/glossaries/
📖
Documentation
https://qlik.dev/apis/rest/groups/
📖
APIReference
https://qlik.dev/apis/rest/groups/
📖
Documentation
https://qlik.dev/apis/rest/identity-providers/
📖
APIReference
https://qlik.dev/apis/rest/identity-providers/
📖
Documentation
https://qlik.dev/apis/rest/items/
📖
APIReference
https://qlik.dev/apis/rest/items/
📖
Documentation
https://qlik.dev/apis/rest/knowledgebases/
📖
APIReference
https://qlik.dev/apis/rest/knowledgebases/
📖
Documentation
https://qlik.dev/apis/rest/licenses/
📖
APIReference
https://qlik.dev/apis/rest/licenses/
📖
Documentation
https://qlik.dev/apis/rest/lineage-graphs/
📖
APIReference
https://qlik.dev/apis/rest/lineage-graphs/
📖
Documentation
https://qlik.dev/apis/rest/login/
📖
APIReference
https://qlik.dev/apis/rest/login/
📖
Documentation
https://qlik.dev/apis/rest/ml/
📖
APIReference
https://qlik.dev/apis/rest/ml/
📖
Documentation
https://qlik.dev/apis/rest/notes/
📖
APIReference
https://qlik.dev/apis/rest/notes/
📖
Documentation
https://qlik.dev/apis/rest/notifications/
📖
APIReference
https://qlik.dev/apis/rest/notifications/
📖
Documentation
https://qlik.dev/apis/rest/oauth-clients/
📖
APIReference
https://qlik.dev/apis/rest/oauth-clients/
📖
Documentation
https://qlik.dev/apis/rest/oauth-tokens/
📖
APIReference
https://qlik.dev/apis/rest/oauth-tokens/
📖
Documentation
https://qlik.dev/apis/rest/questions/
📖
APIReference
https://qlik.dev/apis/rest/questions/
📖
Documentation
https://qlik.dev/apis/rest/quotas/
📖
APIReference
https://qlik.dev/apis/rest/quotas/
📖
Documentation
https://qlik.dev/apis/rest/reload-tasks/
📖
APIReference
https://qlik.dev/apis/rest/reload-tasks/
📖
Documentation
https://qlik.dev/apis/rest/reloads/
📖
APIReference
https://qlik.dev/apis/rest/reloads/
📖
Documentation
https://qlik.dev/apis/rest/report-templates/
📖
APIReference
https://qlik.dev/apis/rest/report-templates/
📖
Documentation
https://qlik.dev/apis/rest/reports/
📖
APIReference
https://qlik.dev/apis/rest/reports/
📖
Documentation
https://qlik.dev/apis/rest/roles/
📖
APIReference
https://qlik.dev/apis/rest/roles/
📖
Documentation
https://qlik.dev/apis/rest/scheduling/tasks/
📖
APIReference
https://qlik.dev/apis/rest/scheduling/tasks/
📖
Documentation
https://qlik.dev/apis/rest/sharing-tasks/
📖
APIReference
https://qlik.dev/apis/rest/sharing-tasks/
📖
Documentation
https://qlik.dev/apis/rest/spaces/
📖
APIReference
https://qlik.dev/apis/rest/spaces/
📖
Documentation
https://qlik.dev/apis/rest/tasks/
📖
APIReference
https://qlik.dev/apis/rest/tasks/
📖
Documentation
https://qlik.dev/apis/rest/temp-contents/
📖
APIReference
https://qlik.dev/apis/rest/temp-contents/
📖
Documentation
https://qlik.dev/apis/rest/tenant-settings/
📖
APIReference
https://qlik.dev/apis/rest/tenant-settings/
📖
Documentation
https://qlik.dev/apis/rest/tenants/
📖
APIReference
https://qlik.dev/apis/rest/tenants/
📖
Documentation
https://qlik.dev/apis/rest/themes/
📖
APIReference
https://qlik.dev/apis/rest/themes/
📖
Documentation
https://qlik.dev/apis/rest/transports/
📖
APIReference
https://qlik.dev/apis/rest/transports/
📖
Documentation
https://qlik.dev/apis/rest/ui-config/
📖
APIReference
https://qlik.dev/apis/rest/ui-config/
📖
Documentation
https://qlik.dev/apis/rest/users/
📖
APIReference
https://qlik.dev/apis/rest/users/
📖
Documentation
https://qlik.dev/apis/rest/web-integrations/
📖
APIReference
https://qlik.dev/apis/rest/web-integrations/
📖
Documentation
https://qlik.dev/apis/rest/web-notifications/
📖
APIReference
https://qlik.dev/apis/rest/web-notifications/
📖
Documentation
https://qlik.dev/apis/rest/webhooks/
📖
APIReference
https://qlik.dev/apis/rest/webhooks/
📖
Documentation
https://qlik.dev/apis/rest/workflows/automation-connections/
📖
APIReference
https://qlik.dev/apis/rest/workflows/automation-connections/
📖
Documentation
https://qlik.dev/apis/rest/workflows/automation-connectors/
📖
APIReference
https://qlik.dev/apis/rest/workflows/automation-connectors/
📖
Documentation
https://qlik.dev/apis/rest/workflows/automations/
📖
APIReference
https://qlik.dev/apis/rest/workflows/automations/
📖
Documentation
https://qlik.dev/apis/rest
📖
Authentication
https://qlik.dev/authenticate

Specifications

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/qliksense-brands-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

qliksense-brands-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Brands API
  version: ''
servers:
- url: https://{tenant}.{region}.qlikcloud.com
  variables:
    region:
      default: us
      description: The region the tenant is hosted in
    tenant:
      default: your-tenant
      description: Name of the tenant that will be called
tags:
- name: Brands
paths:
  /api/v1/brands:
    get:
      tags:
      - Brands
      summary: List brands
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BrandsList'
          description: OK Response
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      parameters:
      - in: query
        name: endingBefore
        schema:
          type: string
        required: false
        description: Cursor to previous.
      - in: query
        name: limit
        schema:
          type: integer
          default: 5
          maximum: 100
          minimum: 1
        required: false
        description: Maximum number of brands to retrieve.
      - in: query
        name: sort
        schema:
          enum:
          - id
          - +id
          - -id
          - createdAt
          - +createdAt
          - -createdAt
          - updatedAt
          - +updatedAt
          - -updatedAt
          type: string
          default: -id
        required: false
        description: Field to sort by, prefixed with -/+ to indicate the order.
      - in: query
        name: startingAfter
        schema:
          type: string
        required: false
        description: Cursor to the next page.
      description: Lists all brand entries for a tenant.
      operationId: getBrands
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '1'
        limit: 1000
    post:
      tags:
      - Brands
      summary: Create a new brand
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Brand'
          description: Created Response
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      description: Creates a new brand.
      operationId: postBrands
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              required:
              - name
              properties:
                logo:
                  type: string
                  format: binary
                  description: The path and name of a JPG or PNG file that will be adjusted to fit in a 'box' measuring 109px in width and 62 px in height while maintaining aspect ratio. Maximum size of 300 KB, but smaller is recommended.
                name:
                  type: string
                  description: Name of the brand.
                styles:
                  type: string
                  format: binary
                  description: The path and name of a JSON file to define brand style settings. Maximum size is 100 KB. This property is not currently operational.
                favIcon:
                  type: string
                  format: binary
                  description: The path and name of a properly formatted ICO file. Maximum size is 100 KB.
                description:
                  type: string
                  description: Description of the brand.
            example:
              logo: image-file-content
              name: My brand
              styles: json-file-content
              favIcon: image-file-content
              description: Some brand description
            encoding:
              logo:
                contentType: image/png, image/jpeg
              styles:
                contentType: application/json
              favIcon:
                contentType: image/x-icon, image/vnd.microsoft.icon
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '2'
        limit: 100
  /api/v1/brands/{brand-id}:
    get:
      tags:
      - Brands
      summary: Retrieve a brand
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Brand'
          description: OK Response
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      parameters:
      - $ref: '#/components/parameters/brand-id'
      description: Returns a specific brand.
      operationId: getBrandsByBrandId
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '1'
        limit: 1000
    patch:
      tags:
      - Brands
      summary: Update a brand
      responses:
        '204':
          description: No Content Response.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      parameters:
      - $ref: '#/components/parameters/brand-id'
      description: Patches a brand.
      operationId: patchBrandsByBrandId
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/BrandPatch'
        required: true
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '2'
        limit: 100
    delete:
      tags:
      - Brands
      summary: Delete a brand
      responses:
        '204':
          description: No Content Response.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      parameters:
      - $ref: '#/components/parameters/brand-id'
      description: Deletes a specific brand. If the active brand is deleted, the tenant will return to the Qlik default.
      operationId: deleteBrandsByBrandId
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '2'
        limit: 100
  /api/v1/brands/{brand-id}/actions/activate:
    post:
      tags:
      - Brands
      summary: Activate a brand
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Brand'
          description: Responds with the brand that was activated.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      parameters:
      - $ref: '#/components/parameters/brand-id'
      description: Sets the brand active and de-activates any other active brand. If the brand is already active, no action is taken.
      operationId: postBrandsByBrandIdActionsActivate
      requestBody:
        content:
          application/json: {}
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '2'
        limit: 100
  /api/v1/brands/{brand-id}/actions/deactivate:
    post:
      tags:
      - Brands
      summary: Deactivate a brand
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Brand'
          description: Responds with the brand that was deactivated.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      parameters:
      - $ref: '#/components/parameters/brand-id'
      description: Sets the brand so it is no longer active, returning the tenant the Qlik default brand. If the brand is already inactive, no action is taken.
      operationId: postBrandsByBrandIdActionsDeactivate
      requestBody:
        content:
          application/json: {}
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '2'
        limit: 100
  /api/v1/brands/{brand-id}/files/{brand-file-id}:
    get:
      tags:
      - Brands
      summary: Download brand file
      responses:
        '200':
          content:
            '*/*':
              schema:
                type: string
                format: binary
          description: OK Response
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      parameters:
      - in: header
        name: Accept
        schema:
          type: string
          default: '*/*'
        required: false
        description: Media type accepted for the downloaded brand file.
      - $ref: '#/components/parameters/brand-id'
      - $ref: '#/components/parameters/brand-file-id'
      description: Downloads the specified brand file.
      operationId: getBrandsByBrandIdFilesByBrandFileId
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '1'
        limit: 1000
    post:
      tags:
      - Brands
      summary: Creates a brand file
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BrandFile'
          description: Created Response
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      parameters:
      - $ref: '#/components/parameters/brand-id'
      - $ref: '#/components/parameters/brand-file-id'
      description: Creates a brand file for the specified identifier.
      operationId: postBrandsByBrandIdFilesByBrandFileId
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  format: binary
                  description: The path and name of a file to upload.
              additionalProperties: false
            encoding:
              file:
                contentType: image/png, image/jpeg, image/x-icon, image/vnd.microsoft.icon, application/json
        required: true
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '2'
        limit: 100
    put:
      tags:
      - Brands
      summary: Update a brand file
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BrandFile'
          description: OK Response - file updated
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      parameters:
      - $ref: '#/components/parameters/brand-id'
      - $ref: '#/components/parameters/brand-file-id'
      description: Updates the specified brand file.
      operationId: putBrandsByBrandIdFilesByBrandFileId
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  format: binary
                  description: A file to upload.
              additionalProperties: false
            encoding:
              file:
                contentType: image/png, image/jpeg, image/x-icon, image/vnd.microsoft.icon, application/json
        required: true
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '2'
        limit: 100
    delete:
      tags:
      - Brands
      summary: Delete a brand file
      responses:
        '204':
          description: No content response.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      parameters:
      - $ref: '#/components/parameters/brand-id'
      - $ref: '#/components/parameters/brand-file-id'
      description: Deletes the specified brand file.
      operationId: deleteBrandsByBrandIdFilesByBrandFileId
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '2'
        limit: 100
  /api/v1/brands/active:
    get:
      tags:
      - Brands
      summary: Retrieve active brand
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NoActiveBrand'
          description: No active brand, returns an empty response.
        '301':
          description: Successful redirect.
      description: Returns the current active brand. If using the Qlik default brand, no value is returned.
      operationId: getBrandsActive
      x-qlik-visibility: public
      x-qlik-stability: stable
      x-qlik-deprecated: false
      x-qlik-tier:
        tier: '1'
        limit: 1000
components:
  schemas:
    Brand:
      type: object
      required:
      - id
      - name
      - description
      - files
      properties:
        id:
          type: string
          readOnly: true
        name:
          type: string
        files:
          type: array
          items:
            $ref: '#/components/schemas/BrandFile'
          description: Collection of resources that make up the brand.
        active:
          type: boolean
          readOnly: true
        createdAt:
          type: string
          format: date-time
          example: '2024-01-01T00:00:00.000Z'
          readOnly: true
          description: The UTC timestamp when the brand was created.
        createdBy:
          type: string
          readOnly: true
          description: ID of a user that created the brand.
        updatedAt:
          type: string
          format: date-time
          example: '2024-01-01T00:00:00.000Z'
          readOnly: true
          description: The UTC timestamp when the brand was last updated.
        updatedBy:
          type: string
          readOnly: true
          description: ID of a user that last updated the brand.
        description:
          type: string
      description: A brand is a collection of assets for applying custom branding. Only a single brand can be active in a tenant.
    BrandPatch:
      type: object
      required:
      - op
      - path
      properties:
        op:
          enum:
          - add
          - remove
          - replace
          type: string
          description: The operation to be performed.
        path:
          enum:
          - /name
          - /description
          type: string
          example: /description
          description: The path for the given resource field to patch.
        value:
          type: string
          description: The value to be used for this operation.
      description: A JSON Patch document as defined in https://datatracker.ietf.org/doc/html/rfc6902.
    BrandFile:
      type: object
      properties:
        id:
          enum:
          - logo
          - favIcon
          - styles
          type: string
        eTag:
          type: string
        path:
          type: string
        contentType:
          type: string
      description: Represents one of the assets used as part of the brand. These include logos, favicons, and some styles.
    NoActiveBrand:
      type: object
      description: Empty object inferring lack of active branding.
    Link:
      required:
      - href
      properties:
        href:
          type: string
          description: URL of a resource request.
    ErrorResponse401:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                example: HTTP-401
              title:
                type: string
                example: Unauthorized
              detail:
                type: string
                example: The user is not authorized to access the service.
        traceId:
          type: string
    ErrorResponse400:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                example: HTTP-400
              title:
                type: string
                example: Bad request
              detail:
                type: string
                example: The request is incorrect.
        traceId:
          type: string
    ErrorResponse403:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                example: HTTP-403
              title:
                type: string
                example: Forbidden
              detail:
                type: string
                example: You don't have sufficient permissions to access this resource.
        traceId:
          type: string
    BrandsList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Brand'
        links:
          properties:
            next:
              $ref: '#/components/schemas/Link'
            prev:
              $ref: '#/components/schemas/Link'
            self:
              $ref: '#/components/schemas/Link'
      description: A collection of brands.
    ErrorResponse404:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                example: HTTP-404
              title:
                type: string
                example: Not found
              detail:
                type: string
                example: The resource was not found.
        traceId:
          type: string
    ErrorResponse500:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                example: HTTP-500
              title:
                type: string
                example: Internal Server Error
              detail:
                type: string
                example: Something went wrong in the server.
        traceId:
          type: string
  responses:
    BadRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse400'
      description: Bad Request
    Unauthorized:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse401'
      description: Unauthorized
    Forbidden:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse403'
      description: Forbidden
    NotFound:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse404'
      description: Not found
    InternalServerError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse500'
      description: Internal Server Error
  parameters:
    brand-id:
      in: path
      name: brand-id
      schema:
        type: string
      required: true
      description: The brand's unique identifier.
    brand-file-id:
      in: path
      name: brand-file-id
      schema:
        enum:
        - logo
        - favIcon
        - styles
        type: string
      required: true
      description: The unique identifier of a file within a brand.