{
  "openapi": "3.0.1",
  "info": {
    "title": "Quora Dataset Builder",
    "description": "Build bounded normalized Quora datasets from public URLs or native search seeds.",
    "version": "1.0",
    "x-build-id": "zCThrDbgZHBTgJiO8"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/crawlerbros~quora-dataset-builder/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-crawlerbros-quora-dataset-builder",
        "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/crawlerbros~quora-dataset-builder/runs": {
      "post": {
        "operationId": "runs-sync-crawlerbros-quora-dataset-builder",
        "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/crawlerbros~quora-dataset-builder/run-sync": {
      "post": {
        "operationId": "run-sync-crawlerbros-quora-dataset-builder",
        "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": {
          "scrapeDepth": {
            "title": "Scrape Depth",
            "enum": [
              "overview",
              "detail"
            ],
            "type": "string",
            "description": "Overview emits page-level summaries without answer/comment/activity/feed expansion; detail preserves the current bounded traversal.",
            "default": "detail"
          },
          "startUrls": {
            "title": "Quora URLs",
            "type": "array",
            "description": "Question, answer, profile, topic, Space, or native search URLs.",
            "default": [],
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "searchQueries": {
            "title": "Search Queries",
            "type": "array",
            "description": "Native Quora search seeds. Search cards are followed only when their visible URLs are supported.",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "questionUrls": {
            "title": "Question URLs",
            "type": "array",
            "description": "Explicit question-page seeds. Only question routes are accepted.",
            "items": {
              "type": "object",
              "properties": {
                "url": {
                  "title": "URL",
                  "description": "A Quora URL.",
                  "type": "string"
                }
              },
              "required": [
                "url"
              ]
            },
            "default": []
          },
          "answerUrls": {
            "title": "Answer URLs",
            "type": "array",
            "description": "Explicit answer-page seeds. Parent question joins are emitted only from observed evidence.",
            "items": {
              "type": "object",
              "properties": {
                "url": {
                  "title": "URL",
                  "description": "A Quora URL.",
                  "type": "string"
                }
              },
              "required": [
                "url"
              ]
            },
            "default": []
          },
          "topicUrls": {
            "title": "Topic URLs",
            "type": "array",
            "description": "Explicit Topic-page seeds for bounded visible question discovery.",
            "items": {
              "type": "object",
              "properties": {
                "url": {
                  "title": "URL",
                  "description": "A Quora URL.",
                  "type": "string"
                }
              },
              "required": [
                "url"
              ]
            },
            "default": []
          },
          "spaceUrls": {
            "title": "Space URLs",
            "type": "array",
            "description": "Explicit Space-page seeds for bounded visible feed discovery.",
            "items": {
              "type": "object",
              "properties": {
                "url": {
                  "title": "URL",
                  "description": "A Quora URL.",
                  "type": "string"
                }
              },
              "required": [
                "url"
              ]
            },
            "default": []
          },
          "profileUrls": {
            "title": "Profile URLs",
            "type": "array",
            "description": "Explicit profile-page seeds. Only profile routes are accepted; emitted as normalized profile rows exactly like a profile route discovered from startUrls.",
            "items": {
              "type": "object",
              "properties": {
                "url": {
                  "title": "URL",
                  "description": "A Quora URL.",
                  "type": "string"
                }
              },
              "required": [
                "url"
              ]
            },
            "default": []
          },
          "postUrls": {
            "title": "Post URLs",
            "type": "array",
            "description": "Explicit standalone Post-page seeds. Only post routes are accepted; emitted with the same topic_post field family topic-discovered posts use (post_title, post_body, post_author_*).",
            "items": {
              "type": "object",
              "properties": {
                "url": {
                  "title": "URL",
                  "description": "A Quora URL.",
                  "type": "string"
                }
              },
              "required": [
                "url"
              ]
            },
            "default": []
          },
          "resultTypes": {
            "title": "Result Types",
            "type": "array",
            "description": "Select normalized entities, explicit graph relationships, relationship-collection counts, status rows, and the final run manifest.",
            "items": {
              "type": "string",
              "enum": [
                "question",
                "answer",
                "comment",
                "profile",
                "profile_activity",
                "topic",
                "topic_post",
                "space",
                "space_feed_item",
                "entity_edge",
                "relationship_collection",
                "status",
                "run_manifest"
              ]
            },
            "default": [
              "question",
              "answer",
              "comment",
              "profile",
              "profile_activity",
              "topic",
              "topic_post",
              "space",
              "space_feed_item",
              "entity_edge",
              "status",
              "run_manifest"
            ]
          },
          "outputFormat": {
            "title": "Output Format",
            "enum": [
              "normalized",
              "nested",
              "flat",
              "edges"
            ],
            "type": "string",
            "description": "Projection after one canonical extraction path. Nested groups emitted answers and comments under explicit question/answer parents; flat keeps entity rows with parent context; edges emits explicit edge rows plus status rows.",
            "default": "normalized"
          },
          "dedupeMode": {
            "title": "Deduplication Mode",
            "enum": [
              "canonical",
              "none"
            ],
            "type": "string",
            "description": "canonical suppresses overlapping entity rows by stable ID or canonical URL (default); none preserves every observed non-status row. The run manifest reports duplicate_records_suppressed.",
            "default": "canonical"
          },
          "onlyNewItems": {
            "title": "Only New or Changed Items",
            "type": "boolean",
            "description": "Annotate canonical entity rows with new/changed/unchanged/scope_mismatch state and suppress only unchanged semantic rows when includeUnchanged is false. Requires stateStoreId; status, graph, and manifest rows remain visible.",
            "default": false
          },
          "includeUnchanged": {
            "title": "Include Unchanged Items",
            "type": "boolean",
            "description": "Retain unchanged semantic entities when incremental state is enabled; output projection does not alter comparison hashes.",
            "default": true
          },
          "stateStoreId": {
            "title": "Incremental State Store ID",
            "type": "string",
            "description": "Apify key-value store for canonical entity snapshots. Required when onlyNewItems is enabled; never store cookies or credentials here.",
            "default": ""
          },
          "outputFields": {
            "title": "Output Fields",
            "maxItems": 3000,
            "type": "array",
            "description": "Optional allowlist for compact rows, including bounded dotted paths through nested collections (for example answers.answer_text, comments.comment_text, feed.feed_text, or contributors.contributor_name where applicable). Child identity/URL fields and the actor identity, access/status, source, traversal, graph, filter, and parser-envelope fields remain protected.",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "includeFieldEvidence": {
            "title": "Include Field Evidence",
            "type": "boolean",
            "description": "Include field_sources and fields_present maps. Disable only when a smaller payload is required; semantic values and protected access fields remain unchanged.",
            "default": true
          },
          "includeUnresolvedEdges": {
            "title": "Include Unresolved Edges",
            "type": "boolean",
            "description": "Retain relationship rows whose endpoint URL was not explicitly observed, with unresolved_reason. Disabling this suppresses only those edge rows and does not imply complete relationships.",
            "default": true
          },
          "relationshipTypes": {
            "title": "Relationship Types",
            "type": "array",
            "description": "Explicit relationship-type allowlist for the newly ported follower/following/want-answers/upvoter/space-role relationship collections. Empty leaves the existing always-on content-membership/authorship edges untouched (question_has_topic, answer_authored_by, comment_belongs_to_answer, profile_has_activity, space_has_feed_item, etc.); this allowlist only gates the additional collections below. Sensitive follower/want-answer/upvoter types also require includeSensitiveRelationshipData and their matching collection opt-in.",
            "items": {
              "type": "string",
              "enum": [
                "profile_follows_profile",
                "profile_followed_by_profile",
                "profile_follows_question",
                "profile_follows_space",
                "profile_follows_topic",
                "profile_has_expertise",
                "question_followed_by_profile",
                "question_wants_answers_from_profile",
                "answer_upvoted_by_profile",
                "space_followed_by_profile",
                "space_has_contributor",
                "space_has_moderator",
                "space_has_admin",
                "space_contains_post",
                "space_contains_question",
                "space_contains_unanswered_question",
                "profile_authored_answer",
                "profile_authored_question",
                "profile_authored_post",
                "question_has_topic",
                "question_has_answer",
                "answer_belongs_to_question",
                "answer_authored_by_profile",
                "comment_belongs_to_answer",
                "comment_reply_to_comment",
                "comment_authored_by_profile",
                "post_authored_by_profile",
                "post_in_space",
                "profile_has_activity",
                "space_has_feed_item"
              ]
            },
            "default": []
          },
          "includeProfileEdges": {
            "title": "Include Profile Relationship Collections",
            "type": "boolean",
            "description": "Enable explicitly labeled profile follower/following/followed-question/Space/Topic relationship collections. This does not prove a complete list.",
            "default": false
          },
          "includeQuestionFollowerEdges": {
            "title": "Include Question Follower Collections",
            "type": "boolean",
            "description": "Enable explicitly labeled question follower or want-answer collections. Sensitive identity rows also require the privacy gate.",
            "default": false
          },
          "includeAnswerUpvoterEdges": {
            "title": "Include Answer Upvoter Collections",
            "type": "boolean",
            "description": "High-sensitivity opt-in for explicitly labeled answer upvoter identities; requires includeSensitiveRelationshipData=true.",
            "default": false
          },
          "includeSensitiveRelationshipData": {
            "title": "Sensitive Relationship Data",
            "type": "boolean",
            "description": "Explicit privacy gate required for follower, want-answer, and upvoter identity edges.",
            "default": false
          },
          "includeTargetMetadata": {
            "title": "Include Explicit Target Metadata",
            "type": "boolean",
            "description": "Retain explicitly visible target link text and image (to_name, to_image_url) on relationship edges. URLs remain evidence; no target navigation or recursive target scraping is performed.",
            "default": false
          },
          "includeRelationshipCounts": {
            "title": "Include Relationship Collection Counts",
            "type": "boolean",
            "description": "Emit privacy-preserving relationship_collection rows with the real observed total (collection_total_text/collection_total_value) but no target identities. Requires relationship_collection in resultTypes. Observed totals are not always a server-confirmed count.",
            "default": false
          },
          "includeSpaceRoleEdges": {
            "title": "Include Space Role Edges",
            "type": "boolean",
            "description": "Enable explicitly labeled Space contributor, moderator, and admin collections.",
            "default": false
          },
          "includeSpaceContentEdges": {
            "title": "Include Space Content Edges",
            "type": "boolean",
            "description": "Retain bounded explicit Space post/question membership edges; this never claims a complete Space inventory.",
            "default": true
          },
          "maxRelationshipItemsPerCollection": {
            "title": "Maximum Relationship Items per Collection",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Bound explicit links emitted from each labeled relationship collection. Zero emits no relationship-collection edges and never means an empty collection.",
            "default": 500
          },
          "maxQuestions": {
            "title": "Maximum Questions",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Maximum question seeds or discovered question pages to process.",
            "default": 25
          },
          "maxAnswersPerQuestion": {
            "title": "Maximum Answers per Question",
            "minimum": 0,
            "maximum": 500,
            "type": "integer",
            "description": "Maximum visible answer rows retained from each question page.",
            "default": 10
          },
          "maxAnswers": {
            "title": "Maximum Answers Total",
            "minimum": 0,
            "maximum": 50000,
            "type": "integer",
            "description": "Global answer-row cap applied after per-question caps. Zero means no configured global answer cap.",
            "default": 0
          },
          "includeQuestion": {
            "title": "Include Question Rows",
            "type": "boolean",
            "description": "Retain normalized question parent rows when selected in resultTypes.",
            "default": true
          },
          "includeAuthor": {
            "title": "Include Author Rows",
            "type": "boolean",
            "description": "Retain visible author fields and profile/profile-activity rows. When false, author fields and author rows are removed from the emitted shape; no contact enrichment is performed.",
            "default": true
          },
          "includeAuthorSnapshot": {
            "title": "Include Author Snapshot",
            "type": "boolean",
            "description": "Opt into bounded public profile snapshots for visible author profile links; profile access/status is separate from answer/comment success and never includes contact enrichment.",
            "default": false
          },
          "includeTopics": {
            "title": "Include Topic Links",
            "type": "boolean",
            "description": "Retain explicit topic links and topic relationships where observed.",
            "default": true
          },
          "includeSpaces": {
            "title": "Include Space Rows",
            "type": "boolean",
            "description": "Retain Space rows and feed items where the source route exposes them.",
            "default": false
          },
          "includeComments": {
            "title": "Include Comment Rows",
            "type": "boolean",
            "description": "Enable bounded visible comment output when the per-answer cap is positive.",
            "default": false
          },
          "includeEngagementBreakdown": {
            "title": "Include Engagement Breakdown",
            "type": "boolean",
            "description": "Retain explicitly labeled per-comment reaction breakdowns alongside aggregate reaction labels. Raw labels are preserved and typed companions are added only when the localized number is unambiguous.",
            "default": true
          },
          "includeRelatedContent": {
            "title": "Include Answer Related Content",
            "type": "boolean",
            "description": "Retain links inside an explicitly labeled related/attached region scoped to answer cards; unlabeled navigation and neighboring regions are excluded.",
            "default": false
          },
          "maxRelatedContent": {
            "title": "Maximum Answer Related Content",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Bound eligible related-content links per answer when enabled; zero emits no related-content items.",
            "default": 20
          },
          "topCommentsOnly": {
            "title": "Top-Labeled Comments Only",
            "type": "boolean",
            "description": "Retain only comments with an explicit visible Top/Most helpful/Popular comments label. Unknown comments are excluded and counted; votes and position are not used as top evidence.",
            "default": false
          },
          "commentSortOrder": {
            "title": "Comment Sort Order",
            "enum": [
              "observed",
              "upvotes_desc",
              "reactions_desc",
              "replies_desc",
              "newest"
            ],
            "type": "string",
            "description": "Order builder comment rows by observed order or an explicitly typed metric/timestamp. Unknown selected metrics remain in stable fallback order and are counted.",
            "default": "observed"
          },
          "includeReplyGraph": {
            "title": "Include Reply Graph",
            "type": "boolean",
            "description": "Enable bounded visible nested comment replies and explicit parent paths; this also enables comment rows. Hidden or unexpanded replies are not inferred.",
            "default": false
          },
          "includeMedia": {
            "title": "Include Media URLs",
            "type": "boolean",
            "description": "Request explicitly rendered media URL fields scoped to question roots, answer/comment nodes, and Topic post cards where the page exposes them.",
            "default": false
          },
          "includeFeedText": {
            "title": "Include Space Feed Text",
            "type": "boolean",
            "description": "Request bounded visible text from explicitly linked Space feed cards; page-level text and complete feed history are excluded.",
            "default": false
          },
          "includeOutboundLinks": {
            "title": "Include Outbound Links",
            "type": "boolean",
            "description": "Request visible non-Quora links scoped to question roots, answer/comment nodes, and Topic post cards; Quora links, comment permalinks, and links outside the owning scope are excluded.",
            "default": false
          },
          "includeEntityGraph": {
            "title": "Include Entity Graph",
            "type": "boolean",
            "description": "Emit explicit relationship rows even when entity_edge is not listed in resultTypes.",
            "default": false
          },
          "maxCommentsPerAnswer": {
            "title": "Maximum Comments per Answer",
            "minimum": 0,
            "maximum": 500,
            "type": "integer",
            "description": "Maximum visible comment rows retained per answer when enabled.",
            "default": 0
          },
          "maxCommentDepth": {
            "title": "Maximum Comment Depth",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Maximum visible nested reply depth when includeReplyGraph is enabled; reaching the bound is not complete history.",
            "default": 20
          },
          "maxItems": {
            "title": "Maximum Entity Rows",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Cap for normalized entity/status rows before graph and manifest rows.",
            "default": 0
          },
          "maxGraphEdges": {
            "title": "Maximum Graph Edges",
            "minimum": 0,
            "maximum": 50000,
            "type": "integer",
            "description": "Independent cap for deterministic entity_edge rows.",
            "default": 5000
          },
          "maxScrollAttempts": {
            "title": "Maximum Scroll Attempts",
            "minimum": 0,
            "maximum": 20,
            "type": "integer",
            "description": "Bounded lazy-render scroll budget applied during detail traversal; scroll attempts and termination state are reported.",
            "default": 5
          },
          "maxLoadMoreAttempts": {
            "title": "Maximum Load-more Attempts",
            "minimum": 0,
            "maximum": 20,
            "type": "integer",
            "description": "Bound exact visible continuation-control clicks on direct question, answer, topic, and Space collection pages independently from scrolling. Search seeds fan out through their discovered child URLs and retain their own source accounting.",
            "default": 0
          },
          "includeRawEvidence": {
            "title": "Include Raw Evidence",
            "type": "boolean",
            "description": "Add bounded document hash and optional HTML bytes to each page-level entity row.",
            "default": false
          },
          "includeHtml": {
            "title": "Include HTML",
            "type": "boolean",
            "description": "Include bounded raw-document HTML when raw evidence is enabled and bounded answer-card HTML when answer cards are extracted.",
            "default": false
          },
          "maxHtmlBytes": {
            "title": "Maximum HTML Bytes",
            "minimum": 1000,
            "maximum": 2000000,
            "type": "integer",
            "description": "Maximum UTF-8 bytes retained for optional raw HTML evidence.",
            "default": 100000
          },
          "requestDelay": {
            "title": "Request Delay",
            "minimum": 0,
            "maximum": 30,
            "type": "number",
            "description": "Delay between page batches in seconds; this is not an anti-bot bypass guarantee.",
            "default": 1
          },
          "maxConcurrency": {
            "title": "Maximum Concurrent Seeds",
            "minimum": 1,
            "maximum": 3,
            "type": "integer",
            "description": "Maximum independent seed pages processed concurrently in deterministic batches. Each seed owns a page; discovered seeds merge in batch order.",
            "default": 1
          },
          "maxNavigationRetries": {
            "title": "Maximum Navigation Retries",
            "minimum": 0,
            "maximum": 3,
            "type": "integer",
            "description": "Bounded retries after navigation exceptions (e.g. a transient proxy-tunnel handshake failure); exponential backoff is reported in navigation_retry_delays_seconds. Defaults to 2 for reliability.",
            "default": 2
          },
          "language": {
            "title": "Language",
            "enum": [
              "auto",
              "en",
              "es",
              "fr",
              "de",
              "pt",
              "it",
              "ja",
              "ko",
              "hi",
              "id",
              "nl",
              "pl",
              "tr",
              "vi",
              "zh",
              "ru",
              "en-US",
              "en-GB",
              "de-DE",
              "fr-FR",
              "es-ES",
              "pt-BR",
              "it-IT",
              "ja-JP",
              "ko-KR",
              "hi-IN",
              "tr-TR",
              "zh-CN",
              "zh-TW",
              "ru-RU"
            ],
            "type": "string",
            "description": "Browser language hint. Short language codes and supported regional aliases are accepted and normalize to the short code; auto keeps the actor default. This does not translate content or prove access.",
            "default": "auto"
          },
          "cookies": {
            "title": "Authorized Cookies",
            "type": "array",
            "description": "Optional secret cookies for content the caller is authorized to access.",
            "items": {
              "type": "object"
            }
          },
          "cookieString": {
            "title": "Optional Cookie Header String",
            "type": "string",
            "description": "Optional browser-exported name=value; name2=value2 header. Parsed locally into authorized session cookies; the raw header is never emitted or logged."
          },
          "proxyConfiguration": {
            "title": "Proxy Configuration",
            "type": "object",
            "description": "Apify proxy routing. Quora's anti-bot layer blocks the free Datacenter/Automatic tier on roughly half of all real requests (cloud-verified), so this actor always routes through RESIDENTIAL proxies for reliable results regardless of what is selected here — leave this on the default Residential selection unless you need to supply your own proxy URLs.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          },
          "redactSensitiveQueryParams": {
            "title": "Redact Sensitive URL Query Values",
            "type": "boolean",
            "description": "Redact narrow credential-like query parameter values in emitted URLs, graph endpoints, redirect chains, and raw HTML. The original document hash remains based on the captured document.",
            "default": true
          },
          "rawEvidenceRetentionDays": {
            "title": "Raw Evidence Retention Days",
            "minimum": 0,
            "maximum": 30,
            "type": "integer",
            "description": "When zero, suppress raw_html snapshots while retaining hash, size, and redaction diagnostics. Positive values permit bounded HTML for the requested run; external Apify dataset/run retention still applies.",
            "default": 30
          },
          "maxRawEvidenceBytes": {
            "title": "Maximum Raw Evidence Bytes",
            "minimum": 1000,
            "maximum": 2000000,
            "type": "integer",
            "description": "Hard upper byte cap for returned raw HTML after the maxHtmlBytes cap.",
            "default": 100000
          },
          "maxItemsPerSource": {
            "title": "Maximum Items Per Source",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum semantic records emitted from each direct URL, query, or typed source. Status and run-manifest rows are preserved. Use 0 for no per-source cap.",
            "default": 0
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}