Skip to main content

apify-nike-client

Nike.com listings (PLP) and full product detail (PDP), straight from the api.nike.com consumer API.

Python client for the rl1987/nike-api-scraper Apify Actor. No local scraping, no proxy management, no anti-bot maintenance — the Actor runs on Apify's infrastructure and this package just starts it, waits, and hands you back the dataset as plain Python dicts.

Install · Quickstart · Getting an API token · Input reference · Output fields · Error handling · Pricing · Async / long-running runs · Links

Install

pip install apify-nike-client

Requires Python 3.9+. Only dependency is requests.

Quickstart

from apify_nike_client import NikeClient

client = NikeClient(api_token="apify_api_...")  # see "Getting an API token" below
items = client.run({"searchTerms": ["air force 1"], "fetchProductDetails": True, "maxItems": 20})

for item in items:
    print(item)

Real output from the example above (trimmed to a few fields):

{"title": "Nike Air Force 1 '07", "colorDescription": "White/Black", "currentPrice": 115, "url": "https://www.nike.com/t/air-force-1-07-mens-shoes-jBrhbr/CT2302-100"}

run() blocks until the Actor finishes (usually a few seconds to ~30s depending on maxItems) and returns a plain list[dict] — the Actor's dataset, one dict per result row.

Getting an API token

  1. Sign up for a free account at console.apify.com.

  2. Go to Settings → Integrations and copy your Personal API token.

  3. Pass it to the client: NikeClient(api_token="..."), or read it from an environment variable:

    import os
    client = NikeClient(api_token=os.environ["APIFY_TOKEN"])
    

Never hardcode the token in source control — use an environment variable or secrets manager.

Input reference

run() takes a single dict matching the Actor's input schema. Full/authoritative schema: the Input tab on the Actor's Apify page.

Field Type Default Description
categoryUrls list[str] — Nike category or search-results page URLs (PLP), paginated to the end.
searchTerms list[str] — Free-text searches, e.g. ["air force 1"].
productUrls list[str] — Individual Nike product page URLs (PDP).
styleColors list[str] — Bare Nike style codes, e.g. "CW2288-111".
fetchProductDetails bool False Fetch full PDP detail for every listing product.
fetchSizeAvailability bool False Attach live per-size stock to listing products.
maxProductsPerCategory int 0 Cap per category/search. 0 = all.
maxItems int 0 Global cap on output rows. 0 = no cap.
country str "US" Marketplace — affects price, currency, and stock.

At least one of categoryUrls, searchTerms, productUrls, or styleColors is required.

Output fields

Each dict in the returned list is one row from the Actor's dataset. Common fields:

title, subtitle, colorDescription, styleColor, currentPrice, fullPrice, discountPercentage, isOnSale, imageUrl, url, categoryUrl; PDP rows add description, sizes[] (with gtin, available), colors[], galleryImageUrls.

Exact field availability can vary by input flags (see table above) — treat unfamiliar/missing keys as optional and use .get() rather than [...] indexing.

Error handling

from apify_nike_client import NikeClient, ApifyActorError
import requests

client = NikeClient(api_token="...")

try:
    items = client.run({"searchTerms": ["air force 1"], "fetchProductDetails": True, "maxItems": 20})
except ApifyActorError as e:
    # The Actor run itself failed, timed out, or was aborted on the Apify side.
    print(f"Actor run did not succeed: {e}")
except requests.HTTPError as e:
    # Bad token, malformed input, rate limiting, etc. — an HTTP-level error
    # calling the Apify API (not the Actor run).
    print(f"Apify API request failed: {e}")

ApifyActorError is raised when the run reaches a terminal non-success status (FAILED, TIMED-OUT, ABORTED) or doesn't finish within timeout_secs (default 300s — raise it for run() calls with a large maxItems, e.g. NikeClient(api_token="...", timeout_secs=900)).

Pricing

Pay-per-event: $0.001/listing row, $0.002/full-detail row, $0.001/product enriched with live size availability. No subscription — see the Actor's pricing tab for current rates. Apify also includes a free monthly usage tier that covers light use.

Advanced: longer timeouts & polling

client = NikeClient(api_token="...", timeout_secs=900)  # allow up to 15 min
items = client.run(actor_input, poll_interval_secs=3.0)   # poll less aggressively

Links

License

MIT

Metadata

Release files for apify-nike-client 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for apify-nike-client 0.1.1
File Size Uploaded
apify_nike_client-0.1.1.tar.gz 7.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for apify-nike-client 0.1.1
File Interpreter ABI Platform
apify_nike_client-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 14.6 kB

Release files / apify_nike_client-0.1.1.tar.gz

Download URL apify_nike_client-0.1.1.tar.gz
Size 7.1 kB
Tags Source
SHA-256 checksum
How to use checksums
66a3c8904ba10d041687a8e1bde81cf57d76898d2ef81fe1b89ce234e1855942
BLAKE2b-256 checksum
How to use checksums
26f112905a84044862108b1327a2e5bbe1c469cdee4696d84adc0da3463c64d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.0

Release files / apify_nike_client-0.1.1-py3-none-any.whl

Download URL apify_nike_client-0.1.1-py3-none-any.whl
Size 7.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0092c7e37d37676c1b24ffde01068895f092d955f896ddb362f086bd87f8811b
BLAKE2b-256 checksum
How to use checksums
1ee867586afb869a1322686fa23e7bd9615a40427b3f54e2500a1cd8e7091d8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.0

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page