# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Flagsmith Identities API version: 1.0.0 extends: openapi/flagsmith-identities-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 47 - target: $.paths['/environments/{environment_api_key}/identities/'].get update: x-apievangelist-phrasing: intent: List identities in an environment effect: read questions: - Which users have identities in this environment, via the endpoint without the /api/v1 prefix? - Where can I page through every identity an environment knows about using the plain environments path? instructions: - text: List all identities in environment {environment_api_key} using the non-v1 identities endpoint. slots: environment_api_key: path.environment_api_key - text: Page through the users tracked in {environment_api_key} from the plain /environments identities path. slots: environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/environments/{environment_api_key}/identities/{identity_id}/'].get update: x-apievangelist-phrasing: intent: Get an identity and its traits effect: read questions: - What traits does a given identity have, fetched from the non-v1 identity path? - Can I look up one identity by ID without using the /api/v1 prefix? instructions: - text: Get identity {identity_id} in environment {environment_api_key} from the non-v1 path, with its traits. slots: identity_id: path.identity_id environment_api_key: path.environment_api_key - text: Show the identifier and traits for identity {identity_id} under /environments/{environment_api_key}. slots: identity_id: path.identity_id environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/environments/{environment_api_key}/identities/{identity_id}/'].delete update: x-apievangelist-phrasing: intent: Permanently delete an identity effect: destructive questions: - Does deleting an identity also wipe its traits and flag overrides? - Is removing a user identity through the non-v1 path reversible? instructions: - text: Permanently delete identity {identity_id} and its traits from {environment_api_key} via the non-v1 path. slots: identity_id: path.identity_id environment_api_key: path.environment_api_key - text: Erase user identity {identity_id} and all its overrides under /environments/{environment_api_key}. slots: identity_id: path.identity_id environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/'].get update: x-apievangelist-phrasing: intent: List edge identities in an environment effect: read questions: - Which edge identities exist in an environment? - How does paging work for edge identities, given there are no page numbers? instructions: - text: List the edge identities in environment {environment_api_key}. slots: environment_api_key: path.environment_api_key - text: Get the next {page_size} edge identities in {environment_api_key} after key {last_evaluated_key}. slots: page_size: query.page_size environment_api_key: path.environment_api_key last_evaluated_key: query.last_evaluated_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/'].post update: x-apievangelist-phrasing: intent: Create an edge identity effect: write questions: - Can I create an edge identity with a friendly dashboard alias? - What does it take to register a new user as an edge identity? instructions: - text: Create edge identity {identifier} in environment {environment_api_key}. slots: identifier: requestBody.identifier environment_api_key: path.environment_api_key - text: Add edge identity {identifier} to {environment_api_key} with dashboard alias {dashboard_alias}. slots: identifier: requestBody.identifier environment_api_key: path.environment_api_key dashboard_alias: requestBody.dashboard_alias method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{edge_identity_identity_uuid}/edge-featurestates/'].get update: x-apievangelist-phrasing: intent: List an edge identity's flag overrides effect: read questions: - Which flags have been overridden for a specific edge identity? - Can I check whether an edge identity overrides one particular feature? instructions: - text: List the flag overrides for edge identity {edge_identity_identity_uuid} in {environment_api_key}. slots: edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key - text: Show whether edge identity {edge_identity_identity_uuid} in {environment_api_key} overrides feature {feature}. slots: edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key feature: query.feature method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{edge_identity_identity_uuid}/edge-featurestates/'].post update: x-apievangelist-phrasing: intent: Override a flag for an edge identity effect: write questions: - How do I give one edge identity its own value for a flag? - Can I force a feature on for a single edge user? instructions: - text: Override feature {feature} for edge identity {edge_identity_identity_uuid} in {environment_api_key} with value {feature_state_value}. slots: feature: requestBody.feature edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key feature_state_value: requestBody.feature_state_value - text: Turn feature {feature} to enabled {enabled} just for edge identity {edge_identity_identity_uuid} in {environment_api_key}. slots: feature: requestBody.feature enabled: requestBody.enabled edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{edge_identity_identity_uuid}/edge-featurestates/{featurestate_uuid}/'].get update: x-apievangelist-phrasing: intent: Get one edge identity flag override effect: read questions: - What value does a specific edge identity override currently hold? - Is a given edge feature state override enabled or disabled? instructions: - text: Show edge override {featurestate_uuid} for edge identity {edge_identity_identity_uuid} in {environment_api_key}. slots: featurestate_uuid: path.featurestate_uuid edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key - text: Get the value of edge feature state {featurestate_uuid} on identity {edge_identity_identity_uuid}, environment {environment_api_key}. slots: featurestate_uuid: path.featurestate_uuid edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{edge_identity_identity_uuid}/edge-featurestates/{featurestate_uuid}/'].put update: x-apievangelist-phrasing: intent: Change an edge identity's flag override effect: write questions: - Can I change the value of an override I already set for an edge identity? - What's the way to switch off an existing edge identity override? instructions: - text: Set existing edge override {featurestate_uuid} on {edge_identity_identity_uuid} in {environment_api_key} to {feature_state_value} for feature {feature}. slots: featurestate_uuid: path.featurestate_uuid edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key feature_state_value: requestBody.feature_state_value feature: requestBody.feature - text: 'Disable edge override {featurestate_uuid} (feature {feature}) for identity {edge_identity_identity_uuid} in {environment_api_key}: enabled {enabled}.' slots: featurestate_uuid: path.featurestate_uuid feature: requestBody.feature edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key enabled: requestBody.enabled method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{edge_identity_identity_uuid}/edge-featurestates/{featurestate_uuid}/'].delete update: x-apievangelist-phrasing: intent: Remove an edge identity's flag override effect: destructive questions: - How do I clear an override so an edge identity gets the default flag value again? - Can I delete one edge feature state override without touching the identity? instructions: - text: Delete edge override {featurestate_uuid} from edge identity {edge_identity_identity_uuid} in {environment_api_key}. slots: featurestate_uuid: path.featurestate_uuid edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key - text: Reset edge identity {edge_identity_identity_uuid} in {environment_api_key} to the default by removing override {featurestate_uuid}. slots: edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key featurestate_uuid: path.featurestate_uuid method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{edge_identity_identity_uuid}/edge-featurestates/all/'].get update: x-apievangelist-phrasing: intent: Get every flag state for an edge identity effect: read questions: - What does every flag evaluate to for one edge identity, overrides and defaults together? - Can I see the complete flag picture for a single edge user? instructions: - text: Show all feature states, including defaults, for edge identity {edge_identity_identity_uuid} in {environment_api_key}. slots: edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key - text: Give me the full flag set that edge identity {edge_identity_identity_uuid} gets in {environment_api_key}. slots: edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{edge_identity_identity_uuid}/edge-featurestates/clone-from-given-identity/'].post update: x-apievangelist-phrasing: intent: Copy flag overrides between edge identities effect: write questions: - Can I copy one edge identity's flag overrides onto another edge identity? - Is there a quick way to make a test edge user match an existing one's flags? instructions: - text: Clone the flag overrides from edge identity {source_identity_uuid} onto {edge_identity_identity_uuid} in {environment_api_key}. slots: source_identity_uuid: requestBody.source_identity_uuid edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key - text: Make edge identity {edge_identity_identity_uuid} in {environment_api_key} copy the feature states of edge identity {source_identity_uuid}. slots: edge_identity_identity_uuid: path.edge_identity_identity_uuid environment_api_key: path.environment_api_key source_identity_uuid: requestBody.source_identity_uuid method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{identity_uuid}/'].get update: x-apievangelist-phrasing: intent: Get an edge identity effect: read questions: - What identifier and dashboard alias does an edge identity have? - Can I look up a single edge identity by its UUID? instructions: - text: Get edge identity {identity_uuid} in environment {environment_api_key}. slots: identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key - text: Show the identifier and alias of edge identity {identity_uuid} in {environment_api_key}. slots: identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{identity_uuid}/'].put update: x-apievangelist-phrasing: intent: Replace an edge identity's details effect: write questions: - Can I fully replace an edge identity's identifier and alias in one request? - Which fields must I resend when replacing an edge identity? instructions: - text: Replace edge identity {identity_uuid} in {environment_api_key} with identifier {identifier}. slots: identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key identifier: requestBody.identifier - text: 'Overwrite edge identity {identity_uuid} in {environment_api_key}: identifier {identifier}, alias {dashboard_alias}.' slots: identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key identifier: requestBody.identifier dashboard_alias: requestBody.dashboard_alias method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{identity_uuid}/'].delete update: x-apievangelist-phrasing: intent: Delete an edge identity effect: destructive questions: - How do I remove an edge identity from an environment? - Will deleting an edge identity remove the user from edge storage entirely? instructions: - text: Delete edge identity {identity_uuid} from environment {environment_api_key}. slots: identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key - text: Remove edge user {identity_uuid} from {environment_api_key}. slots: identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{identity_uuid}/'].patch update: x-apievangelist-phrasing: intent: Change only some fields of an edge identity effect: write questions: - Can I change just the dashboard alias of an edge identity? - Is a partial edit of an edge identity possible without resending the identifier? instructions: - text: Set only the dashboard alias of edge identity {identity_uuid} in {environment_api_key} to {dashboard_alias}. slots: identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key dashboard_alias: requestBody.dashboard_alias - text: Patch edge identity {identity_uuid} in {environment_api_key} so its identifier becomes {identifier}. slots: identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key identifier: requestBody.identifier method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{identity_uuid}/list-traits/'].get update: x-apievangelist-phrasing: intent: List an edge identity's traits effect: read questions: - What traits are stored for a given edge identity? - Can I page through a large set of traits on one edge user? instructions: - text: List the traits of edge identity {identity_uuid} in {environment_api_key}. slots: identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key - text: Show {page_size} traits of edge identity {identity_uuid} in {environment_api_key} after key {last_evaluated_key}. slots: page_size: query.page_size identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key last_evaluated_key: query.last_evaluated_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/edge-identities/{identity_uuid}/update-traits/'].put update: x-apievangelist-phrasing: intent: Set a trait on an edge identity effect: write questions: - How do I set a trait value on an edge identity? - Can I change one trait of an edge user from the admin API? instructions: - text: Set trait {trait_key} to {trait_value} on edge identity {identity_uuid} in {environment_api_key}. slots: trait_key: requestBody.trait_key trait_value: requestBody.trait_value identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key - text: Update edge identity {identity_uuid} in {environment_api_key} so its {trait_key} trait reads {trait_value}. slots: identity_uuid: path.identity_uuid environment_api_key: path.environment_api_key trait_key: requestBody.trait_key trait_value: requestBody.trait_value method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/'].get update: x-apievangelist-phrasing: intent: List identities via the v1 admin API effect: read questions: - Can I set a page size when listing identities through the /api/v1 admin endpoint? - What identities does the v1 admin API return for an environment? instructions: - text: List identities in {environment_api_key} through the v1 admin API. slots: environment_api_key: path.environment_api_key - text: Show page {page} of v1 identities in {environment_api_key}, {page_size} per page. slots: page: query.page environment_api_key: path.environment_api_key page_size: query.page_size method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/'].post update: x-apievangelist-phrasing: intent: Create an identity effect: write questions: - How do I create an identity for a user without evaluating flags? - Can I register a new identity in a non-edge environment from the admin API? instructions: - text: Create identity {identifier} in environment {environment_api_key}. slots: identifier: requestBody.identifier environment_api_key: path.environment_api_key - text: Register user {identifier} as a new identity in {environment_api_key} via the v1 admin API. slots: identifier: requestBody.identifier environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/featurestates/'].get update: x-apievangelist-phrasing: intent: List an identity's flag overrides effect: read questions: - Which flags are overridden for a particular identity? - Can I filter an identity's overrides by feature name? instructions: - text: Show every per-user flag override stored on standard (non-edge) identity {identity_pk} in {environment_api_key}. slots: identity_pk: path.identity_pk environment_api_key: path.environment_api_key - text: Show identity {identity_pk}'s override for feature named {feature_name} in {environment_api_key}. slots: identity_pk: path.identity_pk feature_name: query.feature_name environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/featurestates/'].post update: x-apievangelist-phrasing: intent: Override a flag for an identity (deprecated) effect: write questions: - Is the nested identity feature state create endpoint deprecated? - What does the older way of adding an identity override require? instructions: - text: Using the deprecated nested endpoint, override feature {feature} for identity {identity_pk} in {environment_api_key}. slots: feature: requestBody.feature identity_pk: path.identity_pk environment_api_key: path.environment_api_key - text: Create a legacy identity override on {identity_pk} in {environment_api_key} setting feature {feature} to {feature_state_value}. slots: identity_pk: path.identity_pk environment_api_key: path.environment_api_key feature: requestBody.feature feature_state_value: requestBody.feature_state_value method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/featurestates/{id}/'].get update: x-apievangelist-phrasing: intent: Get one flag override for an identity effect: read questions: - What value does a single identity override hold right now? - Can I fetch one identity feature state by its ID? instructions: - text: Show override {id} for identity {identity_pk} in {environment_api_key}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key - text: Get feature state {id} belonging to identity {identity_pk} in environment {environment_api_key}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/featurestates/{id}/'].put update: x-apievangelist-phrasing: intent: Update an identity's flag override value effect: write questions: - How do I change the value of an existing identity override? - Can I update an identity feature state's value without resending everything? instructions: - text: Set identity override {id} on {identity_pk} in {environment_api_key} to {feature_state_value} for feature {feature}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key feature_state_value: requestBody.feature_state_value feature: requestBody.feature - text: Replace the value of feature {feature} override {id} for identity {identity_pk} ({environment_api_key}) with {feature_state_value}. slots: feature: requestBody.feature id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key feature_state_value: requestBody.feature_state_value method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/featurestates/{id}/'].delete update: x-apievangelist-phrasing: intent: Remove an identity's flag override effect: destructive questions: - How do I clear an override so an identity falls back to the environment default? - Can I delete one identity feature state and keep the rest? instructions: - text: Delete override {id} from identity {identity_pk} in {environment_api_key}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key - text: Reset identity {identity_pk} in {environment_api_key} to the default flag by removing feature state {id}. slots: identity_pk: path.identity_pk environment_api_key: path.environment_api_key id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/featurestates/{id}/'].patch update: x-apievangelist-phrasing: intent: Toggle an identity's flag override on or off effect: write questions: - Can I just flip an identity override on or off without changing its value? - What's the lightest way to toggle one identity's flag? instructions: - text: Toggle identity override {id} on {identity_pk} in {environment_api_key} to enabled {enabled}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key enabled: requestBody.enabled - text: Switch off feature {feature} for identity {identity_pk} by patching override {id} in {environment_api_key}. slots: feature: requestBody.feature identity_pk: path.identity_pk id: path.id environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/featurestates/all/'].get update: x-apievangelist-phrasing: intent: Get every flag state for an identity effect: read questions: - What does every flag resolve to for one identity, including defaults? - Can I see an identity's complete flag set in the admin API? instructions: - text: Show all feature states, overrides and defaults, for identity {identity_pk} in {environment_api_key}. slots: identity_pk: path.identity_pk environment_api_key: path.environment_api_key - text: Give me the full flag picture for identity {identity_pk} in environment {environment_api_key}. slots: identity_pk: path.identity_pk environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/featurestates/clone-from-given-identity/'].post update: x-apievangelist-phrasing: intent: Copy flag overrides from another identity effect: write questions: - Is there a way to duplicate a regular identity's overrides into another regular (non-edge) identity by numeric ID? - Is there a quick way to make a QA user mirror a real user's flags? instructions: - text: Clone flag overrides from identity {source_identity_id} onto identity {identity_pk} in {environment_api_key}. slots: source_identity_id: requestBody.source_identity_id identity_pk: path.identity_pk environment_api_key: path.environment_api_key - text: Mirror numeric identity {source_identity_id}'s feature states into identity {identity_pk} for environment {environment_api_key}. slots: identity_pk: path.identity_pk environment_api_key: path.environment_api_key source_identity_id: requestBody.source_identity_id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/traits/'].get update: x-apievangelist-phrasing: intent: List an identity's traits effect: read questions: - What traits are recorded for a particular identity? - Which trait keys does one user carry in the admin API? instructions: - text: Show the trait keys and values recorded on standard identity {identity_pk} for {environment_api_key}. slots: identity_pk: path.identity_pk environment_api_key: path.environment_api_key - text: Show page {page} of traits for identity {identity_pk} in {environment_api_key}. slots: page: query.page identity_pk: path.identity_pk environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/traits/'].post update: x-apievangelist-phrasing: intent: Add a trait to an identity effect: write questions: - How can I add a typed trait, like an integer, to one identity? - Can I add a new trait to an identity nested under its environment? instructions: - text: Add trait {trait_key} with string value {string_value} to identity {identity_pk} in {environment_api_key}. slots: trait_key: requestBody.trait_key string_value: requestBody.string_value identity_pk: path.identity_pk environment_api_key: path.environment_api_key - text: Give identity {identity_pk} in {environment_api_key} an integer trait {trait_key} of {integer_value}. slots: identity_pk: path.identity_pk environment_api_key: path.environment_api_key trait_key: requestBody.trait_key integer_value: requestBody.integer_value method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/traits/{id}/'].get update: x-apievangelist-phrasing: intent: Get one trait of an identity effect: read questions: - What is the current value and type of a single trait on an identity? - Can I fetch one identity trait by its ID? instructions: - text: Show trait {id} of identity {identity_pk} in {environment_api_key}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key - text: Get the value type of trait {id} on identity {identity_pk}, environment {environment_api_key}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/traits/{id}/'].put update: x-apievangelist-phrasing: intent: Replace an identity trait effect: write questions: - Can I fully replace an identity trait, including its key and type? - What must I resend to overwrite an existing identity trait? instructions: - text: Replace trait {id} on identity {identity_pk} in {environment_api_key} with key {trait_key} and string value {string_value}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key trait_key: requestBody.trait_key string_value: requestBody.string_value - text: Overwrite trait {id} of identity {identity_pk} ({environment_api_key}) as {trait_key} of type {value_type}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key trait_key: requestBody.trait_key value_type: requestBody.value_type method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/traits/{id}/'].delete update: x-apievangelist-phrasing: intent: Delete an identity trait effect: destructive questions: - How do I remove a trait from an identity? - Can I delete every trait with the same key across identities at once? instructions: - text: Delete trait {id} from identity {identity_pk} in {environment_api_key}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key - text: 'Remove trait {id} on identity {identity_pk} in {environment_api_key} and all matching traits: {deleteAllMatchingTraits}.' slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key deleteAllMatchingTraits: query.deleteAllMatchingTraits method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{identity_pk}/traits/{id}/'].patch update: x-apievangelist-phrasing: intent: Change just a trait's value effect: write questions: - Can I change only the value of an existing identity trait? - Is it possible to patch a trait without resending its key? instructions: - text: Patch trait {id} on identity {identity_pk} in {environment_api_key} to string value {string_value}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key string_value: requestBody.string_value - text: Bump only the boolean value of trait {id} for identity {identity_pk} ({environment_api_key}) to {boolean_value}. slots: id: path.id identity_pk: path.identity_pk environment_api_key: path.environment_api_key boolean_value: requestBody.boolean_value method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{id}/'].get update: x-apievangelist-phrasing: intent: Get an identity via the v1 admin API effect: read questions: - Can I fetch one identity by ID through the /api/v1 admin path? - What does the v1 admin API return for a single identity? instructions: - text: Get identity {id} in {environment_api_key} through the v1 admin API. slots: id: path.id environment_api_key: path.environment_api_key - text: Fetch v1 identity record {id} from environment {environment_api_key}. slots: id: path.id environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{id}/'].put update: x-apievangelist-phrasing: intent: Replace an identity's identifier effect: write questions: - Can I rename an identity's identifier by replacing the record? - What fields does a full identity replacement need? instructions: - text: Replace identity {id} in {environment_api_key} with identifier {identifier}. slots: id: path.id environment_api_key: path.environment_api_key identifier: requestBody.identifier - text: Overwrite the whole identity record {id} in {environment_api_key}, identifier {identifier}. slots: id: path.id environment_api_key: path.environment_api_key identifier: requestBody.identifier method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{id}/'].delete update: x-apievangelist-phrasing: intent: Delete an identity via the v1 admin API effect: destructive questions: - How do I delete an identity through the /api/v1 admin endpoint? - Is there a v1 admin route for removing a user identity? instructions: - text: Delete identity {id} from {environment_api_key} using the v1 admin API. slots: id: path.id environment_api_key: path.environment_api_key - text: Remove v1 identity record {id} in environment {environment_api_key}. slots: id: path.id environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/identities/{id}/'].patch update: x-apievangelist-phrasing: intent: Patch an identity's fields effect: write questions: - Can I change only an identity's identifier with a partial update? - Is patching an identity possible without resending the environment? instructions: - text: Patch identity {id} in {environment_api_key} so its identifier is {identifier}. slots: id: path.id environment_api_key: path.environment_api_key identifier: requestBody.identifier - text: Partially update identity {id} in {environment_api_key}, moving it to environment {environment}. slots: id: path.id environment_api_key: path.environment_api_key environment: requestBody.environment method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/environments/{environment_api_key}/edge-identities-featurestates'].put update: x-apievangelist-phrasing: intent: Set an edge override by identity identifier effect: write questions: - Can I override a flag for an edge user by their identifier instead of UUID? - What's the way to upsert an edge identity override environment-wide? instructions: - text: Override feature {feature} for edge identifier {identifier} in {environment_api_key} with value {feature_state_value}. slots: feature: requestBody.feature identifier: requestBody.identifier environment_api_key: path.environment_api_key feature_state_value: requestBody.feature_state_value - text: Enable ({enabled}) feature {feature} for the edge user identified as {identifier} in {environment_api_key}. slots: enabled: requestBody.enabled feature: requestBody.feature identifier: requestBody.identifier environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/environments/{environment_api_key}/edge-identities-featurestates'].delete update: x-apievangelist-phrasing: intent: Remove edge identity overrides for an environment effect: destructive questions: - Can I clear edge identity feature state overrides at the environment level? - Which endpoint removes edge identity overrides without an identity UUID in the path? instructions: - text: Delete the edge identity feature state overrides for environment {environment_api_key}. slots: environment_api_key: path.environment_api_key - text: Clear edge-identity flag overrides at environment level for {environment_api_key}. slots: environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/traits/'].post update: x-apievangelist-phrasing: intent: Set a trait through the v1 traits endpoint effect: write questions: - Can I set a single trait on an identity through /api/v1/traits? - Which v1 endpoint writes one trait key and value for a user? instructions: - text: Through the v1 traits endpoint, set {trait_key} to {trait_value} for identity {identity}. slots: trait_key: requestBody.trait_key trait_value: requestBody.trait_value identity: requestBody.identity - text: Post a v1 trait {trait_key}={trait_value} for user {identity}. slots: trait_key: requestBody.trait_key trait_value: requestBody.trait_value identity: requestBody.identity method: generated generated: '2026-09-26' - target: $.paths['/api/v1/traits/bulk/'].put update: x-apievangelist-phrasing: intent: Bulk update traits via the v1 endpoint effect: write questions: - Is there a v1 endpoint for updating many traits in one request? - Can I push a batch of traits through /api/v1/traits/bulk? instructions: - text: Send this batch of trait updates to the v1 bulk traits endpoint. - text: Bulk update traits for several identities with the /api/v1 bulk route. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/traits/increment-value/'].post update: x-apievangelist-phrasing: intent: Increment a numeric trait effect: write questions: - Can I increase a counter trait without reading it first? - How do I bump a user's numeric trait by a set amount? instructions: - text: Increment trait {trait_key} by {increment_by} for identity {identifier}. slots: trait_key: requestBody.trait_key increment_by: requestBody.increment_by identifier: requestBody.identifier - text: Add {increment_by} to the {trait_key} counter on user {identifier}. slots: increment_by: requestBody.increment_by trait_key: requestBody.trait_key identifier: requestBody.identifier method: generated generated: '2026-09-26' - target: $.paths['/identities/'].get update: x-apievangelist-phrasing: intent: Get evaluated flags and traits for a user effect: read questions: - What flags does a specific user actually receive after segment rules apply? - Can I evaluate flags for a transient identity that isn't saved? instructions: - text: Get the evaluated flags and traits for user {identifier}. slots: identifier: query.identifier - text: 'Evaluate flags for {identifier} as a transient identity: {transient}.' slots: identifier: query.identifier transient: query.transient method: generated generated: '2026-09-26' - target: $.paths['/identities/'].post update: x-apievangelist-phrasing: intent: Identify a user with traits and get flags effect: write questions: - How do I send a user's traits and get their flags back in one call? - Are traits I send when identifying a user saved, or can they be transient? instructions: - text: Identify user {identifier} with traits {traits} and return their flags. slots: identifier: requestBody.identifier traits: requestBody.traits - text: Identify {identifier} without persisting anything (transient {transient}) and give me their flags. slots: identifier: requestBody.identifier transient: requestBody.transient method: generated generated: '2026-09-26' - target: $.paths['/traits/'].post update: x-apievangelist-phrasing: intent: Set a trait for a user, creating them if needed effect: write questions: - Will setting a trait create the identity if it doesn't exist yet? - How can I store a trait for segmenting a user from the client SDK endpoint? instructions: - text: Set trait {trait_key} to {trait_value} for identity {identity}, creating the identity if missing. slots: trait_key: requestBody.trait_key trait_value: requestBody.trait_value identity: requestBody.identity - text: Record {trait_key} as {trait_value} on user {identity} through the SDK traits endpoint. slots: trait_key: requestBody.trait_key trait_value: requestBody.trait_value identity: requestBody.identity method: generated generated: '2026-09-26' - target: $.paths['/traits/bulk/'].put update: x-apievangelist-phrasing: intent: Set many traits for an identity at once effect: write questions: - Can I update several traits for a user in one SDK request? - Does sending a null trait value in bulk delete that trait? instructions: - text: Set these traits for the user in one bulk SDK call. - text: Bulk set a user's traits and delete any I pass as null. method: generated generated: '2026-09-26'