17TRACK Package Tracking Scraper avatar

17TRACK Package Tracking Scraper

Pricing

from $3.00 / 1,000 tracked packages

Go to Apify Store
17TRACK Package Tracking Scraper

17TRACK Package Tracking Scraper

Track public 17TRACK packages with managed browser access. Export shipment status, carriers, routes and checkpoint history as JSON or CSV.

Pricing

from $3.00 / 1,000 tracked packages

Rating

0.0

(0)

Developer

Muhammad Afzal

Muhammad Afzal

Maintained by Community

Actor stats

0

Bookmarked

14

Total users

9

Monthly active users

6 days ago

Last modified

Share

Browser access: Package lookups use an owner-managed Oxylabs Agent Browser session. Access verification, provider quota limits and source outages can still prevent a lookup. A blocked or failed lookup produces diagnostics and no result charge; the synthetic start fee still applies. The default demonstration number is not a real shipment.

Track public package numbers across 17TRACK-supported carriers and export a consistent dataset containing the current shipment status, carrier handoffs, route, delivery estimate, latest checkpoint, and event history.

Free-plan limit: Apify free-plan users can receive at most 5 delivered package records per run. Paid and agentic-payment runs retain their requested record count, subject to the configured run charge cap.

What this Actor extracts

FieldMeaning
trackingNumberIdentifier supplied in the Actor input
displayTrackingNumberIdentifier shown by 17TRACK
carriers / carrierIdsDetected carriers and 17TRACK carrier IDs
status / statusCategorySource status plus a stable lifecycle category
statusDescriptionLatest public tracking update
originCountry / destinationCountryPublic route countries when available
estimatedDelivery / daysInTransitDelivery window and elapsed transit time
latestEvent / eventsLatest checkpoint and full carrier event history
sourceUrl / retrievedAtProvenance and retrieval timestamp

Use it for order-support workflows, shipment monitoring, logistics analysis, marketplace operations, and carrier-handoff reconciliation. It is not an official 17TRACK API client, does not log into private accounts, and does not bypass CAPTCHA or access controls.

Input

{
"trackingNumbers": ["7777777770"],
"language": "en",
"includeRaw": false,
"requestTimeoutSecs": 45
}

trackingNumbers accepts 1–10 values. Free-plan runs deliver at most 5 package records even if more IDs are provided; the limit is applied before lookups and each dataset write. Paid and agentic-payment runs retain the requested record count, subject to the run charge cap. The default 7777777770 invokes 17TRACK's public demonstration result and is marked isDemoData: true; replace it with real package IDs for production use. Duplicate numbers are removed. Invalid IDs are reported in OUTPUT and never billed as results.

carrier defaults to 0 (automatic detection). For ambiguous numbers, set the known 17TRACK carrier code; FedEx is 100003 and DHL Paket is 7041. The code applies to every number in the run.

language localizes page text. includeRaw keeps the page-owned structured shipment object when available. requestTimeoutSecs is a per-package bound. The Actor owner supplies the managed browser service; users do not need their own proxy or Oxylabs account.

Output example

{
"trackingNumber": "7777777770",
"displayTrackingNumber": "TestNumber00017",
"carrierIds": [],
"carriers": ["USPS(International Parcels)", "China Post"],
"status": "In transit",
"subStatus": null,
"statusDescription": "CHINA,WUHAN, Processed Through Facility",
"statusCategory": "in_transit",
"daysInTransit": 5,
"originCountry": "China",
"destinationCountry": "United States",
"estimatedDelivery": "2022-04-05 - 2022-04-06",
"latestEvent": {
"timestamp": "2022-03-25 19:57",
"description": "CHINA,WUHAN, Processed Through Facility",
"location": "CHINA",
"carrier": null
},
"events": [],
"sourceUrl": "https://t.17track.net/en#nums=7777777770",
"retrievedAt": "2026-09-09T00:00:00.000Z",
"isDemoData": true,
"raw": null
}

