{
  "openapi": "3.0.1",
  "info": {
    "title": "GLEIF LEI Company Registry Scraper - Decoded Firmographics",
    "description": "[$1.50 / 1K] Search 3.4M+ legal entities in the official GLEIF LEI register. One flat row per company: legal form, registry, region and LOU decoded from GLEIF's raw codes, one canonical address, national registration number, optional parents.",
    "version": "0.1",
    "x-build-id": "Y5ce47dEydAlNCW9o"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/webdata_labs~gleif-lei-company-registry-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-webdata_labs-gleif-lei-company-registry-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/webdata_labs~gleif-lei-company-registry-scraper/runs": {
      "post": {
        "operationId": "runs-sync-webdata_labs-gleif-lei-company-registry-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/webdata_labs~gleif-lei-company-registry-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-webdata_labs-gleif-lei-company-registry-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": {
          "searchMode": {
            "title": "Search mode",
            "enum": [
              "fulltext",
              "country",
              "leiList",
              "newRegistrations"
            ],
            "type": "string",
            "description": "How to select entities. 'fulltext' searches names and identifiers; 'country' pulls every LEI registered in a country; 'leiList' looks up specific LEI codes; 'newRegistrations' returns LEIs first registered in a date range, newest first.",
            "default": "fulltext"
          },
          "query": {
            "title": "Search query",
            "type": "string",
            "description": "Company name or keyword, used when Search mode is 'fulltext'. Matches legal names, other names and identifiers. Example: siemens"
          },
          "countries": {
            "title": "Countries (ISO 3166-1 alpha-2)",
            "type": "array",
            "description": "Two-letter country codes of the legal address, used when Search mode is 'country'. Each country is fetched as its own slice. Optional in 'newRegistrations' mode to narrow to one country. Example: DE",
            "items": {
              "type": "string"
            }
          },
          "leis": {
            "title": "LEI codes",
            "type": "array",
            "description": "Exact 20-character LEI codes to look up, used when Search mode is 'leiList'. Example: 529900T8BM49AURSDO55",
            "items": {
              "type": "string"
            }
          },
          "registeredSince": {
            "title": "Registered since (YYYY-MM-DD)",
            "type": "string",
            "description": "Start of the initial-registration date range, used when Search mode is 'newRegistrations'. Example: 2026-08-01"
          },
          "registeredUntil": {
            "title": "Registered until (YYYY-MM-DD)",
            "type": "string",
            "description": "End of the initial-registration date range for 'newRegistrations'. Defaults to today when left empty."
          },
          "entityStatus": {
            "title": "Entity status",
            "enum": [
              "ANY",
              "ACTIVE",
              "INACTIVE",
              "NULL"
            ],
            "type": "string",
            "description": "Filter by the legal entity's own status. ACTIVE excludes dissolved and merged companies, which is what most lead and compliance use cases want.",
            "default": "ANY"
          },
          "registrationStatus": {
            "title": "LEI registration status",
            "enum": [
              "ANY",
              "ISSUED",
              "LAPSED",
              "MERGED",
              "RETIRED",
              "ANNULLED",
              "PENDING_TRANSFER",
              "PENDING_ARCHIVAL",
              "DUPLICATE"
            ],
            "type": "string",
            "description": "Filter by the status of the LEI record itself. ISSUED means a currently valid, maintained LEI.",
            "default": "ANY"
          },
          "cities": {
            "title": "Cities (client-side filter)",
            "type": "array",
            "description": "Keep only entities whose legal-address city matches. GLEIF does not support city filtering server-side, so this is applied after fetching and does not reduce the number of records read. Combine with Countries to keep runs small.",
            "items": {
              "type": "string"
            }
          },
          "postalCodes": {
            "title": "Postal codes (client-side filter)",
            "type": "array",
            "description": "Keep only entities whose legal-address postal code matches. Like Cities, this is applied after fetching because GLEIF does not support it server-side.",
            "items": {
              "type": "string"
            }
          },
          "includeHierarchy": {
            "title": "Resolve corporate parents",
            "type": "boolean",
            "description": "Add direct and ultimate parent LEI and name to every row. Costs two extra requests per row, so a large run takes noticeably longer. Leave off unless you need ownership data.",
            "default": false
          },
          "includeRaw": {
            "title": "Include raw GLEIF record",
            "type": "boolean",
            "description": "Attach the untouched GLEIF JSON:API record to each row under 'raw'. Useful for debugging or for fields this Actor does not flatten.",
            "default": false
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Hard cap on rows delivered. The full register holds over 3.4 million entities, so always set a cap you actually want to pay for.",
            "default": 1000
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}