{
  "openapi": "3.0.1",
  "info": {
    "title": "France Companies (SIRENE) - Legal Entities, NAF & Financials",
    "description": "French companies from the official INSEE Sirene search API: SIREN, head-office SIRET, legal form, NAF code, staff band, city/postcode, revenue and labels. Legal entities only; no officers' names or street addresses. Licence Ouverte 2.0. Unofficial; not affiliated with INSEE.",
    "version": "0.1",
    "x-build-id": "JXlxNnxnRnWWqoaZu"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/jpopendata~france-companies-sirene/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-jpopendata-france-companies-sirene",
        "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/jpopendata~france-companies-sirene/runs": {
      "post": {
        "operationId": "runs-sync-jpopendata-france-companies-sirene",
        "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/jpopendata~france-companies-sirene/run-sync": {
      "post": {
        "operationId": "run-sync-jpopendata-france-companies-sirene",
        "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": {
          "keywords": {
            "title": "Keywords (company name)",
            "type": "array",
            "description": "Optional. Words from the company's name, acronym or trade name, e.g. \"carrefour\", \"boulangerie\", \"cabinet comptable\". Each keyword is a separate search combined with the filters below; results are merged without duplicates. Only companies whose own names contain the keyword are kept (searches by a person's name or a street address return nothing). Put places in Departments / Postcodes, not here.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sirens": {
            "title": "SIREN / SIRET list (lookup)",
            "type": "array",
            "description": "Optional. Look up these companies directly: SIREN (9 digits, e.g. \"552100554\"), SIRET (14 digits) or French VAT number (\"FR40552100554\"); spaces and dots are fine. When set, the run ONLY looks up these (keywords and filters are ignored) and every listed number is looked up regardless of Max rows. Up to 10,000 per run (about 1.2 s each).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "nafCodes": {
            "title": "Activity codes (NAF/APE)",
            "type": "array",
            "description": "Optional. NAF rev. 2 codes: \"62.01Z\" (or \"6201Z\"), a class \"62.01\", a division \"62\" (every code 62.xxx) or a section letter \"J\" (information and communication). Several values = any of them. Codes: https://www.insee.fr/fr/information/2406147",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "departments": {
            "title": "Departments",
            "type": "array",
            "description": "Optional. Department codes or names: \"75\", \"69\", \"2A\", \"971\", \"Bouches-du-Rhône\". Matches companies with at least one establishment there (not only the head office). Several values = any of them.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "regions": {
            "title": "Regions",
            "type": "array",
            "description": "Optional. Regions by name or INSEE code: \"Île-de-France\" (11), \"Auvergne-Rhône-Alpes\" (84), \"Occitanie\" (76), \"PACA\" (93), \"Bretagne\" (53) ... Former regions such as \"Alsace\" or \"Rhône-Alpes\" are turned into their departments. Combined with Departments as any of them.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "postalCodes": {
            "title": "Postcodes",
            "type": "array",
            "description": "Optional. 5-digit French postcodes, e.g. \"75011\", \"69002\", \"13008\". Matches companies with at least one establishment at that postcode. If you also give departments, a company matching either is returned.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "legalForms": {
            "title": "Legal forms",
            "type": "array",
            "description": "Optional. INSEE legal-form codes or common names: \"SAS\" (5710), \"SARL\" (all 54xx), \"SA\", \"SCI\", \"SNC\", \"SCOP\", \"SELARL\", \"GIE\", \"association\", \"fondation\", a code \"5710\" or a prefix \"54\". Sole proprietors (EI, micro-entrepreneur, code 1000) and groupings without legal personality (2xxx) are never returned. Codes: https://www.insee.fr/fr/information/2028129",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "employeeBands": {
            "title": "Staff bands",
            "type": "array",
            "description": "Optional. Ranges following the INSEE bands, e.g. \"10-49\", \"50-249\", \"250+\", \"1-9\", \"0\" (no employees), or INSEE codes (NN, 00, 01, 02, 03, 11, 12, 21, 22, 31, 32, 41, 42, 51, 52, 53).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "companyCategories": {
            "title": "Company categories",
            "type": "array",
            "description": "Optional. INSEE size categories: PME (SME), ETI (mid-size), GE (large).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "labels": {
            "title": "Labels and registrations",
            "type": "array",
            "description": "Optional. Keep only companies with ALL of these: ess, rge, qualiopi, bio, siae, societe_mission, association, finess, uai, organisme_formation, egapro, patrimoine_vivant, achats_responsables, alim_confiance, entrepreneur_spectacle, collectivite_territoriale, administration, convention_collective.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "status": {
            "title": "Status",
            "enum": [
              "active",
              "ceased",
              "any"
            ],
            "type": "string",
            "description": "Active companies (default), ceased ones, or both.",
            "default": "active"
          },
          "revenueMin": {
            "title": "Minimum revenue (EUR)",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Minimum latest published revenue (chiffre d'affaires) in euros, e.g. 1000000. Companies without published accounts are left out when this is set."
          },
          "revenueMax": {
            "title": "Maximum revenue (EUR)",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Maximum latest published revenue in euros."
          },
          "includeCorporateOfficers": {
            "title": "Include corporate officers (legal persons only)",
            "type": "boolean",
            "description": "Add officers that are companies (e.g. the statutory auditor firm or a holding acting as president): name, SIREN and role. Officers who are natural persons are never returned; only their number is given.",
            "default": false
          },
          "maxItems": {
            "title": "Max rows",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum company rows from keyword/filter searches (1..200,000). You are charged per row. Large searches are split automatically past the API's 10,000-result limit; about 1,200 rows per minute.",
            "default": 20
          },
          "maxApiRequests": {
            "title": "Max API requests",
            "minimum": 1,
            "type": "integer",
            "description": "Safety cap on API requests for searches (1..20,000; 25 companies per request, at least 1.2 s apart). Each listed SIREN/SIRET adds one request on top. If the cap is reached the rows read so far are kept and the run says it is incomplete.",
            "default": 500
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}