{
  "openapi": "3.0.1",
  "info": {
    "title": "SEO Ultimate",
    "description": "All in one SEO tool & content writer/rewriter. Track keyword rankings, analyze backlinks, run competitor research, generate AI-powered content writing and content rewriting, audit PageSpeed - all with pay-per-event pricing. The only SEO tool you need.",
    "version": "1.6",
    "x-build-id": "VIpbhpx8fDeVc7cfS"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/ecommerce_leads~seo-ultimate/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-ecommerce_leads-seo-ultimate",
        "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/ecommerce_leads~seo-ultimate/runs": {
      "post": {
        "operationId": "runs-sync-ecommerce_leads-seo-ultimate",
        "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/ecommerce_leads~seo-ultimate/run-sync": {
      "post": {
        "operationId": "run-sync-ecommerce_leads-seo-ultimate",
        "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",
        "required": [
          "domain"
        ],
        "properties": {
          "domain": {
            "title": "Domain",
            "type": "string",
            "description": "Target domain to analyze (e.g. example.com — no https://)."
          },
          "runRelatedKeywords": {
            "title": "Run Related Keywords",
            "type": "boolean",
            "description": "Fetch related keyword suggestions for a single seed keyword. Provide the keyword via relatedKeyword.",
            "default": false
          },
          "relatedKeyword": {
            "title": "Related Keywords: Seed Keyword",
            "type": "string",
            "description": "Single keyword to find related suggestions for. Example: phone"
          },
          "runKeywordTracking": {
            "title": "Run Keyword Tracking",
            "type": "boolean",
            "description": "Fetch the full list of keywords the domain ranks for, including SERP details (position, title, URL, rank changes, difficulty, and more).",
            "default": false
          },
          "keywordTrackingPage": {
            "title": "Keyword Tracking: Page",
            "minimum": 1,
            "type": "integer",
            "description": "Page number of results to return. Each page returns 100 keywords. Page 1 = results 1–100, page 2 = 101–200, etc. Default: 1.",
            "default": 1
          },
          "runSiteSeo": {
            "title": "Run Site SEO Overview",
            "type": "boolean",
            "description": "Fetch organic keyword counts, paid keyword counts, and backlink summary for the domain using DataForSEO WHOIS Overview. Returns organic_keywords, paid_keywords, and backlinks sections.",
            "default": false
          },
          "runBacklinks": {
            "title": "Run Backlinks Check (WHOIS Overview)",
            "type": "boolean",
            "description": "Fetch backlink count, referring domains, and dofollow links from DataForSEO.",
            "default": true
          },
          "backlinksPage": {
            "title": "Backlinks: Page",
            "minimum": 1,
            "type": "integer",
            "description": "Page number of results to return. Each page returns 100 domains. Page 1 = results 1–100, page 2 = 101–200, etc. Default: 1.",
            "default": 1
          },
          "backlinksOrder": {
            "title": "Backlinks: Sort Order",
            "enum": [
              "searchVolumeDesc",
              "searchVolumeAsc"
            ],
            "type": "string",
            "description": "Sort results by organic search traffic estimate. searchVolumeDesc = highest traffic domains first (recommended); searchVolumeAsc = lowest traffic domains first. Default: searchVolumeDesc.",
            "default": "searchVolumeDesc"
          },
          "runRankedKeywords": {
            "title": "Run Ranked Keywords",
            "type": "boolean",
            "description": "Fetch keywords the domain currently ranks for on Google.",
            "default": true
          },
          "page": {
            "title": "Ranked Keywords: Page",
            "minimum": 1,
            "type": "integer",
            "description": "Page number of results to return. Each page returns 100 keywords. Page 1 = results 1–100, page 2 = 101–200, etc. Default: 1.",
            "default": 1
          },
          "type": {
            "title": "Ranked Keywords: Result Type",
            "enum": [
              "organic",
              "paid",
              "featured_snippet",
              "ai_overview"
            ],
            "type": "string",
            "description": "Filter by how the domain appears in search results. organic = standard blue-link results; paid = Google Ads; featured_snippet = position-zero answer box; ai_overview = AI-generated overview. Default: organic.",
            "default": "organic"
          },
          "liveorlost": {
            "title": "Ranked Keywords: Live or Lost",
            "enum": [
              "live",
              "lost",
              "all"
            ],
            "type": "string",
            "description": "live = keywords the domain currently ranks for; lost = keywords it previously ranked for but no longer does; all = both current and lost rankings. Default: live.",
            "default": "live"
          },
          "minvolume": {
            "title": "Ranked Keywords: Min Search Volume",
            "minimum": 0,
            "type": "integer",
            "description": "Only return keywords with monthly search volume greater than this number. Useful for filtering out near-zero traffic keywords. Default: 10.",
            "default": 10
          },
          "minposition": {
            "title": "Ranked Keywords: Max Position",
            "minimum": 1,
            "type": "integer",
            "description": "Only return keywords where the domain ranks at position 1 up to this number. E.g. 10 = top 10 only, 100 = all positions up to 100. Default: 100.",
            "default": 100
          },
          "orderby": {
            "title": "Ranked Keywords: Sort Order",
            "enum": [
              "desc",
              "asc"
            ],
            "type": "string",
            "description": "Sort results by search volume. desc = highest volume first (recommended for finding best opportunities); asc = lowest volume first. Default: desc.",
            "default": "desc"
          },
          "runCompetitors": {
            "title": "Run Competitor Analysis",
            "type": "boolean",
            "description": "Fetch competing domains with keyword overlap.",
            "default": true
          },
          "competitorsPage": {
            "title": "Competitors: Page",
            "minimum": 1,
            "type": "integer",
            "description": "Page number of results to return. Each page returns 20 competitors. Page 1 = results 1–20, page 2 = 21–40, etc. Default: 1.",
            "default": 1
          },
          "competitorType": {
            "title": "Competitors: SERP Type",
            "enum": [
              "organic",
              "paid",
              "featured_snippet"
            ],
            "type": "string",
            "description": "Which type of Google search result to base competitor detection on. organic = standard blue-link results (recommended); paid = Google Ads; featured_snippet = position-zero answer boxes. Default: organic.",
            "default": "organic"
          },
          "competitorsOrderby": {
            "title": "Competitors: Sort Order",
            "enum": [
              "keywordCountDesc",
              "keywordCountAsc",
              "trafficDesc",
              "trafficAsc"
            ],
            "type": "string",
            "description": "How to sort the returned competitor domains. keywordCountDesc = most shared keywords first (recommended — best for finding direct competitors); keywordCountAsc = fewest shared keywords first; trafficDesc = highest estimated organic traffic first; trafficAsc = lowest estimated organic traffic first. Default: keywordCountDesc.",
            "default": "keywordCountDesc"
          },
          "excludeDomains": {
            "title": "Competitors: Exclude Specific Domains",
            "type": "array",
            "description": "List of specific domains to remove from the competitor results (max 20). Useful for filtering out known partners, sister sites, or irrelevant domains. Example: ['amazon.com', 'etsy.com'].",
            "items": {
              "type": "string"
            }
          },
          "intersectingDomains": {
            "title": "Competitors: Intersecting Domains",
            "type": "array",
            "description": "Up to 3 known competitor domains used to improve the relevance of results. When provided, DataForSEO prioritises domains with strong SERP overlap with these sites. Example: ['competitor1.com', 'competitor2.com'].",
            "items": {
              "type": "string"
            }
          },
          "runKeywordIdeas": {
            "title": "Run Keyword Ideas (Google Ads)",
            "type": "boolean",
            "description": "Generate keyword ideas seeded from ranked keywords. Requires runRankedKeywords.",
            "default": true
          },
          "runAiKeywords": {
            "title": "Run Longtail Keyword Suggestions",
            "type": "boolean",
            "description": "Generate long-tail keyword suggestions using AI (OpenRouter / Gemini). Provide seed keywords via the longtailSeeds field.",
            "default": false
          },
          "longtailSeeds": {
            "title": "Longtail Keywords: Seed Keywords",
            "type": "string",
            "description": "Seed keywords to base long-tail suggestions on. Separate multiple keywords with a pipe | character. Maximum 10 seeds — any extras are ignored. Example: white hat|leather jackets|classic summer shoes"
          },
          "runPageSpeed": {
            "title": "Run Performance Check",
            "type": "boolean",
            "description": "Run Google PageSpeed Insights to measure load speed, Core Web Vitals, SEO signals, accessibility, and best practices.",
            "default": true
          },
          "pageSpeedUrl": {
            "title": "Performance: Target URL",
            "type": "string",
            "description": "Full URL to test (defaults to https://<domain>). Use this to test a specific page instead of the homepage."
          },
          "pageSpeedStrategy": {
            "title": "Performance: Device Strategy",
            "enum": [
              "desktop",
              "mobile"
            ],
            "type": "string",
            "description": "Which device to run the check on. desktop = desktop emulation (default); mobile = mobile emulation. Default: desktop.",
            "default": "desktop"
          },
          "psType": {
            "title": "Performance: Audit Categories",
            "type": "array",
            "description": "Which Lighthouse audit categories to run. performance = load speed + Core Web Vitals (TTFB, FCP, LCP, TBT, CLS, TTI, INP etc.); seo = on-page SEO signals (meta tags, crawlability, structured data); accessibility = ARIA, color contrast, labels, keyboard navigation; best_practices = HTTPS, console errors, modern browser APIs. Default: [\"performance\"]. Adding more categories increases response time slightly.",
            "default": [
              "performance"
            ],
            "items": {
              "type": "string"
            }
          },
          "runAltText": {
            "title": "Run AI Alt Text Generation",
            "type": "boolean",
            "description": "Generate alt text for images using AI vision. Supports SEO-optimized and accessibility-focused modes.",
            "default": false
          },
          "altTextType": {
            "title": "Alt Text: Type",
            "enum": [
              "seo",
              "accessibility"
            ],
            "type": "string",
            "description": "seo = keyword-rich alt text optimized for search engines, max 155 characters; accessibility = descriptive alt text for screen readers starting with 'Image of ...', max 160 characters. Default: seo.",
            "default": "seo"
          },
          "keywordImportance": {
            "title": "Alt Text: Keyword Importance",
            "minimum": 0,
            "maximum": 1,
            "type": "number",
            "description": "Only applies when mainKeyword is set on an image object. Controls the probability (0.0–1.0) that the keyword appears in the generated alt text. 1.0 = always included (default); 0.7 = 70% chance; 0.0 = never included. Keywords with spaces are supported (e.g. \"organic cotton shirt\").",
            "default": 1
          },
          "autoKeyword": {
            "title": "Alt Text: Auto Keyword",
            "type": "boolean",
            "description": "If true, the AI may use a natural variation or partial match of the keyword (e.g. singular/plural, reordered words, closely related phrasing) instead of the exact keyword. Works together with keywordImportance. Default: false.",
            "default": false
          },
          "altTextProducts": {
            "title": "Alt Text: Images",
            "type": "array",
            "description": "Array of image objects to generate alt text for. Required field: imageUrl. Optional field: mainKeyword (the SEO keyword to include, controlled by keywordImportance and autoKeyword)."
          },
          "runArticleIdeas": {
            "title": "Run Article Idea Generation",
            "type": "boolean",
            "description": "Generate up to 30 article title ideas using OpenRouter (Gemini 2.5 Flash). Provide keywords or titles via articleKeywords / articleTitles, or leave both empty to auto-seed from ranked + suggested keywords.",
            "default": false
          },
          "articleKeywords": {
            "title": "Article Ideas: Keywords",
            "type": "string",
            "description": "Pipe-separated keywords to base article ideas on. The AI will generate titles that target each keyword naturally. Example: react tutorials|javascript for beginners|js dev tuts. At least one of articleKeywords or articleTitles must be provided when not using auto-seed mode."
          },
          "articleTitles": {
            "title": "Article Ideas: Titles",
            "type": "string",
            "description": "Pipe-separated existing article titles to use as style and topic inspiration. The AI will generate new, distinct titles covering related angles — not copies. Example: Start with React JS|Javascript intro for dummies|HTML and CSS intro."
          },
          "runArticles": {
            "title": "Run Full Article Generation",
            "type": "boolean",
            "description": "Generate a full article based on articleTitle and mainKeyword. Independent of runArticleIdeas — no ideas step required.",
            "default": false
          },
          "articleTitle": {
            "title": "Article: Title",
            "type": "string",
            "description": "Optional. The article title to write. If omitted, the AI generates a title from the main keyword. Use articleTitleAdjust to allow the AI to refine it for SEO."
          },
          "articleTitleAdjust": {
            "title": "Article: Allow Title Adjustment",
            "type": "boolean",
            "description": "If true and articleTitle is set, the AI may adjust the title slightly for SEO. If false, the title is used exactly as given. Default: false.",
            "default": false
          },
          "mainKeyword": {
            "title": "Article: Main Keyword",
            "type": "string",
            "description": "Optional. Primary keyword the article should target. Placement in the article is controlled by mainKeywordImportance."
          },
          "mainKeywordImportance": {
            "title": "Article: Main Keyword Importance",
            "minimum": 0,
            "maximum": 1,
            "type": "number",
            "description": "Controls where the main keyword appears. 1.0 = must appear in the first paragraph (default); 0.7 = within first two paragraphs; 0.4 = anywhere in the body; below 0.4 = only if it fits naturally.",
            "default": 1
          },
          "mainKeywordAdjustment": {
            "title": "Article: Allow Keyword Variation",
            "type": "boolean",
            "description": "If true, the AI may use natural variations, partial matches, or long-tail extensions of the main keyword. If false, the keyword is used exactly as given. Default: false.",
            "default": false
          },
          "secondaryKeyword": {
            "title": "Article: Secondary Keyword",
            "type": "string",
            "description": "Optional. A lower-importance keyword to weave into the article naturally 1–2 times."
          },
          "returnType": {
            "title": "Article: Return Format",
            "enum": [
              "JSON",
              "HTML",
              "TEXT"
            ],
            "type": "string",
            "description": "Output format for generated articles. JSON = structured object with title/subtitle/content/FAQ keys; HTML = raw HTML markup; TEXT = plain text. Default: JSON.",
            "default": "JSON"
          },
          "addQA": {
            "title": "Article: Add FAQ Section",
            "type": "boolean",
            "description": "If true, a FAQ section is appended to the article. JSON output adds question/answer keys; HTML uses <details>/<summary> tags; TEXT uses Q:/A: format. Default: false.",
            "default": false
          },
          "useTags": {
            "title": "Article: Use Formatting Tags",
            "type": "boolean",
            "description": "If true, the article uses bold, italic, and blockquote formatting. HTML/JSON use <strong>, <em>, <blockquote>; TEXT uses *bold*, _italic_, > quote markers. Default: true.",
            "default": true
          },
          "useTable": {
            "title": "Article: Include Table",
            "type": "boolean",
            "description": "If true, the AI includes a relevant comparison or data table. HTML/JSON produce an HTML <table>; TEXT uses pipe-separated columns. Default: false.",
            "default": false
          },
          "articleTone": {
            "title": "Article: Writing Tone",
            "enum": [
              "informative",
              "professional",
              "casual",
              "enthusiastic",
              "empathetic",
              "storytelling",
              "humorous",
              "authoritative",
              "conversational"
            ],
            "type": "string",
            "description": "Sets the writing tone for all generated articles. informative = clear and factual (default); professional = formal and authoritative; casual = relaxed and friendly; enthusiastic = energetic and upbeat; empathetic = warm and understanding; storytelling = narrative-driven; humorous = light-hearted with wit; authoritative = confident expert voice; conversational = engaging dialogue style. Default: informative.",
            "default": "informative"
          },
          "linkText": {
            "title": "Article: Link Anchor Text",
            "type": "string",
            "description": "Optional. Anchor text for a link to inject naturally into the article. Must be used together with linkDestination. Example: organic cotton t-shirts"
          },
          "linkDestination": {
            "title": "Article: Link Destination",
            "type": "string",
            "description": "Optional. URL for the injected link. Accepts internal paths (e.g. /products/organic-tshirt) or full external URLs (e.g. https://example.com/page). Must be used together with linkText."
          },
          "articleStrategy": {
            "title": "Article Ideas: Auto-seed Strategy",
            "enum": [
              "ranked",
              "suggested",
              "mix"
            ],
            "type": "string",
            "description": "Used only when articleKeywords and articleTitles are both empty. ranked = seed from ranked keywords only; suggested = seed from keyword ideas only; mix = combine both. Default: mix.",
            "default": "mix"
          },
          "articleProductContext": {
            "title": "Article Product Context",
            "type": "object",
            "description": "Product details to reference in articles."
          },
          "runArticleRewrite": {
            "title": "Run Article Rewrite",
            "type": "boolean",
            "description": "Rewrite an existing article supplied via articleContent. Applies all the same SEO controls as article generation (mainKeyword, tone, linkText, etc.). articleContent is required when this is enabled.",
            "default": false
          },
          "articleContent": {
            "title": "Article Rewrite: Original Content",
            "type": "string",
            "description": "Required when runArticleRewrite is true. The original article body to rewrite — HTML or plain text. Maximum 1200 characters; anything beyond is automatically stripped."
          },
          "shopDomain": {
            "title": "Shop Domain",
            "type": "string",
            "description": "Shopify store domain (used in article content)."
          },
          "shopName": {
            "title": "Shop Name",
            "type": "string",
            "description": "Store display name (used in article content)."
          },
          "ppeRelatedKeywords": {
            "title": "PPE Price: Related Keywords (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per related keywords event in USD cents (e.g. 5 = $0.05).",
            "default": 5
          },
          "ppeKeywordTracking": {
            "title": "PPE Price: Keyword Tracking (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per keyword tracking event in USD cents (e.g. 10 = $0.10).",
            "default": 10
          },
          "ppeSiteSeo": {
            "title": "PPE Price: Site SEO Overview (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per site SEO overview event in USD cents (e.g. 5 = $0.05).",
            "default": 5
          },
          "ppeBacklinks": {
            "title": "PPE Price: Backlinks (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per backlinks event in USD cents (e.g. 5 = $0.05).",
            "default": 5
          },
          "ppeRankedKeywords": {
            "title": "PPE Price: Ranked Keywords (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per ranked keywords event in USD cents.",
            "default": 10
          },
          "ppeCompetitors": {
            "title": "PPE Price: Competitors (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per competitor analysis event in USD cents.",
            "default": 10
          },
          "ppeKeywordIdeas": {
            "title": "PPE Price: Keyword Ideas (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per keyword ideas event in USD cents.",
            "default": 10
          },
          "ppeLongtailKeywords": {
            "title": "PPE Price: Longtail Keywords (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per longtail keyword suggestions event in USD cents.",
            "default": 5
          },
          "ppePerformance": {
            "title": "PPE Price: Performance Check (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per performance check event in USD cents. One event is charged per run regardless of how many devices or categories are checked.",
            "default": 5
          },
          "ppeAltText": {
            "title": "PPE Price: Alt Text per image (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per single alt text generation event in USD cents.",
            "default": 2
          },
          "ppeArticleIdeas": {
            "title": "PPE Price: Article Ideas (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per article ideas generation event in USD cents.",
            "default": 10
          },
          "ppeArticleGenerate": {
            "title": "PPE Price: Article Generate (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per full article generation event in USD cents (event: article-generate).",
            "default": 20
          },
          "ppeArticleRewrite": {
            "title": "PPE Price: Article Rewrite (USD cents)",
            "minimum": 0,
            "type": "integer",
            "description": "Price per article rewrite event in USD cents (event: article-rewrite).",
            "default": 20
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}