Discover/Trademarx API
live

Trademarx APItrademarx.in

Search Indian trademarks by name or company, browse official trademark journal issues from the India Trademark Registry. 4 endpoints, paginated results.

This API takes change requests — .
Endpoint health
verified 15h ago
search_trademarks
search_by_company
list_journals
browse_journal
4/4 passing latest checkself-healing
Endpoints
4
Updated
16h ago

What is the Trademarx API?

The Trademarx.in API provides 4 endpoints for querying the India Trademark Registry — search trademarks by name or proprietor, and browse official journal publications. The search_trademarks endpoint returns up to 100 records per query, each including application number, NICE class, proprietor name, and filing date. The search_by_company endpoint lets you retrieve all trademarks filed under a specific company or proprietor name with full pagination support.

This call costs1 credit / call— charged only on success
Try it
NICE classification number to filter results (1-45, or 99 for multi-class). Omitting returns all classes.
Trademark name to search for (e.g. 'Nike', 'Apple').
api.parse.bot/scraper/5e680419-8602-461e-9e29-3e9d2b7fdc01/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/5e680419-8602-461e-9e29-3e9d2b7fdc01/search_trademarks?query=Nike' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

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 trademarx-in-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: Trademarx India API — search trademarks, browse journals."""
from parse_apis.trademarx_in_api import Trademarx, InputFormatInvalid

client = Trademarx()

# Search trademarks by name, cap total items fetched.
for tm in client.trademarks.search(query="Nike", limit=5):
    print(tm.name, f"class={tm.tm_class}", f"app#{tm.application_no}")

# Search by company name to find proprietor filings.
hit = client.trademarks.search_by_company(company="Reliance", limit=1).first()
if hit is not None:
    print(hit.name, hit.proprietor_name, hit.application_date)

# Discover journals then browse trademarks in the latest issue.
journal = client.journals.list(limit=1).first()
if journal is not None:
    print(f"Journal {journal.journal_no}: {journal.trademark_count} trademarks")
    # Navigate into the journal's trademarks sub-resource.
    try:
        for tm in client.journal(journal_no=journal.journal_no).trademarks.list(size=5, limit=5):
            print(tm.name, tm.proprietor_name, tm.head_office)
    except InputFormatInvalid as e:
        print(f"Invalid journal input: {e.message}")

print("exercised: trademarks.search / trademarks.search_by_company / journals.list / journal.trademarks.list")
All endpoints · 4 totalmissing one? ·

Search trademarks by name with optional NICE class filter. Returns up to 100 matching trademark records from the India Trademark Registry. Results include trademark name, application number, class, proprietor, and filing date.

Input
ParamTypeDescription
classintegerNICE classification number to filter results (1-45, or 99 for multi-class). Omitting returns all classes.
queryrequiredstringTrademark name to search for (e.g. 'Nike', 'Apple').
Response
{
  "type": "object",
  "fields": {
    "query": "The search query used",
    "results": "Array of trademark records",
    "class_filter": "The class filter applied, or null if not filtered",
    "total_results": "Number of results returned"
  },
  "sample": {
    "data": {
      "query": "Nike",
      "results": [
        {
          "url": "/trademarks/nike-aeroloft-class-25-4481342",
          "name": "NIKE AEROLOFT",
          "type": null,
          "details": "Apparel, namely, jackets, coats, vests.",
          "img_url": null,
          "tm_class": 25,
          "application_no": 4481342,
          "proprietor_name": "NIKE INNOVATE C.V.",
          "application_date": "2020-03-23",
          "trademark_status": null
        }
      ],
      "class_filter": "25",
      "total_results": 23
    },
    "status": "success"
  }
}

About the Trademarx API

Trademark Name and Company Search

The search_trademarks endpoint accepts a query string and an optional class integer (1–45, or 99 for multi-class) to filter results by NICE classification. Each record in the results array includes the trademark name, application number, class, proprietor, and filing date. The response also surfaces total_results and the class_filter applied. To search by owner rather than mark name, search_by_company matches proprietor names containing the supplied company string, returning paginated records with total, page, and size fields.

Journal Publications

The India Trademark Registry publishes periodic journal issues listing newly filed and registered marks. list_journals returns a reverse-chronological array of journal summaries — each entry carries journal_no, trademark_count, and published_date. Pagination is controlled via zero-based page and size (1–100) parameters. Once you have a journal number, browse_journal retrieves the full trademark records within that issue, adding agent, status, and usage information beyond what the name-search endpoints return.

Response Fields and Pagination

All four endpoints use the same zero-based pagination convention (page, size). browse_journal additionally returns a total field representing the full count of trademarks in that journal issue, useful for building paginated UIs or bulk exports. The trademarks arrays in browse_journal and search_by_company carry the most complete records, including agent details and trademark status alongside the core fields shared across endpoints.

Reliability & maintenanceVerified

The Trademarx API is a managed, monitored endpoint for trademarx.in — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when trademarx.in 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 trademarx.in 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.

Last verified
15h ago
Latest check
4/4 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Check whether a proposed brand name is already registered under a specific NICE class before filing.
  • Audit all trademark filings associated with a company like 'Tata' or 'Reliance Industries' using search_by_company.
  • Monitor newly published trademarks in each registry journal issue to track competitor filings.
  • Build a trademark watch service that alerts users when a similar name appears in new journal publications.
  • Retrieve filing dates and application numbers for due-diligence research during mergers or acquisitions.
  • Enumerate all multi-class (class 99) filings to identify broadly registered marks.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 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.

Frequently asked questions
Does the India Trademark Registry offer an official developer API?+
The India Trademark Registry (IP India) does not publish an official public REST API for trademark data. Its public portal at ipindia.gov.in offers a web-based search tool but no documented programmatic access.
What does browse_journal return beyond what search_trademarks returns?+
browse_journal includes agent, status, and usage information for each trademark record, in addition to the name, application number, class, and proprietor fields common to both endpoints. It also returns a total count for the full journal issue, enabling accurate pagination.
Is there a limit on how many results search_trademarks returns?+
Yes. search_trademarks returns a maximum of 100 records per request and does not support pagination — the total_results field reflects how many were returned, capped at 100. For broad queries that may match more than 100 marks, narrowing the search with the class parameter is the most effective way to reduce the result set to the most relevant records.
Does the API expose trademark image or logo files?+
Not currently. The API returns text fields — name, application number, class, proprietor, agent, status, and filing date. Trademark device mark images are not included in any endpoint response. You can fork this API on Parse and revise it to add an endpoint that fetches logo images for individual application numbers.
Can I retrieve the full legal history or opposition records for a trademark?+
Not currently. The API covers registration status, proprietor details, class, agent, filing date, and journal publication data, but does not include opposition filings, hearing dates, or examination history. You can fork this API on Parse and revise it to add an endpoint for per-application legal history.
Page content last updated . Spec covers 4 endpoints from trademarx.in.
Related APIs in Government PublicSee all →
quickcompany.in API
Search Indian trademark registrations and retrieve detailed information about specific marks, including status, proprietor, and correspondence history. Browse trademark journals, explore Nice Classification classes, and filter results by status, class, or keyword to monitor registrations and track opposition trends.
tmsearch.uspto.gov API
Search USPTO trademarks by wordmark or serial number, and retrieve detailed case information (status, owners, classes, and prosecution history) for a specific serial number.
trademo.com API
Access comprehensive global trade data to search companies, find manufacturers by country, and review detailed trade profiles, sanctions lists, and politically exposed persons (PEP) lists. Monitor global trade indices and build a complete directory of international trading partners and compliance information.
tradeindia.com API
Search and discover products, suppliers, and their contact information on TradeIndia's B2B marketplace. Browse product categories, find supplier profiles, and explore upcoming tradeshows and industry events — including locations, dates, venues, and organizer details.
tradestat.commerce.gov.in API
Analyze India's trade patterns by searching export-import data across commodities, countries, and regions using HS codes and historical records. Track bilateral trade flows and commodity-wise statistics to understand market trends and make informed trade decisions.
data.inpi.fr API
Search and discover French industrial property information including patents, trademarks, designs, and company registrations from the official INPI national register. Find the intellectual property data you need to research competitors, verify trademark availability, or explore patent landscapes in France.
iprsearch.ipindia.gov.in API
Access data from iprsearch.ipindia.gov.in.
pdki-indonesia.dgip.go.id API
Search Indonesia's official intellectual property database to find registered trademarks by keyword and verify trademark availability before registration. Quickly check trademark ownership, registration status, and details across the complete PDKI registry.