{
  "openapi": "3.0.1",
  "info": {
    "title": "KYB Company Verification API - Registry, Officers, Shareholders",
    "description": "KYB and company registry data with the Kyckr API: search 300 official registers in 100 countries by name or number, read Lite and Enhanced company profiles with directors, shareholders and UBOs, list registry filings and look up orders. Bring your own key.",
    "version": "0.1",
    "x-build-id": "DLeJPZT963cFmbw9W"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~kyb-company-verification-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-kyb-company-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~kyb-company-verification-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-kyb-company-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~kyb-company-verification-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-kyb-company-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": {
          "mode": {
            "title": "What to run",
            "enum": [
              "search",
              "lite",
              "enhanced",
              "documents",
              "orders",
              "order"
            ],
            "type": "string",
            "description": "Company search finds companies on an official register by name or registration number and returns their Kyckr IDs. Lite profile verifies basic registration details live from the register. Enhanced profile (KYB) adds officers and directors, shareholders, beneficial owners and share capital. Registry documents lists the filings available for a company. Order history and Order lookup read orders already on your Kyckr account. Lite and Enhanced profiles use Kyckr credits.",
            "default": "search"
          },
          "environment": {
            "title": "Environment",
            "enum": [
              "production",
              "test"
            ],
            "type": "string",
            "description": "Production reads live registers and is billed by Kyckr. Test calls the Kyckr sandbox (test-api.kyckr.com) with a sandbox key: sample data, no Kyckr charges, and name search returns every sample company for the country.",
            "default": "production"
          },
          "isoCode": {
            "title": "Jurisdiction",
            "type": "string",
            "description": "Company search, the profile and document modes, and Order history. Two-letter ISO country code of the register, such as GB, DE or AU, or a US state or Canadian province code such as US-NY, US-DE or CA-ON. Leave empty in Company search for a global name search of Kyckr's stored index. Required to search by registration number."
          },
          "companyNames": {
            "title": "Company names",
            "type": "array",
            "description": "Company search only. One company name per line, up to 500 searches a run together with the numbers.",
            "items": {
              "type": "string"
            }
          },
          "companyNumbers": {
            "title": "Registration numbers",
            "type": "array",
            "description": "Company search, and the profile and document modes. One registration number per line, searched in the jurisdiction above. In the profile and document modes each number is first resolved to its Kyckr ID with a search.",
            "items": {
              "type": "string"
            }
          },
          "kyckrIds": {
            "title": "Kyckr IDs",
            "type": "array",
            "description": "Lite profile, Enhanced profile and Registry documents. One Kyckr ID per line, as returned in the kyckrId column of a Company search, such as GB|MTE2NTUyOTA. Up to 500 companies a run.",
            "items": {
              "type": "string"
            }
          },
          "showDirectorships": {
            "title": "Include other directorships",
            "type": "boolean",
            "description": "Enhanced profile only. Adds each director's positions at other companies, where Kyckr supports it (currently GB only).",
            "default": false
          },
          "waitForPendingMinutes": {
            "title": "Wait for pending profiles (minutes)",
            "minimum": 0,
            "maximum": 30,
            "type": "integer",
            "description": "Enhanced profile only. Some registries answer slowly, and Kyckr then returns an order id instead of the profile. The run polls those orders for up to this many minutes and collects the finished profiles. Anything still pending is listed with its order id for the Order lookup mode.",
            "default": 5
          },
          "customerReference": {
            "title": "Customer reference",
            "type": "string",
            "description": "Lite profile, Enhanced profile and Registry documents. Optional reference of your own, such as a case number, that Kyckr stores with the request and shows in your order list."
          },
          "startDate": {
            "title": "Orders from",
            "type": "string",
            "description": "Order history only. Earliest order date, YYYY-MM-DD or ISO-8601 date-time."
          },
          "endDate": {
            "title": "Orders to",
            "type": "string",
            "description": "Order history only. Latest order date, YYYY-MM-DD or ISO-8601 date-time."
          },
          "orderIds": {
            "title": "Order ids",
            "type": "array",
            "description": "Order lookup only. One Kyckr order id per line, such as the order id of a pending Enhanced profile row.",
            "items": {
              "type": "string"
            }
          },
          "downloadProfiles": {
            "title": "Download finished profiles",
            "type": "boolean",
            "description": "Order lookup only. When an order succeeded and has structured data, download its JSON profile and return it as an Enhanced profile row.",
            "default": true
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "The most rows this run returns and charges for. Only this many companies are sent for profiles, so no Kyckr credit is spent on rows that would be cut.",
            "default": 100
          },
          "requestsPerMinute": {
            "title": "Requests per minute",
            "minimum": 1,
            "maximum": 600,
            "type": "integer",
            "description": "Pacing. A rate limit answer is waited out and retried; an empty credit balance ends the run.",
            "default": 60
          },
          "apiKey": {
            "title": "API key",
            "type": "string",
            "description": "Your own Kyckr V2 API key, issued by Kyckr (production keys for Production, sandbox keys for Test). Sent only to Kyckr in the Authorization header, never logged. Stored as a secret. You can instead set the DATA_API_KEY environment 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
                  },
                  "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}