US ITC Section 337 Patent Investigations & Filings Scraper avatar

US ITC Section 337 Patent Investigations & Filings Scraper

Pricing

from $10.20 / 1,000 results

Go to Apify Store
US ITC Section 337 Patent Investigations & Filings Scraper

US ITC Section 337 Patent Investigations & Filings Scraper

Scrape US ITC Section 337 patent-import investigations: complaints, notices, determinations, exclusion and cease-and-desist orders and every docket filing with parties, firms, accused products, status and dates. Filter by investigation number, type, party or date. Export to JSON, CSV or Excel.

Pricing

from $10.20 / 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

3 days ago

Last modified

Categories

Share

US ITC Section 337 Patent Investigations & Filings Scraper

US ITC Section 337 Patent Investigations & Filings Scraper

Here is one real result, with every field the actor returns in documents mode:

{
"documentId": "890685",
"documentType": "Voting Sheet",
"documentTitle": null,
"securityLevel": "Public",
"isPublic": true,
"investigationNumber": "337-TA-1409",
"investigationNumberRaw": "337-1409",
"investigationTitle": "Certain Storage Containers and Toolboxes, Organizers, Component Boxes, Coolers, and Accessories Used Therewith; Inv. No. 337-TA-1409 (Violation)",
"accusedProducts": "Certain Storage Containers and Toolboxes, Organizers, Component Boxes, Coolers, and Accessories Used Therewith",
"investigationPhase": "Violation",
"investigationStatus": "Active",
"investigationType": "Sec 337",
"firmOrganization": "USITC",
"filedBy": "Lisa R. Barton",
"onBehalfOf": "Office of the Secretary",
"documentDate": "2026-08-05",
"officialReceivedDate": "2026-08-06T09:52:00Z",
"modifiedDate": "2026-08-06T10:26:34Z",
"actionJacketControlNumber": "GC-26-265",
"memorandumControlNumber": null,
"attachmentListUri": "https://edis.usitc.gov/data/attachment/890685",
"investigationUrl": "https://edis.usitc.gov/data/document?investigationNumber=337-1409",
"source": "USITC EDIS (Section 337)",
"observedAt": "2026-08-10T14:36:24.896Z"
}

The most complete US ITC Section 337 scraper available. It returns every field the ITC EDIS docket exposes for each patent-import investigation and filing, including the investigation identity, accused products, phase and status, the filing type, security level, firm, filer and on-behalf-of party, control numbers and dates, plus an investigations mode that rolls each case up with parties, law firms, document counts and remedial-order flags, and gives you filters for investigation number, date range, document type and party to target exactly the records you need.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor reads the US International Trade Commission EDIS docket for Section 337 patent-import investigations, applies the filters you pass as input, and writes normalized records to the run's dataset. It runs in one of two modes:

  • documents (default): one row per docket filing (complaints, notices, determinations, orders, opinions), with the filing metadata plus the parent investigation context.
  • investigations: one summary row per Section 337 case, rolling up parties, law firms, document counts, the filing types present, and remedial-order flags (hasComplaint, hasFinalDetermination, hasRemedialOrder and more).

Dates are normalized (filing dates to YYYY-MM-DD, received / modified timestamps kept with time), and missing source values are returned as null. By default only public filings are returned; enable includeConfidential to include confidential filings (metadata only, no downloadable content).

Quickstart

Open the actor, paste this into the input, and press Run. It returns up to 50 public filings from investigation 337-TA-1409.

{
"mode": "documents",
"investigationNumbers": ["337-TA-1409"],
"maxDocuments": 50
}

Leave investigationNumbers empty to search by filing date range instead (defaults to the last 90 days). Every input field is optional.

Input reference

FieldTypeRequiredDefaultDescription
modeenumnodocumentsdocuments = one row per docket filing. investigations = one summary row per Section 337 case.
investigationNumbersstring[]no["337-TA-1409"]Section 337 investigation numbers to pull the full docket for. Accepts 337-TA-1409, 337-1409, or 1409. Leave empty to search by filing date range.
fromFiledDatestringno90 days agoOnly include filings officially received on or after this date (YYYY-MM-DD). Ignored when investigation numbers are given.
toFiledDatestringnotodayOnly include filings officially received on or before this date (YYYY-MM-DD). Ignored when investigation numbers are given.
documentTypesstring[]no(empty)Keep only filings whose type contains one of these terms, for example Complaint, Notice, Order, Initial Determination, Opinion.
firmOrganizationstringno(empty)Keep only filings whose filing firm / organization or on-behalf-of party contains this text (for example a company or law-firm name).
includeConfidentialbooleannofalseInclude confidential filings (metadata only, no downloadable content). By default only public filings are returned.
maxDocumentsintegerno50Maximum document / filing rows to collect (documents mode).
maxInvestigationsintegerno30Maximum investigation summary rows to collect (investigations mode).

Output reference

One dataset item per filing (documents mode) or per case (investigations mode). Types: string, boolean, integer, string[], or null when the source value is absent.

