National Fertilizers APInationalfertilizers.com ↗
Access NFL's fertilizer product catalogue via API. Browse categories, search products, and retrieve FCO specs, NPK percentages, and crop data from nationalfertilizers.com.
What is the National Fertilizers API?
The National Fertilizers Limited API exposes 4 endpoints covering NFL's full product catalogue at nationalfertilizers.com, including fertilizers, bio-fertilizers, and industrial products. Use get_product to retrieve FCO specification tables, parsed NPK nutrient percentages, description paragraphs, and crop mentions for any product. Other endpoints handle category browsing, full product listing, and free-text keyword search across the catalogue.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/ceed16b2-1500-4231-a86f-bbed06e6bc49/list_product_categories' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace nationalfertilizers-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: National Fertilizers product catalogue — bounded, re-runnable."""
from parse_apis.nationalfertilizers_com_api import (
NationalFertilizers,
InputNotFound,
)
client = NationalFertilizers()
# Browse all product categories on the site.
for cat in client.categories.list(limit=10):
print(cat.name, cat.slug)
# Pick the first category and list its products.
cat = client.categories.list(limit=1).first()
if cat is not None:
for ps in client.product_summaries.list(category=cat.slug, limit=5):
print(ps.name, ps.category_slugs)
# Search for a keyword, then drill into the first hit's full detail.
hit = client.product_summaries.search(query="urea", limit=1).first()
if hit is not None:
product = hit.details()
print(product.name, product.url)
print("Description:", product.description)
for spec in product.specifications:
print(f" {spec.parameter}: {spec.value}")
if product.npk is not None:
print(f" NPK grade: {product.npk.n}-{product.npk.p}-{product.npk.k}")
# Point lookup by slug with error handling.
try:
detail = client.products.get(slug="neem-coated-urea")
print(detail.name, detail.highlights)
except InputNotFound:
print("Product not found")
print("exercised: categories.list / product_summaries.list / product_summaries.search / details / products.get")
Returns the product categories shown on the site's Products index (one request, no pagination). Each category carries a slug that list_products accepts as its category filter. One category is titled in Hindi on the English site and its slug is percent-encoded; slug_decoded is the human-readable form while slug is the exact value to pass on.
No input parameters required.
{
"type": "object",
"fields": {
"total": "number of categories returned",
"categories": "array of {name, slug (pass to list_products.category), slug_decoded (URL-decoded slug), image_url}"
},
"sample": {
"data": {
"total": 5,
"categories": [
{
"name": "Fertilizers",
"slug": "fertilizers",
"image_url": "https://www.nationalfertilizers.com/wp-content/uploads/2022/12/Neem-Coated-Urea.jpg",
"slug_decoded": "fertilizers"
},
{
"name": "Traded Products",
"slug": "traded-products",
"image_url": "https://www.nationalfertilizers.com/wp-content/uploads/2023/02/traded-productds.png",
"slug_decoded": "traded-products"
}
]
},
"status": "success"
}
}About the National Fertilizers API
Product Categories and Listings
list_product_categories returns every category on the NFL Products index in a single request, giving you each category's name, slug, and slug_decoded fields. Note that one category title appears in Hindi on the English site and its slug is percent-encoded — slug_decoded always gives you the readable form. Pass any slug to list_products as the category parameter to retrieve just that category's products. Omitting category fetches all categories and de-duplicates across them; the response includes a categories_failed array so you know if any page failed to load, and categories_covered showing how many products each category contributed.
Product Search
search_products accepts a required query string and an optional page integer (1-based, 10 results per page). Results come back in the site's default order (newest first) and include each product's name, slug, category_slugs, and published date string. The has_more field tells you whether a next page exists. A broad query like urea can match both product names and body text, so results may include related products such as ammonia-based fertilizers.
Per-Product Detail
get_product takes a slug from either list_products or search_products and returns the full product detail page. The specifications array contains parsed rows from FCO specification tables, each as a {parameter, value} pair — covering limits like nutrient minimums and moisture maximums. npk gives numeric N, P, and K percentages extracted from the product name or text (individual members may be null when not stated). highlights returns bullet-point benefit statements, description returns ordered paragraphs, and mentioned_crops lists crop names found anywhere in the product text. image_url is included where the page provides one.
Coverage Notes
The API covers NFL's publicly listed product catalogue: fertilizers (including Urea, DAP, NPK grades), bio-fertilizers, traded products, and industrial chemicals. Products are identified by slug and can belong to multiple categories, reflected in the category_slugs array on both listing and detail responses.
The National Fertilizers API is a managed, monitored endpoint for nationalfertilizers.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when nationalfertilizers.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official nationalfertilizers.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a searchable NFL product reference tool using
search_productsquery results andget_productdetail pages. - Extract FCO specification tables for all fertilizers using
specificationsrows fromget_productto compare regulatory parameter limits. - Compile a crop-to-fertilizer mapping by collecting
mentioned_cropsarrays across all products returned bylist_products. - Track NPK grades across NFL's portfolio by reading
npk.n,npk.p, andnpk.kfields from each product detail. - Audit the full NFL catalogue structure by iterating
list_product_categoriesslugs and counting products per category viacategories_covered. - Monitor which products appear under multiple categories using the
category_slugsarray returned by both listing and detail endpoints. - Feed product descriptions and highlights into an agronomic recommendation engine using
descriptionandhighlightsfields fromget_product.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does National Fertilizers Limited offer an official developer API?+
What does `get_product` return beyond basic product info?+
get_product returns specifications as an array of {parameter, value} rows parsed from FCO specification tables on the product page, npk as numeric N/P/K percentages (with individual members null when not stated), mentioned_crops listing crop names found in the text, highlights as bullet-point statements, and description as ordered paragraphs. All fields are returned in a single request per product slug.Does `search_products` return all matching results at once?+
page parameter (1-based integer) to step through pages. The has_more boolean in the response indicates whether additional pages exist. There is no batch or offset parameter beyond page.Does the API cover pricing, stock availability, or dealer/distributor locator data?+
What happens if a category page fails to load when using `list_products` without a category filter?+
categories_failed array in the response lists any category slugs that returned a non-successful status code during the multi-category fetch. Products from failed categories are simply absent from the products array. categories_covered still reflects which categories were successfully read and how many products each returned.