{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "tool": {
    "slug": "fatsecret",
    "name": "fatsecret Platform API",
    "vendor": "fatsecret",
    "vendorUrl": "https://platform.fatsecret.com/platform-api",
    "kind": "http-api",
    "category": "cooking",
    "summary": "The fatsecret Platform API is a REST API over fatsecret's verified food and nutrition database, with food search, barcode lookup, recipes, image recognition and natural-language food logging, plus per-user food, exercise and weight diaries, under OAuth 2.0 and OAuth 1.0.",
    "url": "https://www.anchorterminal.com/tools/fatsecret",
    "markdownUrl": "https://www.anchorterminal.com/tools/fatsecret.md",
    "slimMarkdownUrl": "https://www.anchorterminal.com/tools/fatsecret.min.md",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/fatsecret.json",
    "dns": "fatsecret.grade.anchorterminal.com",
    "transports": [],
    "packages": [],
    "auth": "oauth",
    "authNotes": "OAuth 2.0 client credentials at https://oauth.fatsecret.com/connect/token with a Client ID and Client Secret from the developer dashboard after a browser registration; tokens last 86,400 seconds and carry scopes (`basic`, `premier`, `barcode`, `localization`, `nlp`, `image-recognition` and `feedback`), and token requests are allowed only from the IP addresses or CIDR ranges registered on the key. OAuth 1.0 with HMAC-SHA1 signatures is kept for signed and delegated (per-user profile) requests, including a 3-legged flow for fatsecret.com accounts.",
    "pricing": "freemium",
    "pricingNotes": "Basic is free on self sign-up with 5,000 calls a day, US data, English and attribution required. Premier Free (start-ups under US$1M revenue and raised, non-profits, students) needs verification and removes the daily cap. Premier is priced on request by market, with 62 regional datasets, 26 languages, white label and a month-by-month SLA; image recognition and NLP are add-ons billed in tiers of 25,000 inputs. No card for Basic or Premier.",
    "priceSummary": "Freemium",
    "where": "local",
    "x402": {
      "level": "no",
      "evidence": "No x402, MPP or L402 in the guides, editions page, authentication guides or terms (checked 2026-11-03). Premier is contracted through sales.",
      "endpoints": []
    },
    "toolCount": 0,
    "popularity": {
      "githubStars": 25,
      "npmWeekly": null,
      "pypiWeekly": null,
      "asOf": "2026-11-03"
    },
    "docsUrl": "https://platform.fatsecret.com/docs/guides",
    "capabilities": [
      "cooking.nutrition",
      "cooking.recipes",
      "cooking.food-recognition",
      "cooking.grocery"
    ],
    "tags": [
      "hosted",
      "freemium",
      "free-tier",
      "no-card",
      "oauth",
      "sales-led",
      "enterprise",
      "closed-source",
      "no-status-page"
    ],
    "graded": true,
    "anchor": {
      "graded": true,
      "score": 42,
      "grade": "E",
      "agentReady": false,
      "rank": 1193,
      "ranked": true,
      "rankOf": 1349,
      "categoryRank": 6,
      "methodology": "0.7",
      "run": "2026-10-01",
      "scores": {
        "ergonomics": 64,
        "maintenance": 13,
        "payments": 25,
        "reliability": 35,
        "schema": 52,
        "security": 51,
        "transparency": 34
      },
      "pending": [
        "performance",
        "tasks"
      ],
      "breakdown": [
        {
          "key": "reliability",
          "name": "Reliability",
          "weight": 16,
          "effectiveWeight": 20,
          "score": 35,
          "points": 7,
          "reason": "Read with the hosted lines. No status page was found on the platform site, the guides, the editions page or the about page (0), so there is no incident history to read (5). The limit is published with a number, 5,000 calls a day on Basic in the terms and on the editions page, and Premier is unlimited (15). Limits surface as error codes 11 and 12 in the body; no HTTP 429, Retry-After or backoff guidance was found, and diary writes have no idempotency key (5 of 15). Premier carries a month-by-month SLA with service credits, named on the editions page without figures, and every edition claims more than 99.9 per cent uptime (5 of 10). The API is generally available, with versioned methods (10). 0 + 5 + 15 + 5 + 5 + 10 = 35.",
          "checked": "2026-11-03"
        },
        {
          "key": "performance",
          "name": "Performance",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
        },
        {
          "key": "schema",
          "name": "Schema \u0026 documentation",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 52,
          "points": 8.45,
          "reason": "No OpenAPI or similar document was found; the official Postman collection is the only machine-readable contract (8 of 25). No llms.txt (a redirect) and no Markdown docs (0 of 10). Each method page states purpose, parameters, response fields and Premier status, with little on when not to use a method (12 of 20). Parameters are typed with defaults and allowed values, `max_results` is capped at 50, but the field tables mistype allergen names as Long and leave food_images out of the food-level fields (11 of 15). Example responses in XML and JSON on each method, a central error code list with the body shape, and per-method error codes (13 of 15). Methods carry versions (v1 to v5) and older versions stay documented, but no changelog is on the platform site and the blog's 'What's new' could not be read (8 of 15). 8 + 0 + 12 + 11 + 13 + 8 = 52.",
          "checked": "2026-11-03"
        },
        {
          "key": "ergonomics",
          "name": "Agent ergonomics",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 64,
          "points": 10.4,
          "reason": "`max_results` up to 50 (default 20), `format=json`, and `include_*` switches add sub-categories, images and attributes only when asked, but there is no field selection and each food carries every serving (15 of 25). Zero-based `page_number`, `food_type` generic or brand, region and language filters (18 of 20). Numeric error codes with messages, for OAuth, parameters and application errors, but limit errors come as codes 11 and 12 with no HTTP status or retry hint (13 of 20). Food and recipe methods are reads and safe to repeat; diary and saved-meal writes have no idempotency key (10 of 20). No parameter is required on foods.search, but there is no official SDK in any language (8 of 15). 15 + 18 + 13 + 10 + 8 = 64.",
          "checked": "2026-11-03"
        },
        {
          "key": "security",
          "name": "Security \u0026 auth",
          "weight": 14,
          "effectiveWeight": 17.5,
          "score": 51,
          "points": 8.93,
          "reason": "OAuth 2.0 client credentials with seven scopes gating capabilities (`basic`, `premier`, `barcode`, `localization`, `nlp`, `image-recognition` and `feedback`), tokens of 86,400 seconds, a Client Secret that stays on the server, and token requests limited to IP addresses or CIDR ranges registered on the key; OAuth 1.0 with HMAC-SHA1 remains for delegated calls. The scopes gate capabilities rather than read or write, and no rotation procedure was found (26 of 30). Per-user data is reached only through a delegated profile token, and the shared data methods are reads, but there is no read-only scope and no confirmation step for diary writes (14 of 20). Food and brand names are verified by fatsecret and recipes are its own content, with no guidance on treating them as untrusted (8 of 15). No request log or per-call visibility was found beyond the dashboard (3 of 15). The security.txt path answered the site's generic error page, and no disclosure policy, bug bounty or certification was found (0 of 20). 26 + 14 + 8 + 3 + 0 = 51.",
          "checked": "2026-11-03"
        },
        {
          "key": "payments",
          "name": "Payments \u0026 pricing",
          "weight": 10,
          "effectiveWeight": 12.5,
          "score": 25,
          "points": 3.13,
          "reason": "No x402, MPP or L402 (0 of 40). Basic is free and Premier is priced on request by market, with add-ons billed in tiers of 25,000 inputs and no price given, so the paid prices are contact sales (5 of 20). Basic is free on self sign-up with no card, and the platform page says Premier needs no upfront payment or card (20 of 20). A person registers in a browser and Premier goes through sales; no key API was found (0 of 20). 0 + 5 + 20 + 0 = 25.",
          "checked": "2026-11-03"
        },
        {
          "key": "tasks",
          "name": "Task success",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
        },
        {
          "key": "maintenance",
          "name": "Maintenance \u0026 community",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 13,
          "points": 1.14,
          "reason": "Read as a closed service. No dated API change could be read first-hand. The blog that carries the 'What's new' notes sits behind a robots.txt that answered 403, the method pages are undated, and the official Postman repository's last push is 1 July 2025, more than 180 days before 3 November 2026 (0 of 30). No three dated changes in 90 days established (0 of 20). A developer forum on Google Groups, a contact form, and email, phone, Slack and video support on Premier, with no public changelog on the platform site (8 of 15). No official SDK; an official Postman collection (5 of 15). No package to assess (0 of 10). 0 + 0 + 8 + 5 + 0 = 13.",
          "checked": "2026-11-03"
        },
        {
          "key": "transparency",
          "name": "Transparency \u0026 trust",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 34,
          "points": 2.98,
          "note": "editorial 18, provenance 49",
          "reason": "Closed service with terms that are clear on caching, attribution, rate limits and termination, but undated, naming the provider only as Fatsecret.com, and changeable with or without notice (12 of 30). The privacy policy on foods.fatsecret.com could not be read, because that host's robots.txt disallows our reader, so no data-handling statement was scored; the terms require content to be removed within 24 hours (0 of 30, unchecked). Older method versions stay documented alongside v5 and foods.search v4 is still served, but the terms allow any aspect of the API to be changed or discontinued at any time with no notice period (6 of 20). No subprocessors or data locations found (0 of 20). 12 + 0 + 6 + 0 = 18.",
          "checked": "2026-11-03"
        }
      ],
      "assessment": {
        "date": "2026-11-03",
        "basis": "public evidence",
        "confidence": "medium",
        "notes": {
          "ergonomics": "`max_results` up to 50 (default 20), `format=json`, and `include_*` switches add sub-categories, images and attributes only when asked, but there is no field selection and each food carries every serving (15 of 25). Zero-based `page_number`, `food_type` generic or brand, region and language filters (18 of 20). Numeric error codes with messages, for OAuth, parameters and application errors, but limit errors come as codes 11 and 12 with no HTTP status or retry hint (13 of 20). Food and recipe methods are reads and safe to repeat; diary and saved-meal writes have no idempotency key (10 of 20). No parameter is required on foods.search, but there is no official SDK in any language (8 of 15). 15 + 18 + 13 + 10 + 8 = 64.",
          "maintenance": "Read as a closed service. No dated API change could be read first-hand. The blog that carries the 'What's new' notes sits behind a robots.txt that answered 403, the method pages are undated, and the official Postman repository's last push is 1 July 2025, more than 180 days before 3 November 2026 (0 of 30). No three dated changes in 90 days established (0 of 20). A developer forum on Google Groups, a contact form, and email, phone, Slack and video support on Premier, with no public changelog on the platform site (8 of 15). No official SDK; an official Postman collection (5 of 15). No package to assess (0 of 10). 0 + 0 + 8 + 5 + 0 = 13.",
          "payments": "No x402, MPP or L402 (0 of 40). Basic is free and Premier is priced on request by market, with add-ons billed in tiers of 25,000 inputs and no price given, so the paid prices are contact sales (5 of 20). Basic is free on self sign-up with no card, and the platform page says Premier needs no upfront payment or card (20 of 20). A person registers in a browser and Premier goes through sales; no key API was found (0 of 20). 0 + 5 + 20 + 0 = 25.",
          "reliability": "Read with the hosted lines. No status page was found on the platform site, the guides, the editions page or the about page (0), so there is no incident history to read (5). The limit is published with a number, 5,000 calls a day on Basic in the terms and on the editions page, and Premier is unlimited (15). Limits surface as error codes 11 and 12 in the body; no HTTP 429, Retry-After or backoff guidance was found, and diary writes have no idempotency key (5 of 15). Premier carries a month-by-month SLA with service credits, named on the editions page without figures, and every edition claims more than 99.9 per cent uptime (5 of 10). The API is generally available, with versioned methods (10). 0 + 5 + 15 + 5 + 5 + 10 = 35.",
          "schema": "No OpenAPI or similar document was found; the official Postman collection is the only machine-readable contract (8 of 25). No llms.txt (a redirect) and no Markdown docs (0 of 10). Each method page states purpose, parameters, response fields and Premier status, with little on when not to use a method (12 of 20). Parameters are typed with defaults and allowed values, `max_results` is capped at 50, but the field tables mistype allergen names as Long and leave food_images out of the food-level fields (11 of 15). Example responses in XML and JSON on each method, a central error code list with the body shape, and per-method error codes (13 of 15). Methods carry versions (v1 to v5) and older versions stay documented, but no changelog is on the platform site and the blog's 'What's new' could not be read (8 of 15). 8 + 0 + 12 + 11 + 13 + 8 = 52.",
          "security": "OAuth 2.0 client credentials with seven scopes gating capabilities (`basic`, `premier`, `barcode`, `localization`, `nlp`, `image-recognition` and `feedback`), tokens of 86,400 seconds, a Client Secret that stays on the server, and token requests limited to IP addresses or CIDR ranges registered on the key; OAuth 1.0 with HMAC-SHA1 remains for delegated calls. The scopes gate capabilities rather than read or write, and no rotation procedure was found (26 of 30). Per-user data is reached only through a delegated profile token, and the shared data methods are reads, but there is no read-only scope and no confirmation step for diary writes (14 of 20). Food and brand names are verified by fatsecret and recipes are its own content, with no guidance on treating them as untrusted (8 of 15). No request log or per-call visibility was found beyond the dashboard (3 of 15). The security.txt path answered the site's generic error page, and no disclosure policy, bug bounty or certification was found (0 of 20). 26 + 14 + 8 + 3 + 0 = 51.",
          "transparency": "Closed service with terms that are clear on caching, attribution, rate limits and termination, but undated, naming the provider only as Fatsecret.com, and changeable with or without notice (12 of 30). The privacy policy on foods.fatsecret.com could not be read, because that host's robots.txt disallows our reader, so no data-handling statement was scored; the terms require content to be removed within 24 hours (0 of 30, unchecked). Older method versions stay documented alongside v5 and foods.search v4 is still served, but the terms allow any aspect of the API to be changed or discontinued at any time with no notice period (6 of 20). No subprocessors or data locations found (0 of 20). 12 + 0 + 6 + 0 = 18."
        },
        "sources": [
          {
            "what": "REST API guides (methods, call styles)",
            "url": "https://platform.fatsecret.com/docs/guides",
            "seen": "2026-11-03"
          },
          {
            "what": "editions and pricing",
            "url": "https://platform.fatsecret.com/api-editions",
            "seen": "2026-11-03"
          },
          {
            "what": "platform API overview",
            "url": "https://platform.fatsecret.com/platform-api",
            "seen": "2026-11-03"
          },
          {
            "what": "authentication overview",
            "url": "https://platform.fatsecret.com/docs/guides/authentication",
            "seen": "2026-11-03"
          },
          {
            "what": "OAuth 2.0 guide (scopes, token lifetime, IP restriction)",
            "url": "https://platform.fatsecret.com/docs/guides/authentication/oauth2",
            "seen": "2026-11-03"
          },
          {
            "what": "OAuth 1.0 guide",
            "url": "https://platform.fatsecret.com/docs/guides/authentication/oauth1",
            "seen": "2026-11-03"
          },
          {
            "what": "error codes",
            "url": "https://platform.fatsecret.com/docs/guides/error-codes",
            "seen": "2026-11-03"
          },
          {
            "what": "foods.search v5 reference",
            "url": "https://platform.fatsecret.com/docs/v5/foods.search",
            "seen": "2026-11-03"
          },
          {
            "what": "localisation guide",
            "url": "https://platform.fatsecret.com/docs/guides/localization",
            "seen": "2026-11-03"
          },
          {
            "what": "libraries",
            "url": "https://platform.fatsecret.com/docs/guides/libraries",
            "seen": "2026-11-03"
          },
          {
            "what": "attribution policy",
            "url": "https://platform.fatsecret.com/attribution",
            "seen": "2026-11-03"
          },
          {
            "what": "terms of use",
            "url": "https://platform.fatsecret.com/terms",
            "seen": "2026-11-03"
          },
          {
            "what": "about",
            "url": "https://platform.fatsecret.com/about",
            "seen": "2026-11-03"
          },
          {
            "what": "robots.txt platform",
            "url": "https://platform.fatsecret.com/robots.txt",
            "seen": "2026-11-03"
          },
          {
            "what": "robots.txt foods (disallows our reader)",
            "url": "https://foods.fatsecret.com/robots.txt",
            "seen": "2026-11-03"
          },
          {
            "what": "robots.txt blog (403)",
            "url": "https://blog.fatsecret.com/robots.txt",
            "seen": "2026-11-03"
          },
          {
            "what": "security.txt (error page)",
            "url": "https://platform.fatsecret.com/.well-known/security.txt",
            "seen": "2026-11-03"
          },
          {
            "what": "GitHub API for the Postman repository",
            "url": "https://api.github.com/repos/fatsecret-group/postman-fatsecret-apis",
            "seen": "2026-11-03"
          },
          {
            "what": "MCP registry search (third-party servers only)",
            "url": "https://registry.modelcontextprotocol.io/v0/servers?search=fatsecret",
            "seen": "2026-11-03"
          },
          {
            "what": "RDAP for fatsecret.com",
            "url": "https://rdap.verisign.com/com/v1/domain/fatsecret.com",
            "seen": "2026-11-03"
          }
        ],
        "openQuestions": [
          "unchecked: the privacy policy at foods.fatsecret.com, whose robots.txt disallows ClaudeBot and anthropic-ai, and the blog's 'What's new' release notes, whose robots.txt answered 403. Transparency and maintenance score them as absent.",
          "unchecked: www.fatsecret.com/about-us (403), so the legal entity, headquarters and founders are not established; the terms name Fatsecret.com under the law of Victoria, Australia.",
          "firstReleased is 7 April 2006, the domain's registration date, which matches the founding year on the about page; no first-hand page dates the Platform API's launch. lastRelease is empty for want of a dated API change.",
          "The security.txt path answered the site's generic error page ('An error occurred while processing your request') rather than 404, so securityTxt is unknown.",
          "The platform page says fatsecret supplies data exports and API capabilities 'to help LLM providers train their latest models'; recorded as a vendor statement.",
          "The official MCP registry lists two third-party fatsecret servers (io.github.fliptheweb/fatsecret-mcp 0.0.10 and io.github.jaronskijakub/fatsecret-mcp 0.3.0, both updated in late October or November 2026) and nothing from the vendor.",
          "unchecked: the developer forum's activity and reply times, which were not read."
        ]
      },
      "negative": 0,
      "verdict": "OAuth 2.0 client credentials with feature scopes, IP-restricted tokens, a free 5,000-call day with no card, and per-serving nutrients with allergen flags on branded and generic foods. The newest search and image methods need the sales-priced Premier edition, there is no status page, OpenAPI file or official SDK, and the privacy policy and blog could not be read.",
      "bestFor": "Agents logging foods and reading serving-level nutrients, allergens and barcodes for a person, with diaries written back; strongest outside the US on Premier with 62 regional datasets.",
      "strengths": [
        "OAuth 2.0 client credentials with seven scopes, 24-hour tokens and token requests limited to registered IP addresses",
        "Basic edition free on self sign-up with 5,000 calls a day and no card",
        "Serving-level nutrients with allergen and preference flags, barcode lookup and 212 region codes in 26 languages on Premier",
        "Numeric error codes with messages documented centrally and per method, with JSON or XML responses",
        "Per-user food, exercise and weight diaries can be written through profiles, so a plan can reach a person's log"
      ],
      "weaknesses": [
        "Natural language, image recognition, autocomplete, barcode scanning and foods.search v5 are Premier Exclusive, priced on request by market",
        "No status page, SLA figures outside Premier, OpenAPI document, llms.txt, changelog or official SDK found",
        "No HTTP 429 or Retry-After documented; limits surface as error codes 11 and 12 in the body",
        "Content not marked storable must be removed or re-requested within 24 hours, and attribution is required wherever it is shown on Basic and Premier Free",
        "The privacy policy on foods.fatsecret.com and the blog's release notes could not be read, and the terms name no legal entity or date"
      ],
      "agentNotes": [
        "Request a token with `grant_type=client_credentials` and only the scopes the task needs; a token request from an IP not registered on the key fails, so run from a fixed address",
        "Use `foods.search` v1 on Basic, since v5, autocomplete, barcode and image methods answer with a scope error without Premier",
        "Pass `format=json` and keep `max_results` at or below 50 with a zero-based `page_number`; treat error code 11 or 12 in the body as the rate limit, since no 429 is documented",
        "Store only food_id and serving_id between sessions and re-request other values within 24 hours, as the terms require",
        "Use a delegated profile token for diary writes and keep the profile's oauth_token and oauth_secret, since fatsecret does not return them again"
      ],
      "metrics": {
        "kind": "remote",
        "measured": false
      },
      "reviewCount": 0,
      "avgRating": 0,
      "history": [
        {
          "basis": "public evidence",
          "confidence": "medium",
          "grade": "E",
          "methodology": "0.7",
          "pending": [
            "performance",
            "tasks"
          ],
          "run": "2026-10-01",
          "runLabel": "October 2026 research run",
          "score": 42
        }
      ],
      "editorialScores": {
        "ergonomics": 64,
        "maintenance": 13,
        "payments": 25,
        "reliability": 35,
        "schema": 52,
        "security": 51,
        "transparency": 18
      },
      "provenanceScore": 49,
      "checked": {
        "categories": {
          "ergonomics": "2026-11-03",
          "maintenance": "2026-11-03",
          "payments": "2026-11-03",
          "reliability": "2026-11-03",
          "schema": "2026-11-03",
          "security": "2026-11-03",
          "transparency": "2026-11-03"
        },
        "last": "2026-11-03",
        "oldest": "2026-11-03",
        "stale": false,
        "staleAfterDays": 90
      },
      "scoreHistory": [
        {
          "date": "2026-11-03",
          "grade": "E",
          "kind": "listed",
          "method": "0.7",
          "score": 42
        }
      ]
    },
    "connect": {
      "http": "curl -u \"$FATSECRET_CLIENT_ID:$FATSECRET_CLIENT_SECRET\" -d \"grant_type=client_credentials\u0026scope=basic\" https://oauth.fatsecret.com/connect/token"
    },
    "letme": {
      "capability": "https://letme.dev/cooking.nutrition",
      "tool": "https://letme.dev/fatsecret"
    },
    "notable": [
      "Two call styles on https://platform.fatsecret.com/rest, a path per method and version such as GET /rest/foods/search/v5, or POST /rest/server.api with a `method` parameter such as foods.search.v5, in XML by default or JSON with `format=json` (https://platform.fatsecret.com/docs/guides)",
      "OAuth 2.0 supports only client_credentials, tokens expire after 86,400 seconds, scopes are `basic`, `premier`, `barcode`, `localization`, `nlp`, `image-recognition` and `feedback`, and token requests are limited to registered IP addresses (https://platform.fatsecret.com/docs/guides/authentication/oauth2)",
      "Premier Exclusive methods, marked with an asterisk, include natural language processing, image recognition, autocomplete, barcode scanning, foods.search v5, feedback, brands and categories, and food create (https://platform.fatsecret.com/docs/guides)",
      "Per-user data (favourites, saved meals, food, exercise and weight diaries) is reached through profiles created by the developer or linked to fatsecret.com accounts, with OAuth 1.0 delegated requests (https://platform.fatsecret.com/docs/guides/authentication)",
      "The terms set the rate limit at 5,000 calls a day, require content not marked storable to be removed or re-requested within 24 hours, require attribution in every place content is shown, forbid robots or spiders retrieving content except as the documentation allows, and let fatsecret change or discontinue the API at any time; they name the provider as Fatsecret.com under the law of Victoria, Australia, with no date (https://platform.fatsecret.com/terms)",
      "foods.search.v5 returns pages of up to 50 results with serving-level nutrients, allergen and preference flags, and says the only storable values are food_id and serving_id (https://platform.fatsecret.com/docs/v5/foods.search)",
      "Error codes are numeric with a message, 11 for the application request limit and 12 for too many user actions; no HTTP 429 or Retry-After is documented (https://platform.fatsecret.com/docs/guides/error-codes)",
      "No official SDK; an official Postman collection and three community libraries (Python, PHP, Swift) are listed, the Swift one marked proof of concept (https://platform.fatsecret.com/docs/guides/libraries)"
    ],
    "area": "everyday",
    "details": [
      {
        "label": "Surface listed",
        "value": "The Platform API at platform.fatsecret.com/rest, read from the guides, editions, authentication, OAuth 2.0, OAuth 1.0, error codes, libraries, localisation, foods.search v5, attribution, about and terms pages on platform.fatsecret.com and the GitHub API on 3 November 2026. No account was made and no call was sent"
      },
      {
        "label": "Methods",
        "value": "Foods (search v1 and v5, get by id v5, autocomplete v2, barcode v2, image recognition v2, natural language v1, feedback v1, brands, categories and sub-categories v2, create v2), recipes (search v3, get v2, types v2), and profile methods for foods, recipes, saved meals, authentication, food diary, exercise diary and weight diary"
      },
      {
        "label": "Editions",
        "value": "Basic (free, self sign-up, 5,000 calls a day, US data, English, attribution required), Premier Free (free with verification for start-ups under US$1M revenue and raised, non-profits and students, no daily cap), Premier (on request, 62 regional datasets, 26 languages, white label, month-by-month SLA with service credits, email, phone, Slack and video support)"
      },
      {
        "label": "Add-ons",
        "value": "Image recognition and natural language processing, billed monthly by usage in tiers of 25,000 inputs, with a 50 per cent discount on Premier Free. The platform page says a 14-day trial of image recognition can be started from the dashboard"
      },
      {
        "label": "Rate limits",
        "value": "5,000 calls a day on Basic per the terms and editions page; Premier unlimited without throttling per the platform page. Error code 11 for the application limit and 12 for a user's actions. No per-second figure, 429 or Retry-After documented"
      },
      {
        "label": "Localisation",
        "value": "212 region codes and 26 language codes; `language` is ignored unless `region` is set; a premium feature for select accounts"
      },
      {
        "label": "Data licence",
        "value": "Content not marked storable indefinitely must be removed or re-requested within 24 hours; foods.search v5 marks only food_id and serving_id as storable. Attribution with the web badge or snippet wherever content is shown, in app store listings and on the app's website, except on white-label Premier. fatsecret may crawl and monitor applications"
      },
      {
        "label": "SDKs",
        "value": "None official. An official Postman collection and walkthrough (fatsecret-group/postman-fatsecret-apis, last push 1 July 2025). Community libraries pyfatsecret (Python), fatsecret-laravel (PHP) and FatSecretSwift (Swift, proof of concept)"
      },
      {
        "label": "Legal entity",
        "value": "Not established. The terms name 'Fatsecret.com (fatsecret)' under the law of Victoria, Australia; the about page says fatsecret was founded in 2006 and names its CEO, CTO and VP Business Development; www.fatsecret.com/about-us answered 403"
      }
    ],
    "provenance": {
      "legalEntity": "",
      "domain": "fatsecret.com",
      "domainRegistered": "2006-04-07",
      "endpointOnVendorDomain": true,
      "terms": "https://platform.fatsecret.com/terms",
      "privacy": "https://foods.fatsecret.com/Default.aspx?pa=priv\u0026l=en",
      "statusPage": "",
      "changelog": "",
      "securityTxt": "unknown",
      "checked": "2026-11-03",
      "notes": [
        "The Platform API terms name the provider only as Fatsecret.com, under the law of the State of Victoria, Australia, with no effective date. They forbid robots, spiders or other automated applications retrieving or indexing API content except as the documentation allows, and say fatsecret may crawl or monitor applications; no clause addresses automated reading of the website.",
        "platform.fatsecret.com/robots.txt disallows /rest* for all crawlers, which is the API itself, and nothing was fetched under it. foods.fatsecret.com/robots.txt disallows the whole site for ClaudeBot, anthropic-ai and other named crawlers, so the privacy policy there was not read. blog.fatsecret.com/robots.txt answered 403, so the blog's release notes were not read. www.fatsecret.com has no robots.txt (404) and its about-us page answered 403.",
        "No status page or changelog found. platform.fatsecret.com/.well-known/security.txt answered the site's generic error page with a request id, so security.txt is unknown. No llms.txt (302 to another page).",
        "RDAP gives fatsecret.com a registration date of 7 April 2006, the year the about page gives for the company's founding."
      ],
      "score": 49,
      "checks": [
        {
          "check": "Legal entity named",
          "value": "not found",
          "points": 0,
          "max": 20,
          "state": "no"
        },
        {
          "check": "Domain age",
          "value": "fatsecret.com, registered 2006-04-07 (20 years)",
          "points": 15,
          "max": 15,
          "state": "ok"
        },
        {
          "check": "Endpoint on the vendor's domain",
          "value": "fatsecret.com",
          "points": 15,
          "max": 15,
          "state": "ok"
        },
        {
          "check": "Terms of service",
          "value": "read, states 4 of the 7 things a reader expects, and has 2 clauses that cost points",
          "points": 3.4,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Privacy policy",
          "value": "read, states 6 of the 8 things a reader expects",
          "points": 8.5,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Status page",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "Changelog",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "security.txt",
          "value": "could not be fetched",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "People named",
          "value": "3 named with their role, 3 with a public profile",
          "points": 10,
          "max": 10,
          "state": "ok"
        },
        {
          "check": "Support route",
          "value": "help pages, a community",
          "points": 5,
          "max": 5,
          "state": "ok"
        }
      ],
      "policies": [
        {
          "kind": "terms",
          "url": "https://platform.fatsecret.com/terms",
          "state": "read",
          "readAt": "2026-11-03",
          "words": 2305,
          "points": 3.4,
          "max": 10,
          "expected": [
            {
              "key": "terms.date",
              "label": "Gives the date it was last updated",
              "found": false
            },
            {
              "key": "terms.law",
              "label": "Names the governing law or courts",
              "found": true,
              "quote": "7.5 These Terms of Use and any dispute about or involving the fatsecret Platform API shall be governed by and construed in accordance with the laws of the State of Victoria,",
              "says": "The law of the State of Victoria"
            },
            {
              "key": "terms.liability",
              "label": "States a limit on its liability",
              "found": true,
              "quote": "fatsecret shall not, under any circumstances, be liable to you or any third party for any indirect, consequential, exemplary, incidental, special or punitive damages, including for",
              "says": "Rules out indirect and consequential losses, with no cap named in this sentence"
            },
            {
              "key": "terms.termination",
              "label": "Says how the agreement or account can be ended",
              "found": true,
              "quote": "Use, (ii) fatsecret sends a written notice of termination to you, or (iii) fatsecret ceases providing you access to the fatsecret Platform API."
            },
            {
              "key": "terms.changes",
              "label": "Says how changes to the terms are announced",
              "found": false
            },
            {
              "key": "terms.use",
              "label": "Lists what users may not do",
              "found": true,
              "quote": "You may not sell, transfer, sublicense or otherwise disclose your Keys to any other party or use them with any other application other than that for which you initially"
            },
            {
              "key": "terms.sla",
              "label": "Refers to a service level or uptime commitment",
              "found": false
            }
          ],
          "toKnow": [
            {
              "key": "terms.automated",
              "label": "Restricts automated access",
              "found": true,
              "quote": "use the fatsecret Platform API in a manner that exceeds reasonable request volume, constitutes excessive or abusive usage (including using any robot, spider, site search/retrieval, or other automated application or device to retrieve or index any portion of the Content)",
              "costsPoints": true
            },
            {
              "key": "terms.nonotice",
              "label": "Says the terms or the service can change without notice",
              "found": true,
              "quote": "Fatsecret.com (\"fatsecret\") is constantly innovating and improving the fatsecret Platform API, and reserves the right, from time to time, with or without notice to you, to",
              "costsPoints": true
            },
            {
              "key": "terms.cutoff",
              "label": "Says access can be ended without notice or for any reason",
              "found": true,
              "quote": "fatsecret may terminate the license at any time for any reason."
            }
          ],
          "notes": [
            {
              "date": "2026-11-03",
              "text": "The application must be generally accessible to users and may not run only behind a firewall or on an internal network without a separate agreement.",
              "quote": "1.2 Your Application must be generally accessible to users. You may require users to log in to your Application but you must not (unless you have entered into a separate agreement"
            },
            {
              "date": "2026-11-03",
              "text": "Content not marked as storable indefinitely must be removed or re-requested within 24 hours of being obtained.",
              "quote": "1.5 You may not continue to use and must immediately remove or replace (by re-requesting) any Content in your possession or under your control not explicitly identified as being"
            },
            {
              "date": "2026-11-03",
              "text": "The API must not be used to give diet, nutrition or health advice, guidance or diagnosis.",
              "quote": "use the fatsecret Platform API to provide diet, nutrition or health advice, guidance or diagnosis"
            }
          ]
        },
        {
          "kind": "privacy",
          "url": "https://foods.fatsecret.com/Default.aspx?pa=priv\u0026l=en",
          "state": "read",
          "readAt": "2026-11-03",
          "words": 3006,
          "points": 8.5,
          "max": 10,
          "expected": [
            {
              "key": "privacy.date",
              "label": "Gives the date it was last updated",
              "found": false
            },
            {
              "key": "privacy.collected",
              "label": "Says what personal data is collected",
              "found": true,
              "quote": "The purpose of this Privacy Policy is to explain what Personal Data we collect about you when you interact with FatSecret, including what Personal Data and other information we collect, how we use that information, with whom we share that information and what steps we take to protect that information."
            },
            {
              "key": "privacy.retention",
              "label": "Says how long data is kept",
              "found": true,
              "quote": "We retain your Personal Data for as long as you maintain your account with us or as otherwise necessary to provide you the Services.",
              "says": "For as long as needed, with no period named"
            },
            {
              "key": "privacy.processors",
              "label": "Says who else receives the data",
              "found": true,
              "quote": "We will not use or disclose any Sensitive Data gained through Health Data Services to third parties for advertising, marketing or other use-based data mining purposes other than for improving health or for the purpose of health research and will not disclose any of this Sensitive Data to a third party without your exp…"
            },
            {
              "key": "privacy.sale",
              "label": "Says whether personal data is sold or shared for advertising",
              "found": false
            },
            {
              "key": "privacy.rights",
              "label": "Says what rights people have over their data",
              "found": true,
              "quote": "In respect of your Personal Data that we hold you can exercise your rights (detailed below) by contacting us via our 'Contact Details' below."
            },
            {
              "key": "privacy.contact",
              "label": "Gives a privacy contact",
              "found": true,
              "quote": "If you have any questions concerning this Privacy Policy or wish to revoke your consent to our processing of your Personal Data, please email us at privacy@FatSecret.com.",
              "says": "privacy@FatSecret.com"
            },
            {
              "key": "privacy.transfers",
              "label": "Says where data is transferred or stored",
              "found": true,
              "quote": "…and if you are accessing FatSecret from outside the United States, please be advised that you may be transferring your Personal Data to the United States and that the United States may have data protection laws/standards that are different from where you live.",
              "says": "Data goes to the United States"
            }
          ]
        }
      ]
    },
    "humans": {
      "slug": "fatsecret",
      "checked": "2026-11-03",
      "company": "fatsecret",
      "people": [
        {
          "name": "Lenny Moses",
          "role": "Chief Executive Officer",
          "linkedin": "https://www.linkedin.com/in/lennymoses",
          "bio": "Lenny Moses is the chief executive of fatsecret, the food and nutrition database and app company founded in 2006, per the Platform API about page, which links his LinkedIn profile.",
          "bioSources": [
            "https://platform.fatsecret.com/about"
          ],
          "page": "/people/lenny-moses/"
        },
        {
          "name": "Ran Dulberg",
          "role": "Chief Technology Officer",
          "linkedin": "https://www.linkedin.com/in/ran-dulberg-9214654",
          "bio": "Ran Dulberg is fatsecret's chief technology officer, per the Platform API about page, which links his LinkedIn profile.",
          "bioSources": [
            "https://platform.fatsecret.com/about"
          ],
          "page": "/people/ran-dulberg/"
        },
        {
          "name": "Sebastian Loch",
          "role": "VP Business Development",
          "linkedin": "https://www.linkedin.com/in/sloch",
          "bio": "Sebastian Loch is fatsecret's vice president of business development, per the Platform API about page, which links his LinkedIn profile.",
          "bioSources": [
            "https://platform.fatsecret.com/about"
          ],
          "page": "/people/sebastian-loch/"
        }
      ],
      "peopleNote": "The Platform API about page, read 3 November 2026, says fatsecret was founded in 2006 and lists Lenny Moses (Chief Executive Officer), Sebastian Loch (VP Business Development) and Ran Dulberg (Chief Technology Officer) with LinkedIn links. It names no founders, so the founder flag is left off; search results calling Lenny Moses a co-founder are third-party profiles and not used. www.fatsecret.com/about-us answered 403 and foods.fatsecret.com disallows our reader, so no legal entity, headquarters or founding roster was read. The LinkedIn company link on the about page is the au. regional form of linkedin.com/company/fatsecret. Investors were looked for on the about, platform-api, editions and terms pages and in a search; no first-hand page mentions funding or owners, and the aggregator profiles that came up are not used.",
      "companySocial": {
        "linkedin": "https://www.linkedin.com/company/fatsecret",
        "x": "https://x.com/fatsecret",
        "github": "https://github.com/fatsecret-group"
      },
      "support": {
        "urls": [
          "https://platform.fatsecret.com/contact",
          "https://platform.fatsecret.com/docs/guides"
        ],
        "community": [
          {
            "label": "Developer forum (Google Groups)",
            "url": "https://groups.google.com/g/fatsecret-platform-api",
            "kind": "forum"
          }
        ],
        "contactUrls": [
          "https://platform.fatsecret.com/contact"
        ]
      },
      "sources": [
        "https://platform.fatsecret.com/about",
        "https://platform.fatsecret.com/platform-api",
        "https://platform.fatsecret.com/api-editions",
        "https://platform.fatsecret.com/terms",
        "https://platform.fatsecret.com/docs/guides/libraries",
        "https://api.github.com/orgs/fatsecret-group"
      ],
      "ownership": {
        "status": "unknown",
        "checked": "2026-11-03",
        "sources": [
          "https://platform.fatsecret.com/about",
          "https://platform.fatsecret.com/terms"
        ]
      }
    },
    "pageJsonUrl": "https://www.anchorterminal.com/tools/fatsecret.json",
    "live": {
      "slug": "fatsecret",
      "securityTxt": {
        "url": "https://fatsecret.com/.well-known/security.txt",
        "state": "none",
        "checkedAt": "2026-11-04T15:52:54.388597771Z"
      },
      "updatedAt": "2026-11-04T15:52:54.388597771Z"
    }
  }
}