FieldTypeModeDescription
investigationNumberstringbothInvestigation No. (337-TA-####).
investigationNumberRawstringbothEDIS internal investigation number.
investigationTitlestringbothFull investigation title.
accusedProductsstringbothAccused products / subject goods.
investigationTypestringbothInvestigation type (Sec 337).
investigationPhasestringbothPhase (Violation, Review, and so on).
investigationStatusstringbothStatus (Active, Inactive, Preinstitution).
investigationUrlstringbothITC notices page for the investigation.
documentIdstringdocumentsEDIS document id.
documentTypestringdocumentsFiling type (Complaint, Notice, Order, Determination and so on).
documentTitlestringdocumentsFiling title, or null.
securityLevelstringdocumentsPublic or Confidential.
isPublicbooleandocumentsWhether the filing is public.
firmOrganizationstringdocumentsFiling firm / organization.
filedBystringdocumentsPerson who filed.
onBehalfOfstringdocumentsParty the filing was made on behalf of.
documentDatestringdocumentsDocument date (YYYY-MM-DD).
officialReceivedDatestringdocumentsOfficial received date / time.
modifiedDatestringdocumentsLast modified date / time.
actionJacketControlNumberstringdocumentsAction jacket control number, or null.
memorandumControlNumberstringdocumentsMemorandum control number, or null.
attachmentListUristringdocumentsLink to the filing's attachments.
complainantsstring[]investigationsComplainant parties.
complainantCountintegerinvestigationsNumber of complainants.
lawFirmsstring[]investigationsLaw firms / organizations on the docket.
documentCountintegerinvestigationsNumber of filings collected for the case.
firstFiledDatestringinvestigationsEarliest filing date collected (YYYY-MM-DD).
lastFiledDatestringinvestigationsLatest filing date collected (YYYY-MM-DD).
documentTypesstring[]investigationsFiling types present on the docket.
hasComplaintbooleaninvestigationsDocket includes a complaint.
hasNoticeOfInvestigationbooleaninvestigationsDocket includes a notice of investigation / institution.
hasInitialDeterminationbooleaninvestigationsDocket includes an initial determination.
hasFinalDeterminationbooleaninvestigationsDocket includes a final determination / opinion.
hasRemedialOrderbooleaninvestigationsDocket includes an exclusion / cease-and-desist order.
latestDocumentTypestringinvestigationsMost recent filing type.
latestDocumentTitlestringinvestigationsMost recent filing title.
latestDocumentDatestringinvestigationsMost recent filing date (YYYY-MM-DD).
sourcestringbothData source.
observedAtstringbothISO 8601 timestamp of when the record was collected.

On a failed run, the actor writes a single item with a populated error field instead, and does not charge for it.

Example output record

Real record from a live run (input {"mode": "documents", "investigationNumbers": ["337-TA-1409"], "maxDocuments": 50}):

{
"documentId": "890685",
"documentType": "Voting Sheet",
"documentTitle": null,
"securityLevel": "Public",
"isPublic": true,
"investigationNumber": "337-TA-1409",
"investigationNumberRaw": "337-1409",
"investigationTitle": "Certain Storage Containers and Toolboxes, Organizers, Component Boxes, Coolers, and Accessories Used Therewith; Inv. No. 337-TA-1409 (Violation)",
"accusedProducts": "Certain Storage Containers and Toolboxes, Organizers, Component Boxes, Coolers, and Accessories Used Therewith",
"investigationPhase": "Violation",
"investigationStatus": "Active",
"investigationType": "Sec 337",
"firmOrganization": "USITC",
"filedBy": "Lisa R. Barton",
"onBehalfOf": "Office of the Secretary",
"documentDate": "2026-08-05",
"officialReceivedDate": "2026-08-06T09:52:00Z",
"modifiedDate": "2026-08-06T10:26:34Z",
"actionJacketControlNumber": "GC-26-265",
"memorandumControlNumber": null,
"attachmentListUri": "https://edis.usitc.gov/data/attachment/890685",
"investigationUrl": "https://edis.usitc.gov/data/document?investigationNumber=337-1409",
"source": "USITC EDIS (Section 337)",
"observedAt": "2026-08-10T14:36:24.896Z"
}

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~usitc-section-337-investigations-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"mode":"documents","investigationNumbers":["337-TA-1409"],"maxDocuments":50}'

Start a run asynchronously (investigations mode, by date range):

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~usitc-section-337-investigations-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"mode":"investigations","fromFiledDate":"2026-01-01","toFiledDate":"2026-06-30","maxInvestigations":30}'

Apify CLI:

apify call scrapers_lat/usitc-section-337-investigations-scraper \
--input '{"documentTypes":["Complaint"],"fromFiledDate":"2026-01-01"}'

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.
  • 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 maxDocuments / maxInvestigations.

FAQ and troubleshooting

A run returned 0 records. Why? No filings matched the filters. If you searched by date range, widen fromFiledDate / toFiledDate (the default window is the last 90 days) or remove documentTypes / firmOrganization. If you searched by investigation number, confirm the number exists. Zero-result runs are not charged.

What is the difference between the two modes? documents returns one row per docket filing; investigations returns one rolled-up summary row per case, with parties, counts and remedial-order flags. Choose the one that matches how you want to analyze the data.

How do I find cases that ended in an exclusion order? Run investigations mode and filter results on hasRemedialOrder being true, optionally combined with hasFinalDetermination.

Why do some filings have no title or content? Confidential filings expose metadata but no downloadable content, and some routine filings carry no separate title. Missing source values are returned as null, never invented. Set includeConfidential to include confidential entries.

Can I pull several investigations at once? Yes. Pass multiple entries in investigationNumbers; the docket for each is collected up to maxDocuments.

Is this an official ITC tool? No. This actor is independent and has no affiliation with the US International Trade Commission. It reads only data that is publicly available through ITC EDIS. Use it in accordance with the ITC's terms of service.

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 the US International Trade Commission. Accesses only publicly available ITC EDIS data. Use in accordance with the ITC's terms of service.