{
  "openapi": "3.0.1",
  "info": {
    "title": "GLEIF LEI Lookup & Entity Change Monitor",
    "description": "Look up official GLEIF legal entities and track renewal, status, published parent, subsidiary, successor, predecessor, and relationship changes.",
    "version": "0.1",
    "x-build-id": "nvJHffa3T8pOrRkDy"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/luminar~gleif-lei-change-monitor/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-luminar-gleif-lei-change-monitor",
        "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/luminar~gleif-lei-change-monitor/runs": {
      "post": {
        "operationId": "runs-sync-luminar-gleif-lei-change-monitor",
        "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/luminar~gleif-lei-change-monitor/run-sync": {
      "post": {
        "operationId": "run-sync-luminar-gleif-lei-change-monitor",
        "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": {
          "mode": {
            "title": "Workflow",
            "enum": [
              "baseline",
              "changes"
            ],
            "type": "string",
            "description": "Assess current companies returns enriched current records and a portfolio summary. Track verified changes compares with the previous successful run for the exact same scope.",
            "default": "baseline"
          },
          "leis": {
            "title": "LEI codes",
            "maxItems": 200,
            "uniqueItems": true,
            "type": "array",
            "description": "Exact 20-character LEIs. Exact LEIs receive an EXACT_LEI_MATCH identity verdict. At least one LEI, company name, or country target is required.",
            "items": {
              "type": "string",
              "pattern": "^[A-Za-z0-9]{18}[0-9]{2}$",
              "maxLength": 20
            }
          },
          "companyNames": {
            "title": "Registered company names",
            "maxItems": 100,
            "uniqueItems": true,
            "type": "array",
            "description": "Search official GLEIF legal and other names. Each result includes deterministic match confidence and evidence; confirm the returned LEI before automation.",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 200
            }
          },
          "countries": {
            "title": "Countries",
            "maxItems": 20,
            "uniqueItems": true,
            "type": "array",
            "description": "ISO two-letter countries. With company names, these filter each search. When countries are the only targets, the Actor exports a bounded country registry up to Maximum company records with truthful FILTERED or CAPPED coverage.",
            "items": {
              "type": "string",
              "pattern": "^[A-Za-z]{2}$",
              "maxLength": 2
            }
          },
          "maxEntities": {
            "title": "Maximum company records",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Stops after this many unique company records. Reaching the limit reports CAPPED when more records may exist. For a large country export, turn off optional enrichment unless you need its extra official-source work.",
            "default": 5
          },
          "maxTrackedItems": {
            "title": "Maximum tracked items",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Used only by Track verified changes. Caps the combined company and relationship state and the paid changes delivered by one run. Source work is preflighted for up to twice this number so current changes and safely confirmed ended items can coexist without surprise charges.",
            "default": 25
          },
          "maxBuyerChargeUsd": {
            "title": "Maximum Actor charge",
            "minimum": 0.001,
            "maximum": 25,
            "type": "number",
            "description": "Stops before the worst-case proposed result charge for the selected limits exceeds this amount. Your Apify account can apply an additional per-run spending limit.",
            "default": 0.25
          },
          "country": {
            "title": "Legacy country filter",
            "pattern": "^[A-Za-z]{2}$",
            "maxLength": 2,
            "type": "string",
            "description": "Backward-compatible single-country alias. New inputs should use Countries."
          },
          "registrationNumber": {
            "title": "Expected registration number",
            "maxLength": 100,
            "type": "string",
            "description": "Optional home-registry number. A normalized match against GLEIF registeredAs becomes explicit identity evidence; a mismatch is never hidden."
          },
          "entityStatus": {
            "title": "Entity status",
            "enum": [
              "ACTIVE",
              "INACTIVE"
            ],
            "type": "string",
            "description": "Optional company-name search filter using GLEIF legal-entity status."
          },
          "registrationStatus": {
            "title": "LEI registration status",
            "enum": [
              "ISSUED",
              "LAPSED",
              "RETIRED",
              "ANNULLED",
              "CANCELLED",
              "DUPLICATE",
              "PENDING_TRANSFER",
              "PENDING_ARCHIVAL"
            ],
            "type": "string",
            "description": "Optional company-name search filter for the current GLEIF registration state."
          },
          "entityCategory": {
            "title": "Entity category",
            "enum": [
              "GENERAL",
              "FUND",
              "SOLE_PROPRIETOR",
              "BRANCH",
              "RESIDENT_GOVERNMENT_ENTITY",
              "INTERNATIONAL_ORGANIZATION"
            ],
            "type": "string",
            "description": "Optional company-name search filter for the broad GLEIF entity category."
          },
          "outputProfile": {
            "title": "Result detail",
            "enum": [
              "essential",
              "decision",
              "standard",
              "full"
            ],
            "type": "string",
            "description": "Controls delivered company-row detail without weakening monitoring state. Standard includes official fields, identity evidence, renewal, quality, review signals and parent context.",
            "default": "standard"
          },
          "reviewPolicy": {
            "title": "Review policy",
            "enum": [
              "balanced",
              "renewal_strict",
              "identity_strict"
            ],
            "type": "string",
            "description": "Selects transparent source-backed review weights. It changes review priority and the decision path, never sanctions, legal, credit, or onboarding approval.",
            "default": "balanced"
          },
          "deltaWindow": {
            "title": "GLEIF change window",
            "enum": [
              "INTRA_DAY",
              "LAST_DAY",
              "LAST_WEEK",
              "LAST_MONTH"
            ],
            "type": "string",
            "description": "Used by Track verified changes. Larger official delta files can exceed the source-byte safety limit and are rejected before download.",
            "default": "INTRA_DAY"
          },
          "includeUnchanged": {
            "title": "Include unchanged audit records",
            "type": "boolean",
            "description": "Used only by Track verified changes. Adds unchanged records for audit workflows; they are not charged as change results.",
            "default": false
          },
          "watchlistName": {
            "title": "Monitoring scope name",
            "maxLength": 64,
            "type": "string",
            "description": "Optional stable label for a tracked portfolio. It becomes part of the state scope, so different names keep independent comparison histories."
          },
          "includeParentContext": {
            "title": "Resolve published parent context",
            "type": "boolean",
            "description": "Adds official direct/ultimate parent basics or GLEIF reporting exceptions to each company result. Included by default because it is central to counterparty review.",
            "default": true
          },
          "resolveReferenceData": {
            "title": "Resolve legal-form and authority names",
            "type": "boolean",
            "description": "Resolves official GLEIF legal-form and registration-authority codes to human-readable names. Cached within the run.",
            "default": true
          },
          "includeRelationships": {
            "title": "Include raw relationship records",
            "type": "boolean",
            "description": "Adds official source requests and runtime for separate parent, head-office, branch and fund relationship rows. In Assess current companies these rows are bundled with the company-record event; in Track verified changes, only a delivered NEW, UPDATED or safely confirmed ENDED relationship uses the change event.",
            "default": false
          },
          "includeChildren": {
            "title": "Include subsidiaries",
            "type": "boolean",
            "description": "Adds official source requests and runtime for direct/ultimate child counts and relationship rows. In Assess current companies these rows are bundled with the company-record event; in Track verified changes, only a delivered child-relationship change uses the change event. Large groups remain bounded by Maximum relationship records.",
            "default": false
          },
          "includeSuccessorsPredecessors": {
            "title": "Include successors and predecessors",
            "type": "boolean",
            "description": "Adds official source requests and runtime for successor/predecessor links and legal-entity events. In Assess current companies they are included with the company-record event; in Track verified changes, only a delivered verified transition uses the change event. Missing links are never invented.",
            "default": false
          },
          "includeSecurities": {
            "title": "Include mapped ISIN securities",
            "type": "boolean",
            "description": "Adds official source requests and runtime for mapped ISIN identifiers. In Assess current companies they are included with the company-record event; in Track verified changes, only a delivered entity change caused by the mapped set uses the change event. Results are capped by Maximum ISINs per company.",
            "default": false
          },
          "expandHierarchy": {
            "title": "Expand published parent chain",
            "type": "boolean",
            "description": "Walks published direct-parent links up to Maximum hierarchy depth. This adds official source requests and runtime. The chain is included with each company result in Assess current companies; a verified chain change uses the change event in Track verified changes.",
            "default": false
          },
          "maxHierarchyDepth": {
            "title": "Maximum hierarchy depth",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Maximum published direct-parent levels followed when hierarchy expansion is on. A cycle or missing published link stops the chain safely.",
            "default": 5
          },
          "maxSearchResultsPerName": {
            "title": "Maximum matches per company name",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Limits each name search. A limited name search cannot prove that no other matching entity exists.",
            "default": 10
          },
          "maxRelationships": {
            "title": "Maximum relationship records",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Global limit for separately delivered parent, subsidiary, successor, predecessor, branch and fund relationship records. In Baseline these rows are bundled with delivered company records and do not add a relationship charge.",
            "default": 20
          },
          "maxSecurities": {
            "title": "Maximum ISINs per company",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Caps mapped ISIN identifiers for each company when securities are included.",
            "default": 50
          },
          "maxRequests": {
            "title": "Maximum official-source requests",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Infrastructure safety limit across the GLEIF API, Golden Copy catalogue, downloads and retries.",
            "default": 60
          },
          "maxSourceBytes": {
            "title": "Maximum official-source bytes",
            "minimum": 100000,
            "maximum": 100000000,
            "type": "integer",
            "description": "Infrastructure safety limit checked before and during official delta downloads.",
            "default": 5000000
          },
          "maxRuntimeSecs": {
            "title": "Maximum source-work runtime",
            "minimum": 30,
            "maximum": 900,
            "type": "integer",
            "description": "Infrastructure safety limit for new official-source work.",
            "default": 120
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}