{
  "openapi": "3.0.1",
  "info": {
    "title": "Indonesia BPOM Registered Products (cekbpom)",
    "description": "Products registered with Indonesia's food and drug agency BPOM (cekbpom.pom.go.id) as English-keyed JSON: registration number (NIE), product, brand, class, status, approval and expiry dates, registrant, importer and ingredients. Cosmetics, food, medicines, supplements and more.",
    "version": "0.1",
    "x-build-id": "UHyBLvDeXmGOD2QSD"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/a-g-d~id-bpom/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-a-g-d-id-bpom",
        "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/a-g-d~id-bpom/runs": {
      "post": {
        "operationId": "runs-sync-a-g-d-id-bpom",
        "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/a-g-d~id-bpom/run-sync": {
      "post": {
        "operationId": "run-sync-a-g-d-id-bpom",
        "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": {
          "productClass": {
            "title": "Product class",
            "enum": [
              "cosmetics",
              "processed-food",
              "medicines",
              "traditional-medicines",
              "jamu",
              "phytopharmaceuticals",
              "standardised-herbal-medicines",
              "other-natural-medicines",
              "health-supplements",
              "quasi-drugs",
              "all"
            ],
            "type": "string",
            "description": "Which of BPOM's product lists to search. Results come newest approval first. \"All classes\" searches every list at once.",
            "default": "cosmetics"
          },
          "productName": {
            "title": "Product name",
            "type": "string",
            "description": "Only products whose name contains this text (case-insensitive), e.g. \"serum\" or \"paracetamol\". Leave empty for all.",
            "default": ""
          },
          "brand": {
            "title": "Brand",
            "type": "string",
            "description": "Only products whose brand (merk) contains this text (case-insensitive), e.g. \"wardah\". Leave empty for all.",
            "default": ""
          },
          "registrationNumber": {
            "title": "Registration number (NIE)",
            "type": "string",
            "description": "Only registrations whose number contains this text, e.g. a full NIE such as \"NA18261206575\" or a prefix such as \"NA1826\". Leave empty for all.",
            "default": ""
          },
          "registrant": {
            "title": "Registrant",
            "type": "string",
            "description": "Only registrations held by a company whose name contains this text, e.g. \"paragon\". The site calls this filter \"manufacturer\" but matches the registrant (pendaftar). Leave empty for all.",
            "default": ""
          },
          "status": {
            "title": "Status",
            "enum": [
              "",
              "Berlaku",
              "Berlaku (Bulk)",
              "Berlaku (Khusus Ekspor)",
              "Berlaku (dengan Mencabut Produk)",
              "Berlaku (dengan Mencabut Produk sesuai revisionId)",
              "Tidak Berlaku (Dicabut Atas Permohonan Pendaftar)",
              "Tidak Berlaku (Dicabut Karena Keamanan Mutu)",
              "Tidak Berlaku (Data Tidak Sesuai)",
              "Tidak Berlaku (Dicabut/Dibatalkan)"
            ],
            "type": "string",
            "description": "Only registrations with exactly this status. The public list showed only valid (Berlaku) registrations when this actor was built. Leave on \"Any status\" for all.",
            "default": ""
          },
          "approvedSince": {
            "title": "Approved since",
            "type": "string",
            "description": "Only registrations issued on or after this date (YYYY-MM-DD). Combine with \"Approved until\" for a window, or use alone to monitor new approvals.",
            "default": ""
          },
          "approvedUntil": {
            "title": "Approved until",
            "type": "string",
            "description": "Only registrations issued on or before this date (YYYY-MM-DD).",
            "default": ""
          },
          "expiringBefore": {
            "title": "Expiring before",
            "type": "string",
            "description": "Only registrations whose validity ends between today (Jakarta time) and this date (YYYY-MM-DD), for monitoring registrations that are about to expire.",
            "default": ""
          },
          "maxItems": {
            "title": "Maximum items",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Stop after storing this many registrations (newest approval first). The site is read politely, one request every 5 seconds, 5,000 records per request.",
            "default": 100
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Optional. cekbpom.pom.go.id is sometimes unreachable from datacenter networks; if runs fail with connection or DNS errors, try Apify Proxy.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}