Watch Database avatar

Watch Database

Under maintenance
Try for free

Pay $39.00 for 1,000 results

Go to Store
This Actor is under maintenance.

This Actor may be unreliable while under maintenance. Would you like to try a similar Actor instead?

See alternative Actors
Watch Database

Watch Database

making-data-meaningful/watch-database
Try for free

Pay $39.00 for 1,000 results

Watch Database is a comprehensive repository featuring detailed watch specifications, high-quality images, movement, caliber information, and more.

Watch Specs API Integration

Overview

This Apify Actor fetches various watch-related details, including brands, models, families, and individual watch specifications. The Actor supports both GET and POST requests depending on the selected operation.

API Endpoints

Important Note:

Only include the parameters required for the selected selectPageType endpoint and leave the rest blank. Unnecessary parameters should not be populated to prevent incorrect API calls.

The Actor provides access to the following API endpoints:

EndpointDescription
get-all-watch-makesRetrieves all available watch makes
get-all-watch-models-by-makeidRetrieves all watch models for a given {make ID}
get-all-watch-family-by-makeid-and-modelidRetrieves all watch families for a given {make ID} and {model ID}**
get-watches-by-makeidRetrieves watches based on a specific {make ID} with pagination
get-watches-by-modelidRetrieves watches based on a specific {model ID} with pagination
get-watches-by-familyidRetrieves watches based on a specific {family ID} with pagination
get-watch-details-by-watchidRetrieves detailed information about a specific watch by its {watch ID}
search-referenceSearches for watches based on a reference term (POST request)

Input Parameters

The Actor expects an input JSON with the following structure:

1{
2  "selectPageType": "get-all-watch-makes",
3  "watchId": "",
4  "makeId": "",
5  "modelId": "",
6  "familyId": "",
7  "page": 1,
8  "limit": 10,
9  "referenceSearchTerm": ""
10}

Important Note:

Only include the parameters required for the selected selectPageType endpoint and leave the rest blank. Unnecessary parameters should not be populated to prevent incorrect API calls.

Usage Instructions

  1. Deploy the Actor on Apify.
  2. Provide the necessary input parameters in JSON format.
  3. Run the Actor.
  4. The Actor will process the API request and return the data in the dataset.

Error Handling

If an invalid selectPageType is provided, the Actor will log an error message and terminate execution. In case of API request failure, the error details will be logged for debugging.

Dependencies

The Actor relies on the following dependencies:

  • axios for making HTTP requests
  • form-data for handling POST requests with form data
  • apify for Actor execution

Example Output

1[
2  {
3    "id": 12345,
4    "brand": "Rolex",
5    "model": "Submariner",
6    "family": "Diver",
7    "price": "$10,000"
8  }
9]

OTHER INFO

Scrape single-page in JavaScript template

A template for scraping data from a single web page in JavaScript (Node.js). The URL of the web page is passed in via input, which is defined by the input schema. The template uses the Axios client to get the HTML of the page and the Cheerio library to parse the data from it. The data are then stored in a dataset where you can easily access them.

The scraped data in this template are page headings but you can easily edit the code to scrape whatever you want from the page.

Included features

  • Apify SDK - toolkit for building Actors
  • Input schema - define and easily validate a schema for your Actor's input
  • Dataset - store structured data where each object stored has the same attributes
  • Axios client - promise-based HTTP Client for Node.js and the browser
  • Cheerio - library for parsing and manipulating HTML and XML

How it works

  1. Actor.getInput() gets the input where the page URL is defined

  2. axios.get(url) fetches the page

  3. cheerio.load(response.data) loads the page data and enables parsing the headings

  4. This parses the headings from the page and here you can edit the code to parse whatever you need from the page

    $("h1, h2, h3, h4, h5, h6").each((_i, element) => {...});
  5. Actor.pushData(headings) stores the headings in the dataset

Resources

Getting started

For complete information see this article. In short, you will:

  1. Build the Actor
  2. Run the Actor

Pull the Actor for local development

If you would like to develop locally, you can pull the existing Actor from Apify console using Apify CLI:

  1. Install apify-cli

    Using Homebrew

    brew install apify-cli

    Using NPM

    npm -g install apify-cli
  2. Pull the Actor by its unique <ActorId>, which is one of the following:

    • unique name of the Actor to pull (e.g. "apify/hello-world")
    • or ID of the Actor to pull (e.g. "E2jjCZBezvAZnX8Rb")

    You can find both by clicking on the Actor title at the top of the page, which will open a modal containing both Actor unique name and Actor ID.

    This command will copy the Actor into the current directory on your local machine.

    apify pull <ActorId>

Documentation reference

To learn more about Apify and Actors, take a look at the following resources:

Developer
Maintained by Community

Actor Metrics

  • 3 monthly users

  • 2 bookmarks

  • >99% runs succeeded

  • Created in Feb 2025

  • Modified 2 days ago

Categories