{
  "openapi": "3.0.1",
  "info": {
    "title": "France SIRENE Company Scraper - SIREN/SIRET Lookup & Search",
    "description": "Search French companies by name, city, department, postcode, NAF/APE code, legal form, size or status, or look up SIREN and SIRET numbers in bulk (check digits verified first). One row per company with head office, VAT number, officers, revenue and matching establishments. No API key.",
    "version": "0.1",
    "x-build-id": "dRW1Lac16ywsI9zuH"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/neverempty~france-sirene-company-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-neverempty-france-sirene-company-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/neverempty~france-sirene-company-scraper/runs": {
      "post": {
        "operationId": "runs-sync-neverempty-france-sirene-company-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/neverempty~france-sirene-company-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-neverempty-france-sirene-company-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": {
          "ids": {
            "title": "SIREN or SIRET numbers to look up",
            "type": "array",
            "description": "SIREN (9 digits, a company) or SIRET (14 digits, one establishment) numbers to look up in bulk, up to 3,000 per run. Spaces and dots inside a number are fine (552 120 222); a French VAT number such as FR63441639465 is read as its SIREN. Every number is checked against its Luhn check digit before it is sent, so a typo is reported as a typo instead of 'not found'. When numbers are given, the search fields below are not used.",
            "items": {
              "type": "string"
            }
          },
          "query": {
            "title": "Company name (search)",
            "type": "string",
            "description": "Words to search for, at least 3 characters, for example boulangerie or renault. Case, accents and hyphens are ignored. The source matches whole words and also searches addresses and the names of officers and elected officials; see 'Match the words in' below."
          },
          "searchIn": {
            "title": "Match the words in",
            "enum": [
              "names",
              "everything"
            ],
            "type": "string",
            "description": "Company names (default) keeps only companies whose own name, acronym, trade name or shop sign contains every word: the source on its own also returns companies whose street or officer has that name (on 2026-09-11, 'renault' in postcode 76450 returned 9 companies, 2 of them only because of an officer's name). Everything returns what the source returns.",
            "default": "names"
          },
          "departments": {
            "title": "Departments",
            "type": "array",
            "description": "French department codes, for example 75, 92, 69, 2A, 971. Several codes mean any of them. Location filters match any establishment of the company, so a company whose head office is elsewhere is returned when one of its establishments is in the area; those establishments are listed in matchingEstablishments.",
            "items": {
              "type": "string"
            }
          },
          "postalCodes": {
            "title": "Postcodes",
            "type": "array",
            "description": "5-digit postcodes, for example 75011 or 69002. Several codes mean any of them.",
            "items": {
              "type": "string"
            }
          },
          "communeCodes": {
            "title": "Commune codes (INSEE)",
            "type": "array",
            "description": "5-character INSEE commune codes (not postcodes), for example 92012 for Boulogne-Billancourt. The source files Paris, Lyon and Marseille under their arrondissements, so 75056, 69123 and 13055 are sent as their arrondissement codes (75101-75120, 69381-69389, 13201-13216).",
            "items": {
              "type": "string"
            }
          },
          "regions": {
            "title": "Regions",
            "type": "array",
            "description": "2-digit INSEE region codes, for example 11 (Ile-de-France), 84 (Auvergne-Rhone-Alpes), 93 (Provence-Alpes-Cote d'Azur).",
            "items": {
              "type": "string"
            }
          },
          "nafCodes": {
            "title": "Activity codes (NAF / APE)",
            "type": "array",
            "description": "NAF rev. 2 codes of the main activity, for example 62.01Z (computer programming) or 10.71C (bakery). 6201Z is read as 62.01Z. Several codes mean any of them.",
            "items": {
              "type": "string"
            }
          },
          "sections": {
            "title": "Activity sections",
            "type": "array",
            "description": "NAF section letters A to U, for example F (construction), I (accommodation and food), J (information and communication).",
            "items": {
              "type": "string"
            }
          },
          "legalForms": {
            "title": "Legal form codes",
            "type": "array",
            "description": "INSEE legal category codes (4 digits), for example 5710 (SAS), 5499 (SARL), 5599 (SA), 1000 (sole trader), 9220 (declared association).",
            "items": {
              "type": "string"
            }
          },
          "companyCategories": {
            "title": "Company size category",
            "type": "array",
            "description": "Any of PME (small and medium), ETI (intermediate-sized) and GE (large).",
            "items": {
              "type": "string"
            }
          },
          "employeeBands": {
            "title": "Employee bands",
            "type": "array",
            "description": "INSEE headcount band codes: NN (no employee data), 00 (0 employees), 01 (1-2), 02 (3-5), 03 (6-9), 11 (10-19), 12 (20-49), 21 (50-99), 22 (100-199), 31 (200-249), 32 (250-499), 41 (500-999), 42 (1,000-1,999), 51 (2,000-4,999), 52 (5,000-9,999), 53 (10,000 or more).",
            "items": {
              "type": "string"
            }
          },
          "status": {
            "title": "Company status",
            "enum": [
              "any",
              "active",
              "closed"
            ],
            "type": "string",
            "description": "Active or closed (ceased) companies, or both.",
            "default": "any"
          },
          "soleTraders": {
            "title": "Sole traders (entreprises individuelles)",
            "enum": [
              "any",
              "only",
              "exclude"
            ],
            "type": "string",
            "description": "Include, exclude or return only sole traders. A sole trader's company name is the owner's own name.",
            "default": "any"
          },
          "maxResults": {
            "title": "Maximum companies (search)",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "The most companies a search returns, up to 50,000. The source stops every search at 10,000 results; above that this Actor splits the search by department, then reads each activity section on its own to reach companies whose head office is outside France, and skips companies already returned. If the section counts show companies that could not be reached, a row says how many.",
            "default": 100
          },
          "maxEstablishmentsPerCompany": {
            "title": "Matching establishments per company",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "How many of a company's establishments that matched the search to list in each row (1 to 100, the source's limit). A company can have more matching establishments than this: matchingEstablishmentsMayBeMore is true when the list reached this number.",
            "default": 10
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}