Veganify API Documentation
Status: Service operationalIntroduction
Warning! Veganify API v0 has recently been rewritten from PHP to Node.js! Therefore, some changes, including URIs, are breaking!
Tired of writing code? Use the API Wrapper for React .
The API combines parts of the OpenFoodFacts Database, the OpenBeautyFacts Database and the Open EAN/GTIN Database. It gives out the following information about a product through the products EAN/UPC/GTIN code:
- Name of the product
- Is it vegan?
- Is it vegetarian?
- Does it contain palmoil?
- The nutriscore of the product
- If it has been tested on animals
- The Veganify Grade
- Where this data comes from
There is also a Veganify Ingredients API, documented here and a API to get information from PETA, documented here.
How to use
JSON End-Point
The APIs base path is https://api.veganify.app/v0/product/ and gives out a JSON response.
You can find the monitoring status page here.
Authenticate
There is no need for an authentification at this time. The API is publicly available.
To avoid rate-limiting, you can kindly ask us for an API token via e-mail. We will then give you a token, which you can use to authenticate yourself. This will increase your rate-limiting.
Parameters
The following parameters are available as of now:
-
The URL-parameter productcode can be passed directly through the url of the request as in:
It is only possible to POST to this endpoint.
Responses
We use standardized HTTP status codes as responses. Depending on which language you want to use to implement the API in, you may have to disable error-handling or ignore errors.
Positive response
A successful request will throw a result like this:
Please note: n/a is not an error but just means that we don't have any data about the field. Also, sometimes fields have to be n/a in order to make sense, e.g. if you're checking a beauty-product and looking for the nutriscore.
Error responses
The following error responses can be expected:
- 400 - Missing required parameter / Wrong required parameter, please make sure you sent at least one of the parameters mentioned in Parameters and make sure it is a barcode:
- 404 - We couldn't find that product in the databases:
- 429 - Your rate limit has exceeded. Please try again later:
- 504 - The database server took to long to respond, please try again later: