{
  "openapi": "3.0.1",
  "info": {
    "title": "French Trade Shows · Exhibitor Directory · Tick Mix",
    "description": "Tick any mix of French trade shows and export exhibitor names — plus website, email and phone when printed. One row per exhibitor. Public catalogues — no login, no API key.",
    "version": "2.0",
    "x-build-id": "TbaYDnl4csVJaY4HY"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/corent1robert~fr-salon-exhibitors-hub/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-corent1robert-fr-salon-exhibitors-hub",
        "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/corent1robert~fr-salon-exhibitors-hub/runs": {
      "post": {
        "operationId": "runs-sync-corent1robert-fr-salon-exhibitors-hub",
        "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/corent1robert~fr-salon-exhibitors-hub/run-sync": {
      "post": {
        "operationId": "run-sync-corent1robert-fr-salon-exhibitors-hub",
        "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": {
          "salons": {
            "title": "Trade shows",
            "type": "array",
            "description": "Pick every show you want in this run. Combine freely. **All catalogues** includes every named show in the directory.",
            "items": {
              "type": "string",
              "enum": [
                "all",
                "premiere-vision",
                "premiere-vision-blossom",
                "premiere-vision-denim",
                "premiere-vision-made-in-france",
                "foire-de-lyon",
                "foire-de-metz",
                "sirha-lyon",
                "sirha-bakeandsnack",
                "bocusedor",
                "eurobois",
                "sepem-toulouse",
                "sepem-grenoble",
                "sepem-douai",
                "sepem-angers",
                "sepem-colmar",
                "sepem-rouen",
                "sepem-martigues",
                "vractech",
                "cfic",
                "santexpo",
                "forumlabo",
                "expobiogaz",
                "cfia-rennes",
                "cfia-toulouse",
                "amif",
                "batimat",
                "pollutec",
                "equiphotel",
                "mipim",
                "expoprotection",
                "mapic",
                "sial",
                "sia",
                "foire-de-paris",
                "silmo",
                "all4pack",
                "paris-retail-week",
                "milipol",
                "retromobile",
                "solutrans",
                "gourmet-selection",
                "salon-du-chocolat",
                "trustech",
                "siec",
                "salon-photo",
                "ultimate-supercar-garage",
                "sia-pro",
                "sitl",
                "iftm",
                "mipcom",
                "paris-photo",
                "interclima",
                "ideobain",
                "renodays",
                "big-data-paris",
                "tech-for-retail",
                "paris-packaging-week",
                "food-hotel-tech",
                "jec-world",
                "salon-des-maires",
                "foire-de-marseille",
                "mifexpo",
                "space",
                "franchise-expo-paris",
                "foire-de-nantes",
                "funexpo",
                "satis",
                "salon-ctco",
                "sommet-elevage",
                "salon-habitat-montauban",
                "salon-habitat-rodez",
                "salon-habitat-brive",
                "sitevi",
                "rent-paris",
                "innovagri",
                "salon-vert",
                "wne",
                "piscine-global",
                "paysalia",
                "bepositive",
                "hyvolution",
                "rocalia",
                "gl-events-store"
              ],
              "enumTitles": [
                "All catalogues (full directory)",
                "Première Vision Paris",
                "Première Vision Blossom",
                "Première Vision Denim",
                "Première Vision Made in France",
                "Foire de Lyon",
                "Foire de Metz",
                "Sirha Lyon",
                "Sirha Bake & Snack",
                "Bocuse d'Or",
                "Eurobois",
                "SEPEM Toulouse",
                "SEPEM Grenoble",
                "SEPEM Douai",
                "SEPEM Angers",
                "SEPEM Colmar",
                "SEPEM Rouen",
                "SEPEM Martigues",
                "VRAC TECH",
                "CFIC",
                "SantExpo",
                "Forum Labo",
                "ExpoBiogaz",
                "CFIA Rennes",
                "CFIA Toulouse",
                "Salon AMIF",
                "BATIMAT",
                "Pollutec",
                "EquipHotel",
                "MIPIM",
                "ExpoProtection",
                "MAPIC",
                "SIAL Paris",
                "Salon International de l'Agriculture",
                "Foire de Paris",
                "SILMO Paris",
                "All4Pack Paris",
                "Paris Retail Week",
                "Milipol Paris",
                "Rétromobile",
                "Solutrans",
                "Gourmet Selection",
                "Salon du Chocolat Paris",
                "Trustech",
                "SIEC",
                "Salon de la Photo",
                "Ultimate Supercar Garage Paris",
                "SIA'PRO",
                "SITL",
                "IFTM Top Resa",
                "MIPCOM",
                "Paris Photo",
                "Interclima",
                "Ideobain",
                "RenoDays",
                "Big Data & AI Paris",
                "Tech for Retail",
                "Paris Packaging Week",
                "Food Hotel Tech",
                "JEC World",
                "Salon des Maires",
                "Foire de Marseille",
                "MIFEXPO",
                "SPACE Rennes",
                "Franchise Expo Paris",
                "Foire de Nantes",
                "Funexpo",
                "SATIS",
                "Salon CTCO Lyon",
                "Sommet de l'Élevage",
                "Salon Habitat Montauban",
                "Salon Habitat Rodez",
                "Salon Habitat Brive",
                "SITEVI",
                "RENT Paris",
                "Innov-Agri",
                "Salon Vert",
                "World Nuclear Exhibition",
                "Piscine Global",
                "Paysalia",
                "BePositive",
                "Hyvolution Paris",
                "Rocalia",
                "GL Events store (discover FR)"
              ]
            },
            "default": [
              "all"
            ]
          },
          "catalogueUrls": {
            "title": "Extra catalogue URLs",
            "type": "array",
            "description": "Optional public exhibitor-list URLs. Merged with the ticked shows. Lists without printed exhibitor names are skipped.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "discoverFromStore": {
            "title": "Also walk the GL Events store",
            "type": "boolean",
            "description": "Same as ticking **GL Events store**: list FR shows on the public store, then keep those with a public exhibitor name list. Off by default — named catalogues already cover the known lists.",
            "default": false
          },
          "franceOnly": {
            "title": "France only (store index)",
            "type": "boolean",
            "description": "When walking the GL Events store, keep shows whose location is in France. Ignored for named catalogues.",
            "default": true
          },
          "onlyWithContact": {
            "title": "Only with email or phone",
            "type": "boolean",
            "description": "Skip exhibitors with neither a published email nor a published phone. Off by default — names still export.",
            "default": false
          },
          "requireEmail": {
            "title": "Only with email",
            "type": "boolean",
            "description": "Keep exhibitors that publish an email address.",
            "default": false
          },
          "requirePhone": {
            "title": "Only with phone",
            "type": "boolean",
            "description": "Keep exhibitors that publish a phone number.",
            "default": false
          },
          "requireWebsite": {
            "title": "Only with website",
            "type": "boolean",
            "description": "Keep exhibitors that publish a company website.",
            "default": false
          },
          "maxItems": {
            "title": "Max unique exhibitors",
            "minimum": 0,
            "maximum": 200000,
            "type": "integer",
            "description": "Stop after this many unique exhibitors. **0 = no numerical cap** — still bounded by the selected catalogues.",
            "default": 20
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}