The default dataset stays homogeneous: only validated package records are written. OUTPUT in the default key-value store contains DATA, EMPTY, BLOCKED, REJECTED, or FAILED, plus attempted/delivered counts and warnings.

Pricing

This Actor uses pay-per-event pricing, with Apify compute and managed browser access included. No separate platform-usage fee is passed to users for this Actor run. Only schema-valid package records written to the default dataset incur a result charge; failed or empty lookups incur no result charge. The synthetic start fee still applies.

Current prices until 29 October 2026

Apify tierPer package (USD)Per 1,000 packages (USD)
FREE$0.007$7.00
BRONZE$0.006$6.00
SILVER$0.005$5.00
GOLD / PLATINUM / DIAMOND$0.003$3.00

The current start fee is $0.00005 per run.

Scheduled prices from 29 October 2026

The approved increase is scheduled in Apify for 29 October 2026 at 17:20:35 UTC (22:20:35 Pakistan time). Current prices remain active until then.

Apify tierDiscount from listPer package (USD)Per 1,000 packages (USD)
FREE0%$0.039$39.00
BRONZE2.5%$0.038025$38.025
SILVER5%$0.03705$37.05
GOLD / PLATINUM / DIAMOND20%$0.0312$31.20

The scheduled synthetic start fee is $0.005 per run in every tier. The start-fee floor overrides tier discounts. For FREE-tier pricing, one package totals $0.044 and ten packages total $0.395, including the single start fee. At GOLD-tier pricing, one package totals $0.0362 and ten total $0.317. Free-plan runs still attempt and deliver at most five packages.

The scheduled minimum selectable run charge cap is $0.044, enough for the start fee and one package at the list price. Your selected run cap can stop work before the requested number of packages is delivered. The authoritative current and scheduled event prices are shown in Apify's pricing settings.

Other Apify products or usage outside this Actor run may follow your account plan.

Reliability and limits

The Actor opens the public 17TRACK result page in one US-targeted Oxylabs Agent Browser session per run and captures the structured page-owned tracking response. It preserves that browser's identity and cookies across package lookups. If the structured response is unavailable, it falls back to the rendered tracking view. The first-visit tutorial is dismissed and its sample result is ignored for real packages. Only a matching shipment is accepted. A blocked or failed lookup stops further requests; CAPTCHA solving, saved browser profiles and session recording are disabled, and there are no automatic connection or proxy retries.

Each run has a 120-second work budget, a 300-request limit and an 8 MiB observed-transfer threshold; in-flight traffic and provider metering can differ from these observations. Free-plan runs attempt at most five numbers. OUTPUT.providerUsage reports the selected provider, observed requests/transfer and any provider stop reason; it is not a provider invoice. Blocked and failed zero-result runs are marked failed with an actionable OUTPUT summary. HTTP 403/429, verification pages, upstream failure, no-match results, timeouts, missing operator credentials and provider quota failures remain distinct diagnostics. Remote browser processing lets the Actor run with a smaller Apify container; compute and browser-service costs are included in the listed event prices.

Results depend on what 17TRACK and the underlying carriers expose publicly. Newly created labels may take 24–48 hours to appear. Some carriers limit request volume or destination detail, and 17TRACK may require verification during high-risk traffic. The Actor will not solve CAPTCHAs or fabricate missing shipments.

API example

curl -X POST "https://api.apify.com/v2/acts/YOUR_ACTOR_ID/runs" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"trackingNumbers":["YOUR_TRACKING_NUMBER"],"language":"en","includeRaw":false,"requestTimeoutSecs":45}'

Avoid placing real tracking numbers in public logs or shared Task presets. Tracking history can reveal approximate locations and shipping relationships; retain and share output only for legitimate package-support and logistics purposes. Use of this Actor must comply with 17TRACK's terms, carrier terms, privacy law, and applicable platform rules. 17TRACK and carrier names are used descriptively; this Actor is not affiliated with or endorsed by them.