{
  "openapi": "3.0.1",
  "info": {
    "title": "Bulk Email Verification API - List Cleaning and Spam Traps",
    "description": "Clean a mailing list before you send to it. Submits the whole list as one job, verifies each address at the receiving mail server, and returns a deliverable, risky, undeliverable or unknown verdict with the exact reason behind it. Pay per result.",
    "version": "0.1",
    "x-build-id": "OD1XlRuclbRKRZPKZ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~bulk-email-verification-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-bulk-email-verification-api",
        "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/nabeelbaghoor~bulk-email-verification-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-bulk-email-verification-api",
        "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/nabeelbaghoor~bulk-email-verification-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-bulk-email-verification-api",
        "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": {
          "emails": {
            "title": "Email addresses to verify",
            "type": "array",
            "description": "The addresses to check, one per line. The whole list is submitted as a single verification job, which is how this provider works and why a long list costs far less time than the same addresses checked one at a time. Repeated lines are submitted once.",
            "items": {
              "type": "string"
            }
          },
          "quality": {
            "title": "Results quality level",
            "enum": [
              "",
              "Standard",
              "High",
              "Extreme"
            ],
            "type": "string",
            "description": "How hard the provider works before it gives up on an address. Standard is the everyday setting. High and Extreme retry the uncooperative mail servers for longer, which turns some timeouts and grey-listing into real verdicts, and they cost more credits per address on your own plan. Leave empty to use your account default.",
            "default": ""
          },
          "deduplication": {
            "title": "Duplicate detection",
            "enum": [
              "",
              "Off",
              "Safe",
              "Relaxed"
            ],
            "type": "string",
            "description": "Whether the provider marks repeated addresses inside the job, and how strictly. Safe only marks addresses that are certainly the same mailbox. Relaxed also treats provider-specific aliases, such as dots and plus tags on modern mail services, as the same person. Duplicates still return a row, marked as such, so nothing disappears silently.",
            "default": ""
          },
          "classifications": {
            "title": "Keep only these verdicts",
            "type": "array",
            "description": "Only keep rows with one of these verdicts. This is the broad grouping the provider sorts every result into, and it is what most runs route on. Leave empty to keep every verdict.",
            "items": {
              "type": "string",
              "enum": [
                "Deliverable",
                "Risky",
                "Undeliverable",
                "Unknown"
              ],
              "enumTitles": [
                "Deliverable: the mailbox should accept mail",
                "Risky: valid, but with something worth knowing about it",
                "Undeliverable: invalid or inactive",
                "Unknown: could not be determined for technical reasons"
              ]
            },
            "default": []
          },
          "deliverableOnly": {
            "title": "Keep only deliverable addresses",
            "type": "boolean",
            "description": "Drop everything except addresses that came back deliverable. The one-tick way to turn a raw list into a sending list. It also drops the risky and unknown rows, and the unknown ones are often good addresses behind a server that would not answer, so consider verifying those again rather than discarding them.",
            "default": false
          },
          "statuses": {
            "title": "Keep only these status codes",
            "type": "array",
            "description": "The precise reason behind the verdict, rather than the verdict itself. Only keep rows whose status is one of these. This is asked of the provider directly, so the run never pages over addresses you did not want. Setting this overrides the exclusions below, because the provider accepts only one of the two at a time.",
            "items": {
              "type": "string",
              "enum": [
                "AtSignNotFound",
                "CatchAllValidationTimeout",
                "DnsConnectionFailure",
                "DnsQueryTimeout",
                "DomainDoesNotExist",
                "DomainHasNullMx",
                "DomainIsMisconfigured",
                "DomainIsWellKnownDea",
                "DomainPartCompliancyFailure",
                "DoubleDotSequence",
                "Duplicate",
                "InvalidAddressLength",
                "InvalidCharacterInSequence",
                "InvalidEmptyQuotedWord",
                "InvalidFoldingWhiteSpaceSequence",
                "InvalidLocalPartLength",
                "InvalidWordBoundaryStart",
                "IspSpecificSyntaxFailure",
                "LocalEndPointRejected",
                "LocalSenderAddressRejected",
                "MailboxDoesNotExist",
                "MailboxHasInsufficientStorage",
                "MailboxIsDea",
                "MailboxTemporarilyUnavailable",
                "MailboxValidationTimeout",
                "MailExchangerIsHoneypot",
                "MailExchangerIsParked",
                "MailExchangerIsWellKnownDea",
                "OverrideMatch",
                "ServerDoesNotAllowMultipleRecipients",
                "ServerDoesNotSupportInternationalMailboxes",
                "ServerIsCatchAll",
                "ServerTemporaryUnavailable",
                "SmtpConnectionFailure",
                "SmtpConnectionTimeout",
                "SmtpDialogError",
                "Success",
                "UnacceptableDomainLiteral",
                "UnbalancedCommentParenthesis",
                "UnexpectedQuotedPairSequence",
                "UnhandledException",
                "UnmatchedQuotedPair"
              ],
              "enumTitles": [
                "AtSignNotFound: At sign not found: no @ separating the local and domain parts",
                "CatchAllValidationTimeout: Catch-all check timed out: try a higher quality level",
                "DnsConnectionFailure: DNS connection failed while looking up the domain",
                "DnsQueryTimeout: DNS query timed out while looking up the domain",
                "DomainDoesNotExist: Domain does not exist",
                "DomainHasNullMx: Domain has a null MX: it deliberately accepts no mail",
                "DomainIsMisconfigured: Domain is misconfigured and cannot receive external mail",
                "DomainIsWellKnownDea: Domain is a well-known disposable address provider",
                "DomainPartCompliancyFailure: Domain part does not comply with the standards",
                "DoubleDotSequence: Two adjacent dots in the address",
                "Duplicate: Duplicate of an earlier entry in the same list",
                "InvalidAddressLength: Address has an invalid total length",
                "InvalidCharacterInSequence: Invalid character in the address",
                "InvalidEmptyQuotedWord: Empty quoted word in the address",
                "InvalidFoldingWhiteSpaceSequence: Invalid folding white space sequence",
                "InvalidLocalPartLength: Local part has an invalid length",
                "InvalidWordBoundaryStart: Word boundary at an invalid position",
                "IspSpecificSyntaxFailure: Does not meet the target provider formatting rules",
                "LocalEndPointRejected: Mail server rejected the local endpoint: try a higher quality level",
                "LocalSenderAddressRejected: Mail server rejected the sender address: try a higher quality level",
                "MailboxDoesNotExist: Mailbox does not exist",
                "MailboxHasInsufficientStorage: Mailbox is full or the server is out of storage",
                "MailboxIsDea: Mailbox is a disposable, throw-away address",
                "MailboxTemporarilyUnavailable: Mailbox temporarily unavailable, often grey-listing",
                "MailboxValidationTimeout: Mailbox check timed out: try a higher quality level",
                "MailExchangerIsHoneypot: Mail exchanger is a honeypot, also known as a spam trap",
                "MailExchangerIsParked: Mail exchanger is parked or inactive and may resell the data",
                "MailExchangerIsWellKnownDea: Mail exchanger is a well-known disposable address provider",
                "OverrideMatch: Matched one of your own custom classifier rules",
                "ServerDoesNotAllowMultipleRecipients: Server may accept fake addresses, so the mailbox is unconfirmed",
                "ServerDoesNotSupportInternationalMailboxes: Server does not support international mailbox names",
                "ServerIsCatchAll: Server is catch-all, so the mailbox cannot be confirmed",
                "ServerTemporaryUnavailable: Mail server temporarily unavailable: try a higher quality level",
                "SmtpConnectionFailure: SMTP connection failed: try a higher quality level",
                "SmtpConnectionTimeout: SMTP connection timed out: try a higher quality level",
                "SmtpDialogError: Mail server replied in a non-standard way",
                "Success: Success: valid, with no high-risk factors detected",
                "UnacceptableDomainLiteral: Domain literal cannot accept mail from the internet",
                "UnbalancedCommentParenthesis: Unbalanced comment parentheses in the address",
                "UnexpectedQuotedPairSequence: Unexpected quoted pair sequence in a quoted word",
                "UnhandledException: Verification failed for a technical reason: retrying may resolve it",
                "UnmatchedQuotedPair: Quoted pair in a quoted word is not properly closed"
              ]
            },
            "default": []
          },
          "excludeStatuses": {
            "title": "Drop these status codes",
            "type": "array",
            "description": "The mirror of the field above: keep everything except these. Also asked of the provider directly. Ignored when an explicit keep list is set.",
            "items": {
              "type": "string",
              "enum": [
                "AtSignNotFound",
                "CatchAllValidationTimeout",
                "DnsConnectionFailure",
                "DnsQueryTimeout",
                "DomainDoesNotExist",
                "DomainHasNullMx",
                "DomainIsMisconfigured",
                "DomainIsWellKnownDea",
                "DomainPartCompliancyFailure",
                "DoubleDotSequence",
                "Duplicate",
                "InvalidAddressLength",
                "InvalidCharacterInSequence",
                "InvalidEmptyQuotedWord",
                "InvalidFoldingWhiteSpaceSequence",
                "InvalidLocalPartLength",
                "InvalidWordBoundaryStart",
                "IspSpecificSyntaxFailure",
                "LocalEndPointRejected",
                "LocalSenderAddressRejected",
                "MailboxDoesNotExist",
                "MailboxHasInsufficientStorage",
                "MailboxIsDea",
                "MailboxTemporarilyUnavailable",
                "MailboxValidationTimeout",
                "MailExchangerIsHoneypot",
                "MailExchangerIsParked",
                "MailExchangerIsWellKnownDea",
                "OverrideMatch",
                "ServerDoesNotAllowMultipleRecipients",
                "ServerDoesNotSupportInternationalMailboxes",
                "ServerIsCatchAll",
                "ServerTemporaryUnavailable",
                "SmtpConnectionFailure",
                "SmtpConnectionTimeout",
                "SmtpDialogError",
                "Success",
                "UnacceptableDomainLiteral",
                "UnbalancedCommentParenthesis",
                "UnexpectedQuotedPairSequence",
                "UnhandledException",
                "UnmatchedQuotedPair"
              ],
              "enumTitles": [
                "AtSignNotFound: At sign not found: no @ separating the local and domain parts",
                "CatchAllValidationTimeout: Catch-all check timed out: try a higher quality level",
                "DnsConnectionFailure: DNS connection failed while looking up the domain",
                "DnsQueryTimeout: DNS query timed out while looking up the domain",
                "DomainDoesNotExist: Domain does not exist",
                "DomainHasNullMx: Domain has a null MX: it deliberately accepts no mail",
                "DomainIsMisconfigured: Domain is misconfigured and cannot receive external mail",
                "DomainIsWellKnownDea: Domain is a well-known disposable address provider",
                "DomainPartCompliancyFailure: Domain part does not comply with the standards",
                "DoubleDotSequence: Two adjacent dots in the address",
                "Duplicate: Duplicate of an earlier entry in the same list",
                "InvalidAddressLength: Address has an invalid total length",
                "InvalidCharacterInSequence: Invalid character in the address",
                "InvalidEmptyQuotedWord: Empty quoted word in the address",
                "InvalidFoldingWhiteSpaceSequence: Invalid folding white space sequence",
                "InvalidLocalPartLength: Local part has an invalid length",
                "InvalidWordBoundaryStart: Word boundary at an invalid position",
                "IspSpecificSyntaxFailure: Does not meet the target provider formatting rules",
                "LocalEndPointRejected: Mail server rejected the local endpoint: try a higher quality level",
                "LocalSenderAddressRejected: Mail server rejected the sender address: try a higher quality level",
                "MailboxDoesNotExist: Mailbox does not exist",
                "MailboxHasInsufficientStorage: Mailbox is full or the server is out of storage",
                "MailboxIsDea: Mailbox is a disposable, throw-away address",
                "MailboxTemporarilyUnavailable: Mailbox temporarily unavailable, often grey-listing",
                "MailboxValidationTimeout: Mailbox check timed out: try a higher quality level",
                "MailExchangerIsHoneypot: Mail exchanger is a honeypot, also known as a spam trap",
                "MailExchangerIsParked: Mail exchanger is parked or inactive and may resell the data",
                "MailExchangerIsWellKnownDea: Mail exchanger is a well-known disposable address provider",
                "OverrideMatch: Matched one of your own custom classifier rules",
                "ServerDoesNotAllowMultipleRecipients: Server may accept fake addresses, so the mailbox is unconfirmed",
                "ServerDoesNotSupportInternationalMailboxes: Server does not support international mailbox names",
                "ServerIsCatchAll: Server is catch-all, so the mailbox cannot be confirmed",
                "ServerTemporaryUnavailable: Mail server temporarily unavailable: try a higher quality level",
                "SmtpConnectionFailure: SMTP connection failed: try a higher quality level",
                "SmtpConnectionTimeout: SMTP connection timed out: try a higher quality level",
                "SmtpDialogError: Mail server replied in a non-standard way",
                "Success: Success: valid, with no high-risk factors detected",
                "UnacceptableDomainLiteral: Domain literal cannot accept mail from the internet",
                "UnbalancedCommentParenthesis: Unbalanced comment parentheses in the address",
                "UnexpectedQuotedPairSequence: Unexpected quoted pair sequence in a quoted word",
                "UnhandledException: Verification failed for a technical reason: retrying may resolve it",
                "UnmatchedQuotedPair: Quoted pair in a quoted word is not properly closed"
              ]
            },
            "default": []
          },
          "excludeDisposable": {
            "title": "Drop disposable addresses",
            "type": "boolean",
            "description": "Leave out throw-away addresses, whether the provider recognised the domain, the mailbox or the mail exchanger as disposable. These are the usual signature of a signup that was never meant to be reachable.",
            "default": false
          },
          "excludeRoleAccounts": {
            "title": "Drop role addresses",
            "type": "boolean",
            "description": "Leave out shared mailboxes such as info, sales, support and postmaster. They are real and deliverable, but they belong to a function rather than a person, and marketing sent to them is a common source of complaints.",
            "default": false
          },
          "excludeFreeEmail": {
            "title": "Drop free mail providers",
            "type": "boolean",
            "description": "Leave out addresses on consumer mail services, keeping only company domains. Useful when the list is meant to be a business one.",
            "default": false
          },
          "excludeCatchAll": {
            "title": "Drop catch-all servers",
            "type": "boolean",
            "description": "Leave out addresses whose receiving server accepts mail for every possible mailbox, so the individual address cannot be confirmed either way. Many real business domains are configured this way, so dropping them removes real people as well as risk. The flag is there either way, so you can decide rather than have it decided.",
            "default": false
          },
          "excludeHoneypots": {
            "title": "Drop spam traps",
            "type": "boolean",
            "description": "Leave out addresses identified as honeypots. A spam trap exists purely to catch senders who mail without verifying, and hitting one can damage your sending reputation far out of proportion to the single message.",
            "default": false
          },
          "excludeDuplicates": {
            "title": "Drop duplicates found by the provider",
            "type": "boolean",
            "description": "Leave out addresses the provider marked as a repeat of an earlier entry in the same job. Only does anything when duplicate detection is switched on above.",
            "default": false
          },
          "jobName": {
            "title": "Job name",
            "type": "string",
            "description": "An optional label for this verification job, for your own reference when you look at it later in your provider account."
          },
          "retention": {
            "title": "Data retention period",
            "type": "string",
            "description": "How long the provider keeps this job and the addresses in it once it completes, written as dd.hh:mm:ss, for example 0:30:0 for thirty minutes or 2.0:0:0 for two days. The minimum is five minutes and the maximum is thirty days. Leave empty to use your account default."
          },
          "deleteJobWhenDone": {
            "title": "Delete the job after collecting results",
            "type": "boolean",
            "description": "Remove the job and the addresses in it from your provider account as soon as this run has read them. Off by default: the job has already been paid for and its results can be read again for free while it exists, so deleting it early throws that away. Turn it on when the list is sensitive enough that it should not sit on the provider.",
            "default": false
          },
          "priority": {
            "title": "Job priority",
            "minimum": 0,
            "maximum": 255,
            "type": "integer",
            "description": "How this job competes with your other concurrent jobs on the same account, from 0 for the lowest to 255 for the highest, with 127 as normal. Only matters when you have several running at once. Leave at zero to let the provider treat them all the same.",
            "default": 0
          },
          "providerWaitSeconds": {
            "title": "Provider wait per request",
            "minimum": 0,
            "maximum": 30,
            "type": "integer",
            "description": "How long the provider holds each request open waiting for the job to finish, up to its own ceiling of 30 seconds. Leaving this high is usually right: it turns a poll loop into one or two requests. The provider may still answer sooner and the run will poll behind it.",
            "default": 30
          },
          "jobTimeoutMinutes": {
            "title": "Job timeout in minutes",
            "minimum": 1,
            "maximum": 720,
            "type": "integer",
            "description": "Give up waiting after this long. The job keeps running at the provider and its results stay available there, so nothing is lost and a later run can collect them. Mailbox verification waits on other people servers, so a long list at a high quality level genuinely can take a while.",
            "default": 30
          },
          "reportBalance": {
            "title": "Report your provider balance",
            "type": "boolean",
            "description": "Log how many credits your provider account has left before the run starts. Informational only, and it needs its own permission on the credential, so a credential that verifies perfectly well may still not be allowed to read it. The run continues either way.",
            "default": false
          },
          "skipNotFound": {
            "title": "Skip inputs with no result",
            "type": "boolean",
            "description": "Leave inputs that were refused before submission out of the dataset. Off by default, because knowing which of your lines were not usable addresses is usually the point. They are never charged for either way.",
            "default": false
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Stop after this many rows. This provider charges when a job is submitted rather than when it is read, so the address list is trimmed to this number before it is sent: the cap controls what you spend at the provider as well as what you spend here.",
            "default": 100
          },
          "username": {
            "title": "Account user name",
            "type": "string",
            "description": "The user name of your own account with the email verification provider. Use a dedicated user rather than the account administrator, and grant it only the email verification permissions, so a leak costs you as little as possible."
          },
          "password": {
            "title": "Account password",
            "type": "string",
            "description": "The password for that user. Stored as a secret and never logged. Note that this provider can also refuse a perfectly correct credential when the account has a firewall rule that does not include the address the run comes from."
          },
          "apiKey": {
            "title": "Bearer token",
            "type": "string",
            "description": "A bearer token you have already obtained from the provider, used instead of the user name and password. Optional: most runs should leave this empty and fill in the two fields above. Stored as a secret."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}