---
title: "Cree un salon a partir d'un DSL"
method: POST
path: "/api/v1/salons"
tags: ["salons"]
---

# Cree un salon a partir d'un DSL

`POST /api/v1/salons`

## Request

- Base URL: `https://www.ultiplace.com`
- URL: `https://www.ultiplace.com/api/v1/salons`
- Auth: one of:
  - OAuth 2 (authorization code, authorization URL `https://www.ultiplace.com/api/mcp/oauth/authorize`, token URL `https://www.ultiplace.com/api/mcp/oauth/token`, scopes: `salon:read`, `salon:write`, `salon:publish`, `stand:write`, `team:write`, `analytics:read`, `directory:read`, `directory:write`)
  - API key in header `X-Ultiplace-Key`
  - HTTP bearer

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `spec` SalonDsl, required
    - `name` string, required
    - `slug` string
    - `description` string
    - `shortDescription` string
    - `theme` 'classique' | 'moderne' | 'gaming' | 'industriel' | 'corporate' | 'innovation' | 'art'
    - `dateStart` string, date-time
    - `dateEnd` string, date-time
    - `isPermanent` boolean
    - `sectors` string[]
    - `language` 'fr' | 'en' | 'es' | 'de' | 'it'
    - `branding` object
      - `logo` string, uri
      - `banner` string, uri
      - `primaryColor` string
      - `accentColor` string
    - `halls` HallSpec[]
      - `name` string, required
      - `description` string
      - `theme` string
      - `image` string, uri
      - `maxStands` integer
    - `stands` StandSpec[]
      - `exhibitorName` string, required
      - `exhibitorEmail` string, email
      - `hallId` string
      - `template` 'classique' | 'premium' | 'vitrine' | 'mini' | 'compact'
      - `pitch` string
      - `description` string
      - `logo` string, uri
      - `website` string, uri
    - `conferences` ConferenceSpec[]
      - `title` string, required
      - `description` string
      - `format` 'keynote' | 'panel' | 'atelier' | 'networking' | 'demo' | 'pitch'
      - `dateStart` string, date-time, required
      - `durationMinutes` integer
      - `speakers` object[]
        - `name` string
        - `title` string
        - `company` string
        - `photoUrl` string, uri
        - `bio` string
  - `publishImmediately` boolean

## Response `201`

Salon cree

- CreateSalonResponse
  - `id` string, required
  - `slug` string
  - `status` string
  - `url` string, uri

## Other responses

- `400`: DSL invalide
- `401`: Authentification manquante
- `429`: Quota depasse

---

[API](https://skmtc.dev/ultiplace/apis/ultiplace-public-api.md) · [All operations](https://skmtc.dev/ultiplace/apis/ultiplace-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ultiplace/apis/ultiplace-public-api/revisions/0eea140e095d?raw)
