INDECOPI Peru Trademark Search Scraper
Pricing
from $12.75 / 1,000 results
INDECOPI Peru Trademark Search Scraper
Scrape Peru's INDECOPI trademark register (signos distintivos): trademark name, applicant/owner, Nice class, status, certificate or file number, expiry date and a direct record link. Search many brand names across one or all 45 Nice classes. Export to JSON, CSV or Excel.
Pricing
from $12.75 / 1,000 results
Rating
0.0
(0)
Developer
Scrapers Lat
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
14 days ago
Last modified
Categories
Share
INDECOPI Peru Trademark Search Scraper
Here is one real result, with every field the actor returns:
{"trademarkName": "INCA","applicantName": "ALICORP S.A.A.","niceClass": 1,"classDescription": "Productos químicos para la industria, la ciencia y la fotografía, así como para la agricultura, la horticultura y la silvicultura; resinas artificiales en bruto, materias plásticas en bruto; abonos para el suelo; composiciones extintoras; preparaciones para templar y soldar metales; productos químicos para conservar alimentos; materias curtientes; adhesivos (pegamentos) para la industria","status": "Registered","statusCode": "C","type": "Trademark","signType": "Denominative (word)","hasLogo": false,"certificateNumber": "P00315052","expediente": "P00315052","registrationYear": 2021,"expiryDate": "2031-09-21","office": "OSD","registryId": "23407","country": "Peru","searchTerm": "Inca","recordUrl": "https://pi.indecopi.gob.pe/consultatutramitedemarcas/#/consulta-certificado?params=U2FsdGVkX1%2FpBQVvEnh1ISVlX86asaRypoaMAsJG6iL08fu7TzOXTl62DlyaDWXOgkxKd%2B9dOHN%2BTR1Q8qxbwsDKnvmGMU%2BeREak029H7vI%3D","aiIndustry": "Chemicals","aiBrandDescriptor": "Chemical products for various industrial applications","aiCategories": ["Chemicals", "Industrial", "Agriculture", "Manufacturing"],"source": "INDECOPI Peru","observedAt": "2026-08-14T08:25:54.275Z"}
The most complete INDECOPI Peru trademark scraper available. It returns every field the official register exposes for each mark, plus an optional AI market classification, and gives you a phonetic search across one or all 45 Nice classes to target exactly the trademarks you need.
📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples
Table of contents
- What it does
- Quickstart
- Input reference
- Output reference
- Example output record
- Run via API and CLI
- Fetch results
- Billing and limits
- FAQ and troubleshooting
What it does
The actor runs a phonetic search over Peru's INDECOPI trademark register (signos distintivos) for each name you pass, across the Nice classes you select, and writes one normalized record per matching mark to the run's dataset. Because the search is phonetic, it also returns similar-sounding marks, which is what you want for brand clearance and competitor monitoring. Each record carries the trademark name, applicant/owner, Nice class and its goods/services description, status (registered or pending), certificate or file number, registration year, expiry date, issuing office, and a direct link to the official record page. Missing source values are returned as null.
Data covers Peru trademarks only. Turn on the optional AI market classification add-on to enrich each mark with a normalized market vertical, a short brand descriptor, and category tags beyond the legal Nice class.
Quickstart
Open the actor, paste this into the input, and press Run. It returns up to three marks that sound like "Inca", with the AI classification add-on on.
{"trademarkNames": ["Inca"],"maxRecords": 3,"withClassify": true,"onlyActive": false}
Leave niceClasses empty to search all 45 Nice classes for each name. Every input field except trademarkNames is optional.
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
trademarkNames | string[] | no | ["gloria"] | One or more brand / trademark names to search. The search is phonetic, so it also returns similar-sounding marks. Each name is searched across the selected Nice classes. Example: ["Inca", "Gloria"]. |
niceClasses | string[] | no | (all 45) | Nice classification classes (1 to 45) to search within. Leave empty to search all 45 classes for each name. Fewer classes means faster, cheaper runs. Example: ["29", "30"]. |
onlyActive | boolean | no | false | If true, return only trademarks currently in force. If false, return all matches including expired and pending records. |
maxRecords | integer | no | 10 | Maximum number of trademark records to collect across the whole run. |
withClassify | boolean | no | false | AI add-on. Adds an inferred market vertical and brand descriptor per mark, beyond the Nice class. Requires a paid Apify plan. Billed per record only when produced. |
Output reference
One dataset item per trademark record. Types: string, integer, boolean, string[], or null when the source value is absent.
| Field | Type | Description |
|---|---|---|
trademarkName | string | The trademark / sign denomination as registered. |
applicantName | string | Owner / applicant (titular) of the trademark. |
niceClass | integer | Nice classification class number (1 to 45). |
classDescription | string | Goods or services covered by the class. |
status | string | Registered or Pending application. |
statusCode | string | Raw source indicator: C = registered certificate, otherwise pending file. |
type | string | Record type. Always Trademark. |
signType | string | Denominative (word) or Figurative (logo). |
hasLogo | boolean | Whether the mark includes a figurative logo. |
certificateNumber | string | Certificate number (registered) or file number (pending). |
expediente | string | Same identifier as certificateNumber, kept for convenience. |
registrationYear | integer | Year the record was registered or filed. |
expiryDate | string | Validity / expiry date of the registration (YYYY-MM-DD). |
office | string | Issuing INDECOPI office code (for example OSD). |
registryId | string | Internal registry record id. |
country | string | Always Peru. |
searchTerm | string | The input name that produced this record. |
recordUrl | string | Direct link to the official INDECOPI record page. |
aiIndustry | string | AI-inferred market vertical for the mark. null unless the withClassify add-on is on. |
aiBrandDescriptor | string | AI short descriptor of the likely brand/product. null unless withClassify is on. |
aiCategories | string[] | AI category tags. null unless withClassify is on. |
source | string | Data source label (INDECOPI Peru). |
observedAt | string | ISO 8601 timestamp of when the record was collected. |
Example output record
Real record from a live run (input {"trademarkNames": ["Inca"], "maxRecords": 3, "withClassify": true}), a figurative mark with a logo:
{"trademarkName": "FERTINCA","applicantName": "BURGA FARRO, MICHAEL FRANCOIS; BURGA FARRO, OLIVER LUIS","niceClass": 1,"classDescription": "Productos químicos para la industria, la ciencia, así como para la agricultura, la horticultura y la silvicultura; resinas artificiales en bruto; materias plásticas en bruto; abonos, fertilizantes, reguladores de crecimiento, bioestimulantes agrícolas líquidos y granulados, nutrientes foliares líquidos y pulverizados; preparaciones para soldar metales; productos químicos para conservar alimentos; materias curtientes; adhesivos (pegamentos) para la industria","status": "Registered","statusCode": "C","type": "Trademark","signType": "Figurative (logo)","hasLogo": true,"certificateNumber": "T00017709","expediente": "T00017709","registrationYear": 2017,"expiryDate": "2027-08-31","office": "OSD","registryId": "23453","country": "Peru","searchTerm": "Inca","recordUrl": "https://pi.indecopi.gob.pe/consultatutramitedemarcas/#/consulta-certificado?params=U2FsdGVkX1%2FiHtoAM9KmYHPA6uJRjVivOB4qOMf1oC2uGqDMAzZWFSkEqqMO%2BWM9cXowjBsm0PfgBWD4v4C1J8Hg%2FmpB4tc8zGGpCmoGq3w%3D","aiIndustry": "Agriculture","aiBrandDescriptor": "Chemical products for agriculture and horticulture","aiCategories": ["Chemicals", "Agriculture", "Fertilizers", "Bio-stimulants"],"source": "INDECOPI Peru","observedAt": "2026-08-14T08:25:54.276Z"}
Run via API and CLI
Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.
Run synchronously and get dataset items in one call:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~indecopi-trademarks-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"trademarkNames":["Inca"],"niceClasses":["29","30"],"maxRecords":25,"onlyActive":false}'
Start a run asynchronously:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~indecopi-trademarks-scraper/runs?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"trademarkNames":["Gloria"],"maxRecords":100}'
Apify CLI:
apify call scrapers_lat/indecopi-trademarks-scraper \--input '{"trademarkNames":["Inca"],"maxRecords":10}'
Fetch results
Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:
# JSONcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"# CSVcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"# Paginate large datasetscurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"
<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.
Billing and limits
- Pay per result. You are charged per record returned (
resultevent). See the pricing tab for the current per-result price. - AI classification is a separate add-on. When
withClassifyis on, each successfully produced classification bills a separateai_classifyevent. It is off by default. - No charge on failure. If a run errors, the actor writes a single item with a populated
errorfield and does not charge for it. Empty runs cost nothing. - Spend cap respected. Set
maxTotalChargeUsdon the run; once reached, the actor stops emitting and charging further billable results. - Free Apify plans are capped at 10 records per run. Upgrade for higher
maxRecords. - AI add-ons require a paid Apify plan. On a free plan the
withClassifyadd-on is disabled for the run.
FAQ and troubleshooting
A run returned 0 records. Why?
No mark in the register sounded close enough to your term in the selected classes. Widen the search by leaving niceClasses empty, or try a different spelling. Zero-result runs are not charged.
Why does my search return marks that are spelled differently? The INDECOPI search is phonetic. It returns marks that sound similar to your term, which is exactly what you need for clearance and competitor monitoring.
What is the difference between a certificate number and a file number?
A registered mark carries a certificate number (statusCode C). A pending application carries its file number in the same field. Both are in certificateNumber.
Why is a record marked "Pending application"?
The mark has been filed but not yet granted. Set onlyActive to true to keep only trademarks currently in force.
Can I search many brand names at once?
Yes. Pass several names in trademarkNames; each is searched across the selected Nice classes and deduplicated in the output.
Is this an official INDECOPI tool? No. This actor is independent and has no affiliation with INDECOPI. It reads only data that is publicly available through the official trademark search. Use the results in accordance with the source's terms.
Related scrapers
- USPTO Trademark Search Scraper: US federal trademark applications and registrations.
- INPI Argentina Trademark Search Scraper: Argentina trademark register by applicant or mark.
- SUNAT Peru RUC & Taxpayer Registry Scraper: Peru RUC taxpayer records.
- RUES Colombia Company Registry & NIT Scraper: Colombia company registry and NIT lookups.
More scrapers at scrapers.lat
Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.
Independent tool, not affiliated with INDECOPI. Accesses only publicly available trademark data. Use the results in accordance with the source's terms.
