---
title: "GET /api/support/flags/"
method: GET
path: "/api/support/flags/"
tags: ["support"]
---

# GET /api/support/flags/

`GET /api/support/flags/`

## Request

- Base URL: `https://app.pixiebrix.com`
- URL: `https://app.pixiebrix.com/api/support/flags/`
- Auth: none declared

List waffle flags with their activation state and targeting breadth.

Written for flag-retirement audits: ``everyone`` plus ``everyone_since``
identify flags that have been GA long enough to retire, and the targeting
counts identify who would lose access if one were deleted. Counts rather
than rosters, so the response carries no customer PII.

## Query parameters

- `page` integer
- `page_size` integer
- `everyone` string
- `q` string

## Response `200`

- SupportFlag[]
  - `id` integer
  - `name` string: The human/computer readable name.
  - `note` string: Note where this Flag is used.
  - `everyone` boolean, nullable: Flip this flag on (Yes) or off (No) for everyone, overriding all other settings. Leave as Unknown to use normally.
  - `everyone_since` string, date-time, nullable: ISO-8601 timestamp of the Django Admin action that ``everyone_since_source`` names, or null when no such action could be established. Read the two fields together.
  - `everyone_since_source` 'admin_change' | 'admin_addition' | 'no_admin_entry' | 'external_write', nullable: Provenance of ``everyone_since``, and how far to trust it. "admin_change" carries the date of the admin edit that set the field; "admin_addition" carries a creation date instead, because creation logs no field values. Neither is proof, and both can only err early: a write outside the admin is invisible when it skips ``Flag.save()`` (``QuerySet.update()``, raw SQL) or when a later admin edit hides it, so read the date as the earliest the flag could have gone GA. "no_admin_entry" and "external_write" carry no date and mean unknown. Null when the flag is not on for everyone and the question does not apply.
  - `superusers` boolean: Flag always active for superusers?
  - `staff` boolean: Flag always active for staff?
  - `authenticated` boolean: Flag always active for authenticated users?
  - `created` string, date-time: Date when this Flag was created.
  - `modified` string, date-time: Date when this Flag was last modified.
  - `users_count` integer
  - `organizations_count` integer
  - `groups_count` integer
  - `organization_groups_count` integer
  - `django_admin_url` string: Path to the flag in Django Admin, where a human deletes it.

## Changes

- **2026-09-03** `e3e3d5886bcf`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/pixiebrix/apis/pixiebrix-api/changes/api/support/flags/get.md)

---

[API](https://skmtc.dev/pixiebrix/apis/pixiebrix-api.md) - [All operations](https://skmtc.dev/pixiebrix/apis/pixiebrix-api/llms.txt) - [OpenAPI document](https://skmtc.dev/pixiebrix/apis/pixiebrix-api/revisions/b5614ae64ccc?raw)
