INDECOPI Peru Trademark Search Scraper avatar

INDECOPI Peru Trademark Search Scraper

Pricing

from $12.75 / 1,000 results

Go to Apify Store
INDECOPI Peru Trademark Search Scraper

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

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

14 days ago

Last modified

Share

INDECOPI Peru Trademark Search Scraper

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

Apify Coverage Output Billing

Table of contents

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

FieldTypeRequiredDefaultDescription
trademarkNamesstring[]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"].
niceClassesstring[]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"].
onlyActivebooleannofalseIf true, return only trademarks currently in force. If false, return all matches including expired and pending records.
maxRecordsintegerno10Maximum number of trademark records to collect across the whole run.
withClassifybooleannofalseAI 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.

FieldTypeDescription
trademarkNamestringThe trademark / sign denomination as registered.
applicantNamestringOwner / applicant (titular) of the trademark.
niceClassintegerNice classification class number (1 to 45).
classDescriptionstringGoods or services covered by the class.
statusstringRegistered or Pending application.
statusCodestringRaw source indicator: C = registered certificate, otherwise pending file.
typestringRecord type. Always Trademark.
signTypestringDenominative (word) or Figurative (logo).
hasLogobooleanWhether the mark includes a figurative logo.
certificateNumberstringCertificate number (registered) or file number (pending).
expedientestringSame identifier as certificateNumber, kept for convenience.
registrationYearintegerYear the record was registered or filed.
expiryDatestringValidity / expiry date of the registration (YYYY-MM-DD).
officestringIssuing INDECOPI office code (for example OSD).
registryIdstringInternal registry record id.
countrystringAlways Peru.
searchTermstringThe input name that produced this record.
recordUrlstringDirect link to the official INDECOPI record page.
aiIndustrystringAI-inferred market vertical for the mark. null unless the withClassify add-on is on.
aiBrandDescriptorstringAI short descriptor of the likely brand/product. null unless withClassify is on.
aiCategoriesstring[]AI category tags. null unless withClassify is on.
sourcestringData source label (INDECOPI Peru).
observedAtstringISO 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:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "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 (result event). See the pricing tab for the current per-result price.
  • AI classification is a separate add-on. When withClassify is on, each successfully produced classification bills a separate ai_classify event. It is off by default.
  • No charge on failure. If a run errors, the actor writes a single item with a populated error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on 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 withClassify add-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.

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.