{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Play Reviews Scraper - Ratings, Replies & History",
    "description": "Scrape Google Play app reviews at depth: full review history, star ratings, developer replies, per-country review sets and the 1-5 star histogram. Filter by rating, date, app version or keyword before you pay. No browser, no login. Independent tool, not affiliated with Google LLC.",
    "version": "0.1",
    "x-build-id": "E8yjQnK4sbyjujqZW"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapesage~google-play-reviews-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapesage-google-play-reviews-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/scrapesage~google-play-reviews-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapesage-google-play-reviews-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/scrapesage~google-play-reviews-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapesage-google-play-reviews-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "appIds": {
            "title": "App IDs or URLs",
            "type": "array",
            "description": "The apps to pull reviews for. Accepts package names (`com.spotify.music`) or full Google Play URLs - one per row. Leave empty and use *Search terms* below if you only know the app by name.",
            "items": {
              "type": "string"
            }
          },
          "urlsFromFile": {
            "title": "Import app IDs from a file",
            "type": "string",
            "description": "Bulk import. Paste a block of package names or Google Play URLs (one per line), **or** paste a single link to a `.txt` / `.csv` / Google Sheet / Google Drive / Apify key-value-store file holding them. Blank lines, `#` comments, quotes and extra CSV columns are ignored. Adds to *App IDs or URLs*."
          },
          "searchTerms": {
            "title": "Search terms (find apps by name)",
            "type": "array",
            "description": "Search Google Play by name and pull reviews for the top matches - use this when you do not know the package name. Example: `habit tracker`.",
            "items": {
              "type": "string"
            }
          },
          "maxAppsPerSearchTerm": {
            "title": "Apps per search term",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "How many top search matches to take reviews from, for each search term.",
            "default": 3
          },
          "maxReviewsPerApp": {
            "title": "Max reviews per app",
            "minimum": 1,
            "type": "integer",
            "description": "Upper limit of reviews per app **per country**. Google serves reviews newest-first in pages of ~150; the Actor stops as soon as the source runs out.",
            "default": 200
          },
          "maxScannedPerApp": {
            "title": "Max reviews scanned per app",
            "minimum": 100,
            "type": "integer",
            "description": "Safety limit for **filtered** searches. A narrow filter (a rare keyword, one app version) can read an app's whole review history before it matches; this caps how many reviews are read per app and country while looking. Only applies when a filter is set - it never limits an unfiltered run. The run says so when the limit stops a search.",
            "default": 5000
          },
          "sort": {
            "title": "Sort reviews by",
            "enum": [
              "NEWEST",
              "RATING",
              "HELPFULNESS"
            ],
            "type": "string",
            "description": "Order Google returns reviews in. *Newest* is the only order that supports the date window efficiently.",
            "default": "NEWEST"
          },
          "countries": {
            "title": "Countries",
            "uniqueItems": true,
            "type": "array",
            "description": "Google Play serves a **different review set per country**. Pick as many as you need - each app is scraped once per country and rows carry the `country` they came from.",
            "items": {
              "type": "string",
              "enum": [
                "ad",
                "ae",
                "af",
                "ag",
                "ai",
                "al",
                "am",
                "ao",
                "aq",
                "ar",
                "as",
                "at",
                "au",
                "aw",
                "ax",
                "az",
                "ba",
                "bb",
                "bd",
                "be",
                "bf",
                "bg",
                "bh",
                "bi",
                "bj",
                "bl",
                "bm",
                "bn",
                "bo",
                "bq",
                "br",
                "bs",
                "bt",
                "bv",
                "bw",
                "by",
                "bz",
                "ca",
                "cc",
                "cd",
                "cf",
                "cg",
                "ch",
                "ci",
                "ck",
                "cl",
                "cm",
                "cn",
                "co",
                "cr",
                "cu",
                "cv",
                "cw",
                "cx",
                "cy",
                "cz",
                "de",
                "dj",
                "dk",
                "dm",
                "do",
                "dz",
                "ec",
                "ee",
                "eg",
                "eh",
                "er",
                "es",
                "et",
                "fi",
                "fj",
                "fk",
                "fm",
                "fo",
                "fr",
                "ga",
                "gb",
                "gd",
                "ge",
                "gf",
                "gg",
                "gh",
                "gi",
                "gl",
                "gm",
                "gn",
                "gp",
                "gq",
                "gr",
                "gs",
                "gt",
                "gu",
                "gw",
                "gy",
                "hk",
                "hm",
                "hn",
                "hr",
                "ht",
                "hu",
                "id",
                "ie",
                "il",
                "im",
                "in",
                "io",
                "iq",
                "ir",
                "is",
                "it",
                "je",
                "jm",
                "jo",
                "jp",
                "ke",
                "kg",
                "kh",
                "ki",
                "km",
                "kn",
                "kp",
                "kr",
                "kw",
                "ky",
                "kz",
                "la",
                "lb",
                "lc",
                "li",
                "lk",
                "lr",
                "ls",
                "lt",
                "lu",
                "lv",
                "ly",
                "ma",
                "mc",
                "md",
                "me",
                "mf",
                "mg",
                "mh",
                "mk",
                "ml",
                "mm",
                "mn",
                "mo",
                "mp",
                "mq",
                "mr",
                "ms",
                "mt",
                "mu",
                "mv",
                "mw",
                "mx",
                "my",
                "mz",
                "na",
                "nc",
                "ne",
                "nf",
                "ng",
                "ni",
                "nl",
                "no",
                "np",
                "nr",
                "nu",
                "nz",
                "om",
                "pa",
                "pe",
                "pf",
                "pg",
                "ph",
                "pk",
                "pl",
                "pm",
                "pn",
                "pr",
                "ps",
                "pt",
                "pw",
                "py",
                "qa",
                "re",
                "ro",
                "rs",
                "ru",
                "rw",
                "sa",
                "sb",
                "sc",
                "sd",
                "se",
                "sg",
                "sh",
                "si",
                "sj",
                "sk",
                "sl",
                "sm",
                "sn",
                "so",
                "sr",
                "ss",
                "st",
                "sv",
                "sx",
                "sy",
                "sz",
                "tc",
                "td",
                "tf",
                "tg",
                "th",
                "tj",
                "tk",
                "tl",
                "tm",
                "tn",
                "to",
                "tr",
                "tt",
                "tv",
                "tw",
                "tz",
                "ua",
                "ug",
                "um",
                "us",
                "uy",
                "uz",
                "va",
                "vc",
                "ve",
                "vg",
                "vi",
                "vn",
                "vu",
                "wf",
                "ws",
                "ye",
                "yt",
                "za",
                "zm",
                "zw"
              ],
              "enumTitles": [
                "Andorra (ad)",
                "United Arab Emirates (ae)",
                "Afghanistan (af)",
                "Antigua & Barbuda (ag)",
                "Anguilla (ai)",
                "Albania (al)",
                "Armenia (am)",
                "Angola (ao)",
                "Antarctica (aq)",
                "Argentina (ar)",
                "American Samoa (as)",
                "Austria (at)",
                "Australia (au)",
                "Aruba (aw)",
                "Åland Islands (ax)",
                "Azerbaijan (az)",
                "Bosnia & Herzegovina (ba)",
                "Barbados (bb)",
                "Bangladesh (bd)",
                "Belgium (be)",
                "Burkina Faso (bf)",
                "Bulgaria (bg)",
                "Bahrain (bh)",
                "Burundi (bi)",
                "Benin (bj)",
                "St. Barthélemy (bl)",
                "Bermuda (bm)",
                "Brunei (bn)",
                "Bolivia (bo)",
                "Caribbean Netherlands (bq)",
                "Brazil (br)",
                "Bahamas (bs)",
                "Bhutan (bt)",
                "Bouvet Island (bv)",
                "Botswana (bw)",
                "Belarus (by)",
                "Belize (bz)",
                "Canada (ca)",
                "Cocos (Keeling) Islands (cc)",
                "Congo - Kinshasa (cd)",
                "Central African Republic (cf)",
                "Congo - Brazzaville (cg)",
                "Switzerland (ch)",
                "Côte d’Ivoire (ci)",
                "Cook Islands (ck)",
                "Chile (cl)",
                "Cameroon (cm)",
                "China (cn)",
                "Colombia (co)",
                "Costa Rica (cr)",
                "Cuba (cu)",
                "Cape Verde (cv)",
                "Curaçao (cw)",
                "Christmas Island (cx)",
                "Cyprus (cy)",
                "Czechia (cz)",
                "Germany (de)",
                "Djibouti (dj)",
                "Denmark (dk)",
                "Dominica (dm)",
                "Dominican Republic (do)",
                "Algeria (dz)",
                "Ecuador (ec)",
                "Estonia (ee)",
                "Egypt (eg)",
                "Western Sahara (eh)",
                "Eritrea (er)",
                "Spain (es)",
                "Ethiopia (et)",
                "Finland (fi)",
                "Fiji (fj)",
                "Falkland Islands (fk)",
                "Micronesia (fm)",
                "Faroe Islands (fo)",
                "France (fr)",
                "Gabon (ga)",
                "United Kingdom (gb)",
                "Grenada (gd)",
                "Georgia (ge)",
                "French Guiana (gf)",
                "Guernsey (gg)",
                "Ghana (gh)",
                "Gibraltar (gi)",
                "Greenland (gl)",
                "Gambia (gm)",
                "Guinea (gn)",
                "Guadeloupe (gp)",
                "Equatorial Guinea (gq)",
                "Greece (gr)",
                "South Georgia & South Sandwich Islands (gs)",
                "Guatemala (gt)",
                "Guam (gu)",
                "Guinea-Bissau (gw)",
                "Guyana (gy)",
                "Hong Kong SAR China (hk)",
                "Heard & McDonald Islands (hm)",
                "Honduras (hn)",
                "Croatia (hr)",
                "Haiti (ht)",
                "Hungary (hu)",
                "Indonesia (id)",
                "Ireland (ie)",
                "Israel (il)",
                "Isle of Man (im)",
                "India (in)",
                "British Indian Ocean Territory (io)",
                "Iraq (iq)",
                "Iran (ir)",
                "Iceland (is)",
                "Italy (it)",
                "Jersey (je)",
                "Jamaica (jm)",
                "Jordan (jo)",
                "Japan (jp)",
                "Kenya (ke)",
                "Kyrgyzstan (kg)",
                "Cambodia (kh)",
                "Kiribati (ki)",
                "Comoros (km)",
                "St. Kitts & Nevis (kn)",
                "North Korea (kp)",
                "South Korea (kr)",
                "Kuwait (kw)",
                "Cayman Islands (ky)",
                "Kazakhstan (kz)",
                "Laos (la)",
                "Lebanon (lb)",
                "St. Lucia (lc)",
                "Liechtenstein (li)",
                "Sri Lanka (lk)",
                "Liberia (lr)",
                "Lesotho (ls)",
                "Lithuania (lt)",
                "Luxembourg (lu)",
                "Latvia (lv)",
                "Libya (ly)",
                "Morocco (ma)",
                "Monaco (mc)",
                "Moldova (md)",
                "Montenegro (me)",
                "St. Martin (mf)",
                "Madagascar (mg)",
                "Marshall Islands (mh)",
                "North Macedonia (mk)",
                "Mali (ml)",
                "Myanmar (Burma) (mm)",
                "Mongolia (mn)",
                "Macao SAR China (mo)",
                "Northern Mariana Islands (mp)",
                "Martinique (mq)",
                "Mauritania (mr)",
                "Montserrat (ms)",
                "Malta (mt)",
                "Mauritius (mu)",
                "Maldives (mv)",
                "Malawi (mw)",
                "Mexico (mx)",
                "Malaysia (my)",
                "Mozambique (mz)",
                "Namibia (na)",
                "New Caledonia (nc)",
                "Niger (ne)",
                "Norfolk Island (nf)",
                "Nigeria (ng)",
                "Nicaragua (ni)",
                "Netherlands (nl)",
                "Norway (no)",
                "Nepal (np)",
                "Nauru (nr)",
                "Niue (nu)",
                "New Zealand (nz)",
                "Oman (om)",
                "Panama (pa)",
                "Peru (pe)",
                "French Polynesia (pf)",
                "Papua New Guinea (pg)",
                "Philippines (ph)",
                "Pakistan (pk)",
                "Poland (pl)",
                "St. Pierre & Miquelon (pm)",
                "Pitcairn Islands (pn)",
                "Puerto Rico (pr)",
                "Palestinian Territories (ps)",
                "Portugal (pt)",
                "Palau (pw)",
                "Paraguay (py)",
                "Qatar (qa)",
                "Réunion (re)",
                "Romania (ro)",
                "Serbia (rs)",
                "Russia (ru)",
                "Rwanda (rw)",
                "Saudi Arabia (sa)",
                "Solomon Islands (sb)",
                "Seychelles (sc)",
                "Sudan (sd)",
                "Sweden (se)",
                "Singapore (sg)",
                "St. Helena (sh)",
                "Slovenia (si)",
                "Svalbard & Jan Mayen (sj)",
                "Slovakia (sk)",
                "Sierra Leone (sl)",
                "San Marino (sm)",
                "Senegal (sn)",
                "Somalia (so)",
                "Suriname (sr)",
                "South Sudan (ss)",
                "São Tomé & Príncipe (st)",
                "El Salvador (sv)",
                "Sint Maarten (sx)",
                "Syria (sy)",
                "Eswatini (sz)",
                "Turks & Caicos Islands (tc)",
                "Chad (td)",
                "French Southern Territories (tf)",
                "Togo (tg)",
                "Thailand (th)",
                "Tajikistan (tj)",
                "Tokelau (tk)",
                "Timor-Leste (tl)",
                "Turkmenistan (tm)",
                "Tunisia (tn)",
                "Tonga (to)",
                "Türkiye (tr)",
                "Trinidad & Tobago (tt)",
                "Tuvalu (tv)",
                "Taiwan (tw)",
                "Tanzania (tz)",
                "Ukraine (ua)",
                "Uganda (ug)",
                "U.S. Outlying Islands (um)",
                "United States (us)",
                "Uruguay (uy)",
                "Uzbekistan (uz)",
                "Vatican City (va)",
                "St. Vincent & Grenadines (vc)",
                "Venezuela (ve)",
                "British Virgin Islands (vg)",
                "U.S. Virgin Islands (vi)",
                "Vietnam (vn)",
                "Vanuatu (vu)",
                "Wallis & Futuna (wf)",
                "Samoa (ws)",
                "Yemen (ye)",
                "Mayotte (yt)",
                "South Africa (za)",
                "Zambia (zm)",
                "Zimbabwe (zw)"
              ]
            },
            "default": [
              "us"
            ]
          },
          "language": {
            "title": "Language",
            "enum": [
              "af",
              "am",
              "ar",
              "az",
              "be",
              "bg",
              "bn",
              "bs",
              "ca",
              "cs",
              "da",
              "de",
              "el",
              "en",
              "es",
              "et",
              "eu",
              "fa",
              "fi",
              "fil",
              "fr",
              "gl",
              "gu",
              "he",
              "hi",
              "hr",
              "hu",
              "hy",
              "id",
              "is",
              "it",
              "iw",
              "ja",
              "ka",
              "kk",
              "km",
              "kn",
              "ko",
              "ky",
              "lo",
              "lt",
              "lv",
              "mk",
              "ml",
              "mn",
              "mr",
              "ms",
              "my",
              "ne",
              "nl",
              "no",
              "pa",
              "pl",
              "pt",
              "ro",
              "ru",
              "si",
              "sk",
              "sl",
              "sq",
              "sr",
              "sv",
              "sw",
              "ta",
              "te",
              "th",
              "tr",
              "uk",
              "ur",
              "uz",
              "vi",
              "zh",
              "zu"
            ],
            "type": "string",
            "description": "Store language. Affects the reviews returned and the app metadata text.",
            "default": "en"
          },
          "ratings": {
            "title": "Star ratings",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep only these star ratings. Leave empty for all. Filtered-out reviews are **never charged**.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4",
                "5"
              ],
              "enumTitles": [
                "1 star - critical (1)",
                "2 stars (2)",
                "3 stars (3)",
                "4 stars (4)",
                "5 stars - promoters (5)"
              ]
            }
          },
          "publishedAfter": {
            "title": "Published after",
            "type": "string",
            "description": "Keep only reviews posted on or after this date, e.g. `2026-01-01`. With *Newest first* the Actor stops paging as soon as it passes this date, so a narrow window costs less."
          },
          "publishedBefore": {
            "title": "Published before",
            "type": "string",
            "description": "Keep only reviews posted on or before this date, e.g. `2026-06-30`."
          },
          "containsText": {
            "title": "Review text contains",
            "type": "string",
            "description": "Keep only reviews whose text contains this phrase (case-insensitive), e.g. `crash`, `refund`, `subscription`."
          },
          "appVersion": {
            "title": "App version",
            "type": "string",
            "description": "Keep only reviews left on this exact app version, e.g. `8.9.10`. Google exposes the version on a minority of reviews - see the README."
          },
          "onlyWithDeveloperReply": {
            "title": "Only reviews with a developer reply",
            "type": "boolean",
            "description": "Keep only reviews the developer publicly answered - the fastest way to study a competitor's support voice.",
            "default": false
          },
          "includeReviews": {
            "title": "Include the reviews themselves",
            "type": "boolean",
            "description": "On by default. Switch **off** for a cheap ratings-only snapshot: one `appRatings` row per app and country with the score and star histogram, and no review pages read or charged at all. Useful for tracking many competitors' ratings on a schedule.",
            "default": true
          },
          "includeRatingsSummary": {
            "title": "Include the app ratings summary",
            "type": "boolean",
            "description": "Adds one `appRatings` row per app and country: overall score, total ratings, the **1-5 star histogram** (counts and percentages), installs, category and version. Charged as `app-ratings`.",
            "default": true
          },
          "outputFields": {
            "title": "Output fields",
            "uniqueItems": true,
            "type": "array",
            "description": "Trim the export to just these columns. Leave empty for every field.",
            "items": {
              "type": "string",
              "enum": [
                "type",
                "appId",
                "appName",
                "appUrl",
                "country",
                "language",
                "sort",
                "reviewId",
                "reviewUrl",
                "userName",
                "userImage",
                "score",
                "scoreText",
                "text",
                "textLength",
                "thumbsUp",
                "appVersion",
                "publishedAt",
                "hasDeveloperReply",
                "developerReplyText",
                "developerReplyAt",
                "developerReplyLatencyHours",
                "criteria",
                "developer",
                "developerId",
                "icon",
                "genre",
                "genreId",
                "contentRating",
                "ratingsCount",
                "reviewsCount",
                "histogram",
                "histogramPercent",
                "installs",
                "minInstalls",
                "released",
                "updatedAt",
                "currentVersion",
                "recentChanges",
                "free",
                "priceText",
                "currency",
                "adSupported",
                "offersIAP",
                "sampleSize",
                "sampleAverageScore",
                "sampleReplyRate",
                "scrapedAt"
              ],
              "enumTitles": [
                "Record type - review or appRatings (type)",
                "App package name (appId)",
                "App name (appName)",
                "App URL on Google Play (appUrl)",
                "Country the store was read in (country)",
                "Language the store was read in (language)",
                "Review sort order used (sort)",
                "Review ID (reviewId)",
                "Direct link to the review (reviewUrl)",
                "Reviewer display name (userName)",
                "Reviewer avatar URL (userImage)",
                "Star rating 1-5 (score)",
                "Star rating as text (scoreText)",
                "Review text (text)",
                "Review length in characters (textLength)",
                "Helpful votes (thumbsUp)",
                "App version reviewed (appVersion)",
                "Review date, ISO 8601 (publishedAt)",
                "Whether the developer replied (hasDeveloperReply)",
                "Developer reply text (developerReplyText)",
                "Developer reply date (developerReplyAt)",
                "Hours from review to reply (developerReplyLatencyHours)",
                "Per-criterion ratings, e.g. Gameplay (criteria)",
                "Developer name (developer)",
                "Developer ID (developerId)",
                "App icon URL (icon)",
                "Category (genre)",
                "Category ID (genreId)",
                "Content rating (contentRating)",
                "Total ratings on the store (ratingsCount)",
                "Total written reviews on the store (reviewsCount)",
                "Star distribution 1-5, counts (histogram)",
                "Star distribution 1-5, percent (histogramPercent)",
                "Install count as shown (installs)",
                "Install count, lower bound (minInstalls)",
                "Release date (released)",
                "Last store update, ISO 8601 (updatedAt)",
                "Current app version (currentVersion)",
                "What's new text (recentChanges)",
                "Whether the app is free (free)",
                "Price as shown (priceText)",
                "Price currency (currency)",
                "Contains ads (adSupported)",
                "Offers in-app purchases (offersIAP)",
                "Reviews emitted for this app in this run (sampleSize)",
                "Average score of the emitted sample (sampleAverageScore)",
                "Percent of the sample with a developer reply (sampleReplyRate)",
                "When this row was collected (scrapedAt)"
              ]
            }
          },
          "monitorMode": {
            "title": "Monitor mode - only new reviews",
            "type": "boolean",
            "description": "Remembers review IDs between runs and emits only reviews it has not seen before. Pair with an Apify Schedule to track an app continuously.",
            "default": false
          },
          "monitorStoreName": {
            "title": "Monitor store name",
            "type": "string",
            "description": "Named key-value store holding the remembered review IDs. Use a different name per tracked app set.",
            "default": "google-play-reviews-monitor"
          },
          "maxConcurrency": {
            "title": "Max concurrency",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Parallel app/country units. Lower this if Google starts throttling.",
            "default": 4
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Apify Proxy is used by default. Datacenter proxy is enough for Google Play - no residential needed.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}