Flagsmith / Flagsmith/flagsmith

Epic: V2 API

Open
#1,667 4 comments 0 reactions 3 assignees Claimed by @gagantrivedi View on GitHub
api edge-api
Dominant language
Python
Stars
6.6k
Forks
567
Avg merge
1d 13h
Merged PRs (30d)
121

Description

This is expected to be a long running ticket where we can list breaking changes that we want to include in a V2 API. As part of this work, we should plan the new API interface around the key journeys that customers need to use our REST API for to simplify admin integrations.

- Add consistent API interface across all Edge endpoints. These should all respond with a consistent schema that follows a well defined framework, e.g. https://jsonapi.org/.
- specifically, this will allow us to remove the 'updated at' value from the header of the `/flags/` endpoint and into the response body
- Look into fixing the typing issues. All dynamically typed fields should be removed and replaced with a combination of a string field and a provided data type.
- Replace all references to 'unicode' with 'string'
- Create endpoints to manage state of a feature for an environment, identity or segment without needing to make multiple API requests
- Prevent updates to FeatureState objects - we should only allow new versions to be created
- Remove endpoints reliant on influx data in favour of endpoints that return data from influx or postgres for analytics purposes
- Update authentication such that it includes context of the organisation for each request
- Remove integration configuration objects from environment-document endpoint
- Remove dynatrace configuration from the engine / edge api entirely
- Remove need for FeatureSegment
- Remove `"description"` field from environment list endpoint (see discussion [here](https://github.com/Flagsmith/flagsmith/pull/2947/files#r1388331387) for reference)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.