Common challenges
Specific problem
Overview
Fetch and normalize configurations
Generate Signatures or Hashes
Compare and detect changes
Report or act
sdk
with a few functions out of the boxHere’s an overview of relevant SDK functionality (given by SDK)
createConfig(platform, environment, name)
: creates a config on the given platformretrieveConfig(platform, environment, name)
: gets a config from the given platformgetPlatforms()
getName()
getRolloutById()
getFeatures()
getFeatureById()
getFeatureByName()
getFeatureByValue)
addFeature()
addRollout()
changeFeatureName()
changeFeatureValue()
clearFeatures()
commitChanges()
disableConfig()
enableConfig()
removeRollout()
replaceRollout()
name: dummy
kind: mobile
platforms:
- name: android
features:
- name: feature1
value: 100
- name: feature2
value: 0
- name: feature3
value: 0
- name: feature4
value: 50
environment:
- name: production
enabled: true
rollout:
- weight: 33000
enabled: true
feature: feature1
- weight: 33000
enabled: true
feature: feature2
- weight: 34000
enabled: true
feature: feature3
- weight: 0
enabled: false
feature: feature4
- name: ios
features:
- name: feature1
value: 0
- name: feature2
value: 10
- name: feature3
value: 0
- name: feature4
value: 40
environment:
- name: production
enabled: true
rollout:
- weight: 33000
enabled: true
feature: feature1
- weight: 33000
enabled: true
feature: feature2
- weight: 34000
enabled: true
feature: feature3
- weight: 0
enabled: false
feature: feature4
{
"id": "1",
"name": "dummy_android",
"kind": "mobile",
"created_at": "2025-07-09T12:42:00.953753Z",
"updated_at": "2025-07-09T12:42:00.953769Z",
"platforms": [
{
"id": "1",
"name": "android",
"created_at": "2025-07-09T12:42:00.953681Z",
"updated_at": "2025-07-09T12:42:00.953698Z",
"environment": {
"name": "production",
"enabled": true
},
"features": [
{
"id": "1",
"created_at": "2025-07-09T12:42:00.953547Z",
"updated_at": "2025-07-09T12:42:00.953627Z",
"rollout": [
{
"id": "1",
"featureId": "1",
"created_at": "2025-07-09T12:42:00.953638Z",
"updated_at": "2025-07-09T12:42:00.953642Z",
"weight": 33000,
"enabled": true
}
},
{
"id": "2",
"featureId": "2",
"created_at": "2025-07-09T12:42:00.953638Z",
"updated_at": "2025-07-09T12:42:00.953642Z",
"weight": 33000,
"enabled": true
},
{
"id": "3",
"featureId": "3",
"created_at": "2025-07-09T12:42:00.953646Z",
"updated_at": "2025-07-09T12:42:00.953649Z",
"weight": 34000,
},
{
"id": "4",
"featureId": "4",
"created_at": "2025-07-09T12:42:00.953653Z",
"updated_at": "2025-07-09T12:42:00.953655Z",
"weight": 0,
"enabled": false
}
]
},
{
"id": "platform_ios",
"name": "ios",
"created_at": "2025-07-09T12:42:00.953730Z",
"updated_at": "2025-07-09T12:42:00.953733Z",
"environment": {
"name": "production",
"enabled": true
},
"features": [
{
"id": "feature_feature1",
"name": "feature1",
"value": 0,
"created_at": "2025-07-09T12:42:00.953703Z",
"updated_at": "2025-07-09T12:42:00.953706Z",
"rollout": {
"weight": 33000,
"enabled": true
}
},
{
"id": "feature_feature2",
"name": "feature2",
"value": 10,
"created_at": "2025-07-09T12:42:00.953710Z",
"updated_at": "2025-07-09T12:42:00.953713Z",
"rollout": {
"weight": 33000,
"enabled": true
}
},
{
"id": "feature_feature3",
"name": "feature3",
"value": 0,
"created_at": "2025-07-09T12:42:00.953717Z",
"updated_at": "2025-07-09T12:42:00.953720Z",
"rollout": {
"weight": 34000,
"enabled": true
}
},
{
"id": "feature_feature4",
"name": "feature4",
"value": 40,
"created_at": "2025-07-09T12:42:00.953723Z",
"updated_at": "2025-07-09T12:42:00.953726Z",
"rollout": {
"weight": 0,
"enabled": false
}
}
]
}
]
}
~ stay curious ~