# Creates a Feature Flag

Creates a Feature Flag in the Project

Endpoint: POST /cf/admin/features
Version: 1.0
Security: x-api-key

## Query parameters:

  - `accountIdentifier` (string, required)
    Account Identifier

  - `orgIdentifier` (string, required)
    Organization Identifier

## Request fields (application/json):

  - `archived` (boolean)

  - `defaultOffVariation` (string, required)

  - `defaultOnVariation` (string, required)

  - `description` (string)

  - `gitDetails` (object)
    The commit message to use as part of a gitsync operation

  - `gitDetails.commitMsg` (string, required)
    A description of the change or action
    Example: "Turning on flag test-flag for production"

  - `identifier` (string, required)

  - `kind` (string, required)
    Enum: "boolean", "int", "string", "json"

  - `name` (string, required)

  - `owner` (string)

  - `permanent` (boolean, required)

  - `prerequisites` (array)

  - `prerequisites.feature` (string, required)
    The feature identifier that is the prerequisite

  - `prerequisites.variations` (array, required)
    A list of variations that must be met

  - `project` (string, required)

  - `services` (array)

  - `services.identifier` (string, required)
    The identifier of the service

  - `services.name` (string, required)
    The name of the service

  - `tags` (array)

  - `tags.identifier` (string, required)
    The identifier of the tag
    Example: "feature-flag-tag-1"

  - `tags.name` (string, required)
    The name of the tag
    Example: "feature-flag-tag-1"

  - `variations` (array, required)

  - `variations.description` (string)
    A description of the variation

  - `variations.identifier` (string, required)
    The unique identifier for the variation
    Example: "off-variation"

  - `variations.name` (string)
    The user friendly name of the variation
    Example: "Off VAriation"

  - `variations.value` (string, required)
    The variation value to serve such as true or false for a boolean flag
    Example: "true"

## Response 201 fields (application/json):

  - `details` (object)
    Additional metadata about the request

  - `details.governanceMetadata` (object)
    Summary of governance checks including any warnings

  - `details.pipelineMetadata` (object)
    Info about the pipeline whether a pipeline was triggered

  - `details.pipelineMetadata.pipelineExecutionId` (string)
    The ID of the pipeline execution

  - `details.pipelineMetadata.pipelineTriggered` (boolean)
    Whether a pipeline was triggered

## Response 400 fields (application/json):

  - `code` (string, required)
    The http error code
    Example: 404

  - `details` (object)
    Additional details about the error

  - `message` (string, required)
    The reason the request failed
    Example: "Error retrieving projects, organization 'default_org' does not exist"


