{
  "openapi": "3.0.1",
  "info": {
    "title": "Global Sources Scraper & API: Products, MOQ, Verified Suppliers",
    "description": "Use this to find Global Sources products and verified suppliers by keyword. Input: search terms, optional price, MOQ, location, manufacturer and certificate filters. One result = one product: title, price range, MOQ, lead time, FOB port, supplier, ranking, verified badges, URL. $1.50 per 1,000.",
    "version": "1.0",
    "x-build-id": "O5H6FjIn03hMNfQiZ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/rel8ble~global-sources-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-rel8ble-global-sources-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/rel8ble~global-sources-scraper/runs": {
      "post": {
        "operationId": "runs-sync-rel8ble-global-sources-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/rel8ble~global-sources-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-rel8ble-global-sources-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "searchTerms": {
            "title": "Search terms",
            "type": "array",
            "description": "Provide at least one. Product keywords to search on GlobalSources.com, e.g. [\"led light\", \"yoga mat\"], or Global Sources search URLs (https://www.globalsources.com/searchList/products?keyWord=...); filters in a pasted URL are kept. One search per line. Default [\"led light\"] (demo only).",
            "default": [
              "led light"
            ],
            "items": {
              "type": "string"
            }
          },
          "maxResultsPerSearch": {
            "title": "Max results per search",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Maximum products saved per search term, integer >= 0. Default 100; 0 = everything (up to 20,000 per search). You pay per product, so use 10-20 for a quick answer.",
            "default": 100
          },
          "minPrice": {
            "title": "Min unit price (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Minimum FOB unit price in US dollars, integer >= 0. Products whose highest price is below it are skipped (and not charged). Omit for no minimum."
          },
          "maxPrice": {
            "title": "Max unit price (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Maximum FOB unit price in US dollars, integer >= 0. Products whose lowest price is above it, or with no price shown, are skipped (and not charged). Omit for no maximum."
          },
          "maxMoq": {
            "title": "Max MOQ",
            "minimum": 1,
            "type": "integer",
            "description": "Optional. Only products whose minimum order quantity is at or below this number, integer >= 1, e.g. 100 for low-MOQ sourcing. Applied by Global Sources itself. Omit for no limit."
          },
          "productCertifications": {
            "title": "Verified product certificates",
            "type": "array",
            "description": "Optional. Only products with one of these verified certificates, exactly as Global Sources names them, e.g. [\"CE\", \"ROHS\", \"FCC\", \"UL\"]. Omit for any.",
            "items": {
              "type": "string"
            }
          },
          "fobPorts": {
            "title": "FOB ports",
            "type": "array",
            "description": "Optional. Only products shipped FOB from one of these ports, e.g. [\"Shenzhen\", \"Ningbo\", \"Xiamen\"]. Omit for any.",
            "items": {
              "type": "string"
            }
          },
          "oemOnly": {
            "title": "OEM service only",
            "type": "boolean",
            "description": "Optional boolean. true = only suppliers offering OEM / private-label service. Default false.",
            "default": false
          },
          "supplierLocations": {
            "title": "Supplier locations",
            "type": "array",
            "description": "Optional. Supplier country or region names as Global Sources writes them, e.g. [\"China\", \"Vietnam\", \"India\", \"Taiwan\", \"Hong Kong SAR\", \"South Korea\", \"Thailand\", \"United States\"]. Omit for all.",
            "items": {
              "type": "string"
            }
          },
          "businessTypes": {
            "title": "Verified business types",
            "type": "array",
            "description": "Optional. Only suppliers verified as one of these types: \"Manufacturer\", \"Exporter\", \"Wholesaler\", \"Agent\", \"Importer\", \"Online Seller\", \"Retailer\", \"Consultant\". Omit for all.",
            "items": {
              "type": "string"
            }
          },
          "verifiedManufacturerOnly": {
            "title": "Verified manufacturers only",
            "type": "boolean",
            "description": "Optional boolean. true = only products from suppliers verified as manufacturers (factories, not traders). Default false.",
            "default": false
          },
          "minSupplierLevel": {
            "title": "Min supplier ranking (1-6)",
            "minimum": 1,
            "maximum": 6,
            "type": "integer",
            "description": "Optional. Global Sources supplier star ranking P1-P6 (6 = highest, longest-standing paying suppliers). E.g. 5 keeps P5 and P6 only. Omit for all."
          },
          "minYearsInBusiness": {
            "title": "Min years in business",
            "minimum": 1,
            "type": "integer",
            "description": "Optional. Minimum years the supplier has been in business, integer, e.g. 15. Global Sources groups years into 30+, 25-29, 15-24, 5-14 and under 5, so the bucket containing your number is included. Omit for all."
          },
          "companyCertifications": {
            "title": "Verified company certificates",
            "type": "array",
            "description": "Optional. Only suppliers holding one of these verified company certificates, e.g. [\"ISO 9001:2015\", \"ISO 14001\", \"BSCI\"]. Omit for any.",
            "items": {
              "type": "string"
            }
          },
          "tradeShowExhibitorsOnly": {
            "title": "Trade show exhibitors only",
            "type": "boolean",
            "description": "Optional boolean. true = only suppliers that exhibit at Global Sources trade shows (met in person, booth known). Default false.",
            "default": false
          },
          "includeAds": {
            "title": "Include sponsored listings",
            "type": "boolean",
            "description": "Optional boolean. true = keep sponsored listings (flagged isAd: true). false = organic results only. Default true.",
            "default": true
          },
          "maxConcurrency": {
            "title": "Max concurrency",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Optional, advanced. Parallel requests, integer 1-20. Default 5. Leave unset.",
            "default": 5
          },
          "maxRequestRetries": {
            "title": "Max retries per request",
            "minimum": 0,
            "maximum": 20,
            "type": "integer",
            "description": "Optional, advanced. Retries per failed or blocked request, integer 0-20; each retry uses a new proxy session. Default 6.",
            "default": 6
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Optional, advanced. Leave as is. Default {\"useApifyProxy\": false} = automatic: direct connection first, and only requests that get blocked are retried through Apify Proxy (datacenter, then residential). Set your own Apify Proxy groups or proxy URLs to force them for every request.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}