Kinde · Arazzo Workflow

Kinde Roll Out Feature Flag to Organization

Version 1.0.0

Create an org-overridable feature flag and set its value for one organization.

1 workflow 1 source API 1 provider
View Spec View on GitHub AuthenticationAuthorizationCustomer IdentityIdentity ManagementOAuthOpenID ConnectSingle Sign-OnMulti-Factor AuthenticationRole-Based Access ControlFeature FlagsBillingB2BSaaSDeveloper PlatformArazzoWorkflows

Provider

kinde

Workflows

rollout-feature-flag
Create a feature flag and override its value for one organization.
Creates a feature flag that allows org-level overrides, sets the override value for a target organization, then lists that organization's flags to verify the rollout.
3 steps inputs: defaultValue, description, key, name, orgCode, overrideValue, type outputs: featureFlagKey, featureFlags
1
createFeatureFlag
CreateFeatureFlag
Create the feature flag, allowing it to be overridden at the organization level so it can be rolled out per tenant.
2
setOrganizationOverride
UpdateOrganizationFeatureFlagOverride
Set the organization-level override value for the new flag, rolling it out to the target organization.
3
verifyOrganizationFlags
GetOrganizationFeatureFlags
Read back the organization's feature flags to confirm the override is in effect.

Source API Descriptions

Arazzo Workflow Specification

kinde-rollout-feature-flag-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Kinde Roll Out Feature Flag to Organization
  summary: Create an org-overridable feature flag and set its value for one organization.
  description: >-
    Defines a new feature flag at the environment level and immediately rolls it
    out to a single organization by setting an override value. The workflow
    creates the flag (configured to allow organization-level overrides), applies
    the override for the target organization, and reads back that
    organization's feature flags to confirm the override is present. Every step
    inlines its request so the flow can be read and executed without opening the
    underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: kindeManagementApi
  url: ../openapi/kinde-management-api-openapi.yml
  type: openapi
workflows:
- workflowId: rollout-feature-flag
  summary: Create a feature flag and override its value for one organization.
  description: >-
    Creates a feature flag that allows org-level overrides, sets the override
    value for a target organization, then lists that organization's flags to
    verify the rollout.
  inputs:
    type: object
    required:
    - name
    - key
    - type
    - defaultValue
    - orgCode
    - overrideValue
    properties:
      name:
        type: string
        description: The display name of the feature flag.
      description:
        type: string
        description: Description of the flag's purpose.
      key:
        type: string
        description: The flag identifier to use in code.
      type:
        type: string
        description: The flag variable type - one of str, int, bool.
      defaultValue:
        type: string
        description: Default value used by environments and organizations.
      orgCode:
        type: string
        description: The organization code to roll the flag out to.
      overrideValue:
        type: string
        description: The override value to set for the organization.
  steps:
  - stepId: createFeatureFlag
    description: >-
      Create the feature flag, allowing it to be overridden at the organization
      level so it can be rolled out per tenant.
    operationId: CreateFeatureFlag
    requestBody:
      contentType: application/json
      payload:
        name: $inputs.name
        description: $inputs.description
        key: $inputs.key
        type: $inputs.type
        allow_override_level: org
        default_value: $inputs.defaultValue
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      createCode: $response.body#/code
  - stepId: setOrganizationOverride
    description: >-
      Set the organization-level override value for the new flag, rolling it out
      to the target organization.
    operationId: UpdateOrganizationFeatureFlagOverride
    parameters:
    - name: org_code
      in: path
      value: $inputs.orgCode
    - name: feature_flag_key
      in: path
      value: $inputs.key
    - name: value
      in: query
      value: $inputs.overrideValue
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      overrideCode: $response.body#/code
  - stepId: verifyOrganizationFlags
    description: >-
      Read back the organization's feature flags to confirm the override is in
      effect.
    operationId: GetOrganizationFeatureFlags
    parameters:
    - name: org_code
      in: path
      value: $inputs.orgCode
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      featureFlags: $response.body#/feature_flags
  outputs:
    featureFlagKey: $inputs.key
    featureFlags: $steps.verifyOrganizationFlags.outputs.featureFlags