{
  "openapi": "3.0.1",
  "info": {
    "title": "Russian Software Registry Check by INN",
    "description": "Check whether a company (by INN) or a software product (by name) is listed in the Unified Register of Russian Programs for Electronic Computers and Databases, with registry number, class and registration date.",
    "version": "0.1",
    "x-build-id": "98lne4KHHEC6kZgM7"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/isolovyev~ru-software-registry-check/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-isolovyev-ru-software-registry-check",
        "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/isolovyev~ru-software-registry-check/runs": {
      "post": {
        "operationId": "runs-sync-isolovyev-ru-software-registry-check",
        "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/isolovyev~ru-software-registry-check/run-sync": {
      "post": {
        "operationId": "run-sync-isolovyev-ru-software-registry-check",
        "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": {
          "inns": {
            "title": "Company INNs",
            "type": "array",
            "description": "Right holder INN (10 digits for an organization, 12 for an individual/sole proprietor). Exact-match key on the registry - the recommended way to check a known supplier.",
            "items": {
              "type": "string"
            }
          },
          "productNames": {
            "title": "Product names (optional)",
            "type": "array",
            "description": "Software product name to search when you don't have the right holder's INN. Substring match. For each match the actor resolves the right holder and, unless disabled, returns that company's full registry portfolio.",
            "items": {
              "type": "string"
            }
          },
          "softwareClasses": {
            "title": "Software classes (optional)",
            "type": "array",
            "description": "Registry classifier codes to enumerate in full, e.g. '06.09' for a single class or '06' for the whole group. Returns every right holder that has a product in the class, grouped by company, with the same dossier as an INN query. Use it for category research when you do not know the names upfront.",
            "items": {
              "type": "string"
            }
          },
          "changesSince": {
            "title": "Changes since (optional)",
            "type": "string",
            "description": "Return what entered the registry on or after this date, grouped by right holder. Accepts 2026-07-01 or 01.07.2026. Use it to watch the registry for new entries instead of re-checking a list of INNs."
          },
          "maxChangedProducts": {
            "title": "Max changed entries",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Safety cap for the changes mode. A month of registry activity is roughly 400 entries, and each one costs a request plus a result. When the cap cuts the period short, the run log says so and every result carries changesTruncated.",
            "default": 300
          },
          "maxMatchesPerName": {
            "title": "Max matches per product name",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "For each entry in 'Product names', how many matching registry entries to fetch a right-holder INN for.",
            "default": 10
          },
          "maxProductsPerClass": {
            "title": "Max products per class",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Safety cap on how many registry products to take per class. A class can hold hundreds of products, and each one costs an extra request plus a result.",
            "default": 100
          },
          "expandRightHolder": {
            "title": "Expand right holder portfolio",
            "type": "boolean",
            "description": "For product-name searches, after resolving the right holder also return all of that company's products in the registry (matchedProducts stays the specific match). Turn off for a lighter match-only result.",
            "default": true
          },
          "enrichRightHolder": {
            "title": "Enrich right holder dossier",
            "type": "boolean",
            "description": "Collect public-source applicant signals for each resolved registry right holder. Defaults to on for INN, product-name and class queries, and to off in the changes mode, where one run resolves hundreds of companies. Tick it to force it on there."
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Required on Apify: set proxyConfiguration to Apify Residential proxy with country RU. All sources require a Russian IP.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "RU"
            }
          },
          "includePendingRequests": {
            "title": "Include pending applications",
            "type": "boolean",
            "description": "Also return applications that are still under review, months before the software appears in the registry. Applications already included or rejected are skipped.",
            "default": false
          },
          "maxPendingRequests": {
            "title": "Max applications per query",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Safety cap on applications fetched per query.",
            "default": 50
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}