Your allergens plus the shared NutraSoft reference set. Shared rows are read-only.
idintegerStable identifier for this allergen.
codestringnullableShort code, unique within an account. Null on older rows.
descriptionstringnullableFree text. Null when never filled in.
is_globalbooleanTrue for a NutraSoft-supplied reference row shared by every account, which your account can read but not change.
is_major_allergenbooleanWhether this is a major allergen for labelling purposes.
namestringEnglish name.
name_frstringFrench name.
regulatory_referencestringnullableThe regulation this allergen is declared under, if recorded.
/allergenscatalog:readYour account's allergens plus the shared reference rows, marked is_global. Use search or the named filters, not both.
searchstringnullableFree-text match across name, code, description and regulatory reference.
namestringnullablePartial match on either name.
codestringnullablePartial match on the code.
descriptionstringnullablePartial match.
regulatory_referencestringnullablePartial match.
is_major_allergenbooleannullablesortstringnullableComma-separated field:direction pairs, e.g. id:desc. Sortable: code, id, is_major_allergen, name, name_fr. id is always added last, so paging is stable.
limitintegerRows to return. Maximum 200.
offsetintegerRows to skip. Maximum 10000: to read further, narrow the filters or page with updated_since.
data, with pagination.curl "https://public-api.nutrasoft.ca/v1/allergens?limit=50" \
-H "Authorization: Bearer $NUTRASOFT_API_KEY"{
"data": [
{
"id": 123,
"code": "SAMPLE-01",
"description": "string",
"is_global": false,
"is_major_allergen": false,
"name": "Sample name",
"name_fr": "string",
"regulatory_reference": "string"
}
],
"pagination": {
"limit": 50,
"offset": 0,
"total": 1,
"has_more": false
},
"order": "id:asc"
}/allergens/{allergen_id}catalog:readallergen_idintegerrequiredThe allergen's id.
data.curl "https://public-api.nutrasoft.ca/v1/allergens/123" \
-H "Authorization: Bearer $NUTRASOFT_API_KEY"{
"data": {
"id": 123,
"code": "SAMPLE-01",
"description": "string",
"is_global": false,
"is_major_allergen": false,
"name": "Sample name",
"name_fr": "string",
"regulatory_reference": "string"
}
}/allergenscatalog:writeName and code are unique within your account; a duplicate is a 409.
namestringrequiredname_frstringrequiredcodestringnullabledescriptionstringnullableis_major_allergenbooleanregulatory_referencestringnullabledata.curl -X POST "https://public-api.nutrasoft.ca/v1/allergens" \
-H "Authorization: Bearer $NUTRASOFT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sample name",
"name_fr": "string"
}'{
"data": {
"id": 123,
"code": "SAMPLE-01",
"description": "string",
"is_global": false,
"is_major_allergen": false,
"name": "Sample name",
"name_fr": "string",
"regulatory_reference": "string"
}
}/allergens/{allergen_id}catalog:writeOmitted fields are left unchanged. Shared rows are read-only (403).
allergen_idintegerrequiredThe allergen's id.
codestringnullabledescriptionstringnullableis_major_allergenbooleannullablenamestringnullablename_frstringnullableregulatory_referencestringnullabledata.curl -X PATCH "https://public-api.nutrasoft.ca/v1/allergens/123" \
-H "Authorization: Bearer $NUTRASOFT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"code": "SAMPLE-01"
}'{
"data": {
"id": 123,
"code": "SAMPLE-01",
"description": "string",
"is_global": false,
"is_major_allergen": false,
"name": "Sample name",
"name_fr": "string",
"regulatory_reference": "string"
}
}/allergens/{allergen_id}catalog:writeDeletes one of your allergens. Refused with 409 while a product declares it. Shared rows are read-only (403).
allergen_idintegerrequiredThe allergen's id.
data.curl -X DELETE "https://public-api.nutrasoft.ca/v1/allergens/123" \
-H "Authorization: Bearer $NUTRASOFT_API_KEY"{
"data": {
"id": 123,
"code": "SAMPLE-01",
"description": "string",
"is_global": false,
"is_major_allergen": false,
"name": "Sample name",
"name_fr": "string",
"regulatory_reference": "string"
}
}