DevCycle Overrides API

The Overrides API from DevCycle — 3 operation(s) for overrides.

OpenAPI Specification

devcycle-overrides-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: DevCycle Bucketing Audiences Overrides API
  description: Documents the DevCycle Bucketing API which provides an API interface to User Bucketing and for Server SDKs configured to use Cloud Bucketing.
  version: 1.3.0
servers:
- url: https://bucketing-api.devcycle.com/
tags:
- name: Overrides
paths:
  /v1/projects/{project}/features/{feature}/overrides/current:
    put:
      operationId: OverridesController_updateFeatureOverride
      summary: Update Overrides for the Current User
      parameters:
      - name: feature
        required: true
        in: path
        description: A Feature key or ID
        schema:
          type: string
      - name: project
        required: true
        in: path
        description: A Project key or ID
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateOverrideDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Override'
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestErrorResponse'
        '401':
          description: ''
        '403':
          description: ''
        '404':
          description: ''
      tags:
      - Overrides
    get:
      operationId: OverridesController_findOne
      summary: Get feature overrides for current user
      parameters:
      - name: feature
        required: true
        in: path
        description: A Feature key or ID
        schema:
          type: string
      - name: project
        required: true
        in: path
        description: A Project key or ID
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OverrideResponse'
        '401':
          description: ''
        '403':
          description: ''
        '404':
          description: ''
      tags:
      - Overrides
    delete:
      operationId: OverridesController_deleteOverridesForFeature
      summary: Delete override for specific feature and environment for the current user
      parameters:
      - name: environment
        required: true
        in: query
        description: A Environment key or ID
        schema:
          type: string
      - name: feature
        required: true
        in: path
        description: A Feature key or ID
        schema:
          type: string
      - name: project
        required: true
        in: path
        description: A Project key or ID
        schema:
          type: string
      responses:
        '200':
          description: ''
        '401':
          description: ''
        '403':
          description: ''
        '404':
          description: ''
      tags:
      - Overrides
  /v1/projects/{project}/features/{feature}/overrides:
    get:
      operationId: OverridesController_findOverridesForFeature
      summary: Get overrides for feature
      parameters:
      - name: addMetadata
        required: false
        in: query
        schema:
          type: boolean
      - name: environment
        required: false
        in: query
        description: A Environment key or ID
        schema:
          type: string
      - name: feature
        required: true
        in: path
        description: A Feature key or ID
        schema:
          type: string
      - name: project
        required: true
        in: path
        description: A Project key or ID
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FeatureOverrides'
        '401':
          description: ''
        '404':
          description: ''
      tags:
      - Overrides
  /v1/projects/{project}/overrides/current:
    get:
      operationId: OverridesController_findOverridesForProject
      summary: Get all overrides for project for current user
      parameters:
      - name: project
        required: true
        in: path
        description: A Project key or ID
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UserOverride'
        '401':
          description: ''
        '403':
          description: ''
        '404':
          description: ''
      tags:
      - Overrides
    delete:
      operationId: OverridesController_deleteOverridesForProject
      summary: Delete all overrides for project for current user
      parameters:
      - name: project
        required: true
        in: path
        description: A Project key or ID
        schema:
          type: string
      responses:
        '200':
          description: ''
        '401':
          description: ''
        '403':
          description: ''
        '404':
          description: ''
      tags:
      - Overrides
components:
  schemas:
    UserOverride:
      type: object
      properties:
        _feature:
          type: string
        featureName:
          type: string
        _environment:
          type: string
        environmentName:
          type: string
        _variation:
          type: string
        variationName:
          type: string
      required:
      - _feature
      - featureName
      - _environment
      - environmentName
      - _variation
      - variationName
    FeatureOverride:
      type: object
      properties:
        _environment:
          type: string
        _variation:
          type: string
      required:
      - _environment
      - _variation
    UpdateOverrideDto:
      type: object
      properties:
        environment:
          type: string
        variation:
          type: string
      required:
      - environment
      - variation
    BadRequestErrorResponse:
      type: object
      properties:
        statusCode:
          type: number
          description: Response status code
          example: 400
        message:
          type: object
          description: Error details
          example:
          - key should not be empty
        error:
          type: string
          description: Error type
          example: Bad Request
      required:
      - statusCode
      - message
      - error
    FeatureOverrides:
      type: object
      properties:
        overrides:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/Override'
        uniqueTeamMembers:
          type: number
      required:
      - overrides
      - uniqueTeamMembers
    OverrideResponse:
      type: object
      properties:
        overrides:
          type: array
          items:
            $ref: '#/components/schemas/FeatureOverride'
      required:
      - overrides
    Override:
      type: object
      properties:
        _project:
          type: string
        _environment:
          type: string
        _feature:
          type: string
        _variation:
          type: string
        dvcUserId:
          type: string
        createdAt:
          type: number
        updatedAt:
          type: number
        a0_user:
          type: string
      required:
      - _project
      - _environment
      - _feature
      - _variation
      - dvcUserId
      - createdAt
      - updatedAt
  securitySchemes:
    bearerAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Enter your DevCycle SDK token