v1

latestOpenAPI 3.0.1Apache 2.02026-07-1310566642.9 KB
Feature Flags

Submit Feature Flag data

Update / insert Feature Flag data.

Feature Flags are identified by their ID, and existing Feature Flag data for the same ID will be replaced if it exists and the updateSequenceId of existing data is less than the incoming data.

Submissions are performed asynchronously. Submitted data will eventually be available in Jira; most updates are available within a short period of time, but may take some time during peak load and/or maintenance times. The getFeatureFlagById operation can be used to confirm that data has been stored successfully (if needed).

In the case of multiple Feature Flags being submitted in one request, each is validated individually prior to submission. Details of which Feature Flags failed submission (if any) are available in the response object.

post/rest/featureflags/0.1/bulk

Request body

propertiesobject

Properties assigned to Feature Flag data that can then be used for delete / query operations.

Examples might be an account or user ID that can then be used to clean up data if an account is removed from the Provider system.

Note that these properties will never be returned with Feature Flag data. They are not intended for use as metadata to associate with a Feature Flag. Internally they are stored as a hash so that personal information etc. is never stored within Jira.

Properties are supplied as key/value pairs, a maximum of 5 properties can be supplied, and keys must not contain ':' or start with '_'.

Example request

{
  "properties": {
    "accountId": "account-234",
    "projectId": "project-123"
  },
  "flags": [
    {
      "schemaVersion": "1.0",
      "id": "111-222-333",
      "key": "my-awesome-feature",
      "updateSequenceId": 1523494301448,
      "displayName": "Enable awesome feature",
      "issueKeys": [
        "ISSUE-123"
      ],
      "associations": [
        {
          "associationType": "issueIdOrKeys",
          "values": [
            "ABC-123",
            "ABC-456"
          ]
        }
      ],
      "summary": {
        "url": "https://example.com/project/feature-123/summary",
        "status": {
          "defaultValue": "Disabled",
          "rollout": {
            "percentage": 80
          }
        },
        "lastUpdated": "2018-01-20T23:27:25.000Z"
      },
      "details": [
        {
          "url": "https://example.com/project/feature-123/production",
          "lastUpdated": "2018-01-20T23:27:25.000Z",
          "environment": {
            "name": "prod-us-west",
            "type": "production"
          },
          "status": {
            "defaultValue": "Disabled",
            "rollout": {
              "percentage": 80
            }
          }
        }
      ]
    }
  ],
  "providerMetadata": {
    "product": "Atlassian Release Platform 2.1.0"
  }
}

Response

Submission accepted. Each submitted Feature Flag that is of a valid format will be eventually available in Jira.

Details of which Feature Flags were submitted and which failed submission (due to data format problems etc.) are available in the response object.

acceptedFeatureFlagsstring[]

The IDs of Feature Flags that have been accepted for submission.

A Feature Flag may be rejected if it was only associated with unknown issue keys.

Note that a Feature Flag that isn't updated due to it's updateSequenceId being out of order is not considered a failed submission.

failedFeatureFlagsobject

Details of Feature Flags that have not been accepted for submission, usually due to a problem with the request data.

The object (if present) will be keyed by Feature Flag ID and include any errors associated with that Feature Flag that have prevented it being submitted.

unknownIssueKeysstring[]

Issue keys that are not known on this Jira instance (if any).

These may be invalid keys (e.g. UTF-8 is sometimes incorrectly identified as a Jira issue key), or they may be for projects that no longer exist.

If a Feature Flag has been associated with issue keys other than those in this array it will still be stored against those valid keys. If a Feature Flag was only associated with issue keys deemed to be invalid it won't be persisted.

Example response

{
  "acceptedFeatureFlags": [
    "111-222-333",
    "444-555-666"
  ],
  "unknownIssueKeys": [
    "ISSUE-123"
  ],
  "unknownAssociations": [
    {
      "associationType": "issueIdOrKeys",
      "values": [
        "ABC-123",
        "ABC-456"
      ]
    }
  ]
}