{
  "data": {
    "id": "Y0Mb5AYv0vKGV31bK",
    "userId": "HIMU0xktu1JeZb4Xl",
    "name": "tennisexplorer-match-results-scraper",
    "username": "fetch_cat",
    "description": "Export public TennisExplorer match results by date and tour, with players, scores, set results, tournament context, odds, and source links.",
    "isPublic": true,
    "createdAt": "2026-08-27T17:21:40.756Z",
    "modifiedAt": "2026-08-27T23:15:33.513Z",
    "taggedBuilds": {
      "latest": {
        "buildId": "FRxekexPwbeUkv3W1",
        "finishedAt": "2026-08-27T22:45:56.521Z",
        "buildNumberInt": 100004,
        "buildNumber": "0.1.4"
      }
    },
    "stats": {
      "totalBuilds": 5,
      "totalRuns": 37,
      "totalUsers": 2,
      "totalUsers7Days": 1,
      "totalUsers30Days": 1,
      "totalUsers90Days": 1,
      "lastRunStartedAt": "2026-09-21T09:06:38.267Z",
      "actorReviewCount": 0,
      "actorReviewRating": 0,
      "bookmarkCount": 0,
      "publicActorRunStats30Days": {
        "ABORTED": 0,
        "FAILED": 0,
        "SUCCEEDED": 25,
        "TIMED-OUT": 0,
        "TOTAL": 25
      }
    },
    "versions": [
      {
        "versionNumber": "0.1",
        "sourceType": "SOURCE_FILES",
        "buildTag": "latest"
      }
    ],
    "defaultRunOptions": {
      "build": "latest",
      "timeoutSecs": 300,
      "memoryMbytes": 512
    },
    "exampleRunInput": {
      "body": "{\"dates\":[\"2026-08-27\"],\"tours\":[\"wta-single\"],\"maxItems\":5}",
      "contentType": "application/json; charset=utf-8"
    },
    "categories": [
      "DEVELOPER_TOOLS",
      "OTHER"
    ],
    "isDeprecated": false,
    "title": "TennisExplorer Match Results Scraper",
    "pictureUrl": "https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/HIMU0xktu1JeZb4Xl-actor-Y0Mb5AYv0vKGV31bK-EbLQonJ83X-actor-icon.png",
    "seoTitle": "Tennis Match Results Scraper | TennisExplorer",
    "seoDescription": "Export public TennisExplorer match results by date and tour with players, scores, set results, tournament context, odds, source links, and API-ready rows.",
    "pricingInfos": [
      {
        "pricingModel": "PAY_PER_EVENT",
        "startedAt": "2026-08-27T17:23:20.000Z",
        "reasonForChange": "Initial per-result pricing keeps match-result exports predictable across account tiers.",
        "pricingPerEvent": {
          "actorChargeEvents": {
            "start": {
              "eventTitle": "Start",
              "eventDescription": "One-time fee per run",
              "eventPriceUsd": 0.005,
              "isOneTimeEvent": true
            },
            "item": {
              "eventTitle": "Match result exported",
              "eventDescription": "Charged only after a public match result is saved.",
              "eventTieredPricingUsd": {
                "FREE": {
                  "tieredEventPriceUsd": 0.00667
                },
                "BRONZE": {
                  "tieredEventPriceUsd": 0.0058
                },
                "SILVER": {
                  "tieredEventPriceUsd": 0.004524
                },
                "GOLD": {
                  "tieredEventPriceUsd": 0.00348
                },
                "PLATINUM": {
                  "tieredEventPriceUsd": 0.00232
                },
                "DIAMOND": {
                  "tieredEventPriceUsd": 0.001624
                }
              },
              "isPrimaryEvent": true
            }
          }
        },
        "createdAt": "2026-08-27T17:23:20.776Z",
        "apifyMarginPercentage": 0.2
      },
      {
        "pricingModel": "PAY_PER_EVENT",
        "startedAt": "2026-08-27T17:27:27.000Z",
        "reasonForChange": "Per-result prices were updated to keep exports predictable across account tiers.",
        "pricingPerEvent": {
          "actorChargeEvents": {
            "start": {
              "eventTitle": "Start",
              "eventDescription": "One-time fee per run",
              "eventPriceUsd": 0.005,
              "isOneTimeEvent": true
            },
            "item": {
              "eventTitle": "Match result exported",
              "eventDescription": "Charged only after a public match result is saved.",
              "eventTieredPricingUsd": {
                "FREE": {
                  "tieredEventPriceUsd": 0.0066792
                },
                "BRONZE": {
                  "tieredEventPriceUsd": 0.005808
                },
                "SILVER": {
                  "tieredEventPriceUsd": 0.0045303
                },
                "GOLD": {
                  "tieredEventPriceUsd": 0.0034848
                },
                "PLATINUM": {
                  "tieredEventPriceUsd": 0.0023232
                },
                "DIAMOND": {
                  "tieredEventPriceUsd": 0.0016263
                }
              },
              "isPrimaryEvent": true
            }
          }
        },
        "createdAt": "2026-08-27T17:27:27.949Z",
        "apifyMarginPercentage": 0.2
      }
    ],
    "notice": "NONE",
    "isCritical": false,
    "isGeneric": false,
    "hasNoDataset": false,
    "isSourceCodeHidden": true,
    "standbyUrl": null,
    "actorPermissionLevel": "LIMITED_PERMISSIONS",
    "readmeSummary": "## Tennis Match Results Scraper for TennisExplorer\n\nScrapes public TennisExplorer match result pages to produce date- and tour-filtered, normalized match rows for tennis data workflows. Extracted data per match includes source and match links plus a match identifier, tournament context (tournament name and link, selected tour and date), both player names and public profile links, the identified winner, final score and set-by-set score pairs, and publicly displayed pre-match odds; optional values such as round and match status are included when shown on the source page. Outputs are structured as clean, joinable records optimized for historical archives, daily ATP/WTA feeds, score and player-performance analysis, odds integration, and downstream spreadsheet, database, dashboard, or AI workflows.\n\n## Use cases\n\n- Build date-based historical tennis result archives.  \n- Refresh daily ATP and WTA completed-match feeds.  \n- Monitor completed matches for ATP and WTA on a calendar date basis.  \n- Feed player-performance, score-analysis, and match-stat workflows.  \n- Join match results to existing player, tournament, or odds data.  \n- Export normalized match rows to spreadsheets, databases, dashboards, or AI pipelines.  \n- Provide repeatable public-match exports for tennis analysts, sports-data teams, journalists, and developers.",
    "deploymentKey": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClRF9DkaSkXQQCZKTVmHW5kjhRNCQ4nVrAk1n+TwVMwucsJpUJifEQIdtLPo7okN1lDW2R93fGKlUf7TAoGg51YLo9+hdLwnQLNpOXNKcrQRectdA6Zw6P35x0tMZC7Q/zDQUkeiCzAg7d5nMFOZEMOw4bKKZ18EIQyZff4yz/vYVr8wv0VyGdC6hr3mtqcajvyFZSFhR2CKzg9FlPq/QQ1OuTOJdvAnDoTCE7/+rbwhfs09+sl1OtBSB+zGOtaj4//FAD4RRJ0PNoKaW8eXknNfzGK3kA1MBLy0yRbavEvOdOpTVmxL8qUl36rPE6WAe8o6fly6NwYag8kJa4pLHL \n"
  }
}