How to get started with a REST API client on any platform
Use the REST API to submit feedback programatically. The API supports both json
and multipart/form-data
requests.
In each case, the payload of the request is a value object including the required key
and content
fields. Replace key
with your app key and include the user feedback as plain text in the content
field.
Additional fields of the value object:
attributes
- An object of key value metadata to be attached to the feedback. See the attributes section below for more information.email
- Including an email address enables replies from the Feedbackbulb stream via email:
Examples
Submit feedback
curl -X "POST" "https://feedbackbulb.com/api/values" \
-H 'Content-Type: application/json; charset=utf-8' \
-d $'{
"value": {
"key": "XXX-XXX-XX",
"content": "It\'s so easy to use!",
"attributes": {
"os": "iOS",
"version": "16"
}
}
}'
Submit feedback with email:
curl -X "POST" "https://feedbackbulb.com/api/values" \
-H 'Content-Type: application/json; charset=utf-8' \
-d $'{
"value": {
"key": "XXX-XXX-XX",
"content": "All cats are saying that they need more food in their bowls. Eating only 6 times a day is not an option.",
"email": "contact@feedbackbulb.com"
}
}'
Submit feedback with an attachment
To attach a file, use a multipart request with an additional key file
with an appropriate file name and content type:
curl -X "POST" "https://feedbackbulb.com/api/values" \
-H 'Content-Type: multipart/form-data; charset=utf-8; boundary=...' \
-F "value[key]=XXX-XXX-XX" \
-F "value[content]=It's good to get updates, but the changelog is missing!" \
-F "file=..." \
-F "value[email]=contact@feedbackbulb.com" \
-F "attributes[os]=iOS"
Custom Attributes
When submitting feedback (either directly via the REST API or using one of our SDKs), you can attach additional metadata to the feedback report. This can be useful for filtering and grouping feedback reports in the Feedbackbulb dashboard. For example, you can attach the app version, the operating system version, or the user's locale.
We strongly advise against storing personal information in the attributes. If you need to provide a reply address, we recommend using the value.email
field of the feedback report (see Examples above).
INFO
For best results, we recommendt that you prefix your attribute keys with a short identifier of your app or service, camelCased and not longer than 20-25 characters. For example, myapp:version
or myapp:attributeName
.
Reserved attributes
The following attributes have special meaning for Feedbackbulb. It is recommended to avoid using them in your own metadata:
source
- the source channel of the feedback. This is set automatically by the Feedbackbulb SDKs.notificationId
- identifier of the notification which triggered the feedback. This is set automatically by the Feedbackbulb SDKs.postId
- identifier of the post which triggered the feedback. This is set automatically by the Feedbackbulb SDKs.postURI
- URI of the post which triggered the feedback. This is set automatically by the Feedbackbulb SDKs.moment
- timestamp of the original activity which triggered the feedback. This information is usually received from 3rd party services and automatically attached by the Feedbackbulb SDKs.from
- the address of the sender of the feedback when available. This information is usually received from 3rd party services and automatically attached by the Feedbackbulb SDKs.fromURI
- the address of the sender of the feedback when available. This information is usually received from 3rd party services and automatically attached by the Feedbackbulb SDKs.visibility
- visibility of the activity which triggered the feedback. This information is usually received from 3rd party services and automatically attached by the Feedbackbulb SDKs.
Additional fields may be added in the future. We will update this list accordingly.