flagsmith
flagsmith copied to clipboard
Implement a bulk Identity/Trait upload endpoint
Use the async processor to queue these up and process them async.
Suggest a limit of 100 identities per request.
Implement in SDKs:
- [ ] python
- [ ] node
- [ ] ruby
- [ ] rust
- [x] go
- [ ] java
- [ ] .NET
- [ ] elixir
Add docs
- [ ] docs
To test and deploy!
This has now been deployed to our Edge API. An example cURL request is here:
curl --location --request POST 'https://edge.api.flagsmith.com/api/v1/bulk-identities' \
--header 'Content-Type: application/json' \
-- header 'X-Environment-Key: <your key>' \
--data-raw '{
"data": [
{"identifier": "identity_1", "traits": [{"trait_key": "foo", "trait_value": "bar"}]},
{"identifier": "identity_2", "traits": [{"trait_key": "foo", "trait_value": "bar"}]}
]
}'
We now need to work on implementing this across our server side SDKs. I've added a checklist to the description of this issue.
As per a request from a customer, we should add the option to merge existing traits to this by adding a separate PUT endpoint at the same URI (with the same request body)