Cvent Social Tables Layout Automation API

The Layout Automation API from Cvent Social Tables — 2 operation(s) for layout automation.

Operations 3

POST /4.0/layout-automation
DELETE /4.0/layout-automation
POST /4.0/layout-automation/custom-setup

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cvent-social-tables-layout-automation-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cvent-social-tables-layout-automation-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Social Tables API Gateway Authentication Layout Automation API
  version: 4.0.0
  description: The Social Tables API
servers:
- url: https://api.socialtables.com/
tags:
- name: Layout Automation
paths:
  /4.0/layout-automation:
    post:
      tags:
      - Layout Automation
      description: actively calculates layout and creates an event/space/diagram
      responses:
        '200':
          description: full event created by the layout automation service
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PersistedAutomationPostResponse-layout-automation-service'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomWizardPost-layout-automation-service'
        description: description event POST body used to create event etc
        required: true
    delete:
      tags:
      - Layout Automation
      description: removes floor elements from previous automated and manual layouts
      parameters:
      - name: spaces
        description: a comma-separated list of space IDs to clear
        in: query
        required: true
        schema:
          type: string
      - name: event
        description: the ID of the event to clear
        in: query
        required: true
        schema:
          type: string
      - name: hardDelete
        description: flag to hard delete diagram/space
        in: query
        required: false
        schema:
          type: boolean
          default: false
      responses:
        '204':
          description: success
  /4.0/layout-automation/custom-setup:
    post:
      tags:
      - Layout Automation
      description: actively calculates layout and creates an event/space/diagram using custom_setup defined from Home Team Setup Presets https://home-2018.socialtables.com/settings/team-setup-presets
      responses:
        '200':
          description: full event created by the layout automation service
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PersistedAutomationPostResponse-layout-automation-service'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomSetupPost-layout-automation-service'
        description: description event POST body used to create event etc
        required: true
components:
  schemas:
    CustomWizardPost-layout-automation-service:
      required:
      - category
      - spaces
      type: object
      properties:
        event_id:
          type: number
        uses_metric:
          type: boolean
        start_time:
          format: date-time
          type: string
        end_time:
          format: date-time
          type: string
        category:
          type: string
        name:
          type: string
          description: Required if no event_id is provided.
        public:
          type: boolean
        attendee_management:
          type: boolean
        useSocialDistance:
          type: boolean
        spaces:
          items:
            $ref: '#/components/schemas/SpaceCustomWizard-layout-automation-service'
          type: array
        user_email:
          type: string
        team_id:
          type: number
    Table-layout-automation-service:
      type: object
      required:
      - chairs
      - size
      - spacing
      properties:
        type:
          type: string
          enum:
          - chair
          - oval
          - oval-table
          - rectangle
          - rectangle-table
          - square
          - square-table
          - theatre
          - circle
          - circle-table
          - crescent
          - crescent-table
          - half-circle-table
          - high-boy
          - serpentine
          - serpentine-table
        size:
          type: object
          properties:
            width:
              type: number
              minimum: 0
            length:
              type: number
              minimum: 0
            radius:
              type: number
              minimum: 0
          description: For round tables, radius is required. All other tables require length and width.
        chairs:
          type: integer
          minimum: 0
        position:
          $ref: '#/components/schemas/PositionString-layout-automation-service'
        spacing:
          type: object
          properties:
            x:
              type: number
              default: 0
            y:
              type: number
              default: 0
          default:
            x: 0
            y: 0
        cullAdditionalTables:
          type: boolean
          description: Whether to cull extraneous tables beyond the requested attendee count, if any. It has no bearing on whether tables that collide with existing objects should be culled.
        placeEvenlyAcrossLayout:
          type: boolean
          description: Should the automator attempt to place tables evenly across the space? False will limit tables to the largest 'region of interest' within the room.
        removeChairs:
          type: integer
          minimum: 0
          description: The number of chairs to remove for crescent tables. Ignored for other floor elements.
        rotateCrescentOffset:
          type: number
          description: The offset for where the missing chairs should be for crescent tables. Ignored for other floor elements.
    SpaceResult-layout-automation-service:
      type: object
      properties:
        id:
          type: integer
        event_id:
          type: integer
        space_order:
          type: integer
        bookable_room:
          type: string
        venue_id:
          type: string
        name:
          type: string
        updated_at:
          type: string
          format: date-time
        is_new:
          type: boolean
        diagram_id:
          type: string
        pdf_url:
          type: string
        warnings:
          type: array
          items:
            type: object
            properties:
              message:
                type: string
              resolution:
                type: string
        errors:
          type: array
          items:
            type: object
            properties:
              message:
                type: string
              resolution:
                type: string
    PersistedAutomationPostResponse-layout-automation-service:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        user_id:
          type: integer
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        is_a_sample:
          type: integer
        category:
          type: string
        is_public:
          type: boolean
        pricing_plan:
          type: string
        team_id:
          type: integer
        eventbrite_event_id:
          type: string
        eventbrite_access_token:
          type: string
        last_accessed:
          type: string
          format: date-time
        logo:
          type: string
        floor_only:
          type: integer
        is_archived:
          type: boolean
        aim_only:
          type: integer
        start_time:
          type: string
          format: date-time
        end_time:
          type: string
          format: date-time
        mobile_col1:
          type: integer
        mobile_col2:
          type: integer
        event_url:
          type: string
        screenshot_url:
          type: string
        thumb_url:
          type: string
        forTraining:
          type: boolean
        uses_metric:
          type: integer
        collaborators_expire_at:
          type: string
          format: date-time
        venue_mapper_version:
          type: integer
        uid:
          type: string
        cvent_rfp_id:
          type: string
        last_activity:
          type: string
          format: date-time
        has_time:
          type: boolean
        status:
          type: string
        industry:
          type: string
        author:
          $ref: '#/components/schemas/EventAuthor-layout-automation-service'
        spaces:
          type: array
          items:
            $ref: '#/components/schemas/SpaceResult-layout-automation-service'
        message:
          type: string
    SpaceCustomWizard-layout-automation-service:
      type: object
      required:
      - name
      - attendees
      properties:
        id:
          type: integer
        attendees:
          type: integer
          maximum: 10000
        wizard:
          $ref: '#/components/schemas/TemplatedLayoutSpec-layout-automation-service'
          description: One of 'wizard' or 'layoutSpec' must be provided.
        layoutSpec:
          $ref: '#/components/schemas/TemplatedLayoutSpec-layout-automation-service'
          description: One of 'wizard' or 'layoutSpec' must be provided.
        name:
          type: string
        external_event_id:
          type: string
        external_diagram_id:
          type: string
        venue_id:
          type: string
        custom_setup:
          type: string
    TemplatedLayoutSpec-layout-automation-service:
      type: object
      properties:
        setup:
          type: string
          enum:
          - aligned
          - classroom
          - conference-table
          - hollow
          - hollow-square
          - staggered
          - theater
          - theater-row
          - theatre
          - u-shape
          default: aligned
        attendees:
          type: integer
          minimum: 0
          maximum: 10000
        chairType:
          type: string
          enum:
          - banquet
          - chiavari
          - ghost
        chairs:
          type: object
          properties:
            size:
              type: object
              properties:
                length:
                  type: number
                  minimum: 0
                width:
                  type: number
                  minimum: 0
        rotation:
          type: number
          default: 0
          description: The rotation relative to the viewport.
        table:
          $ref: '#/components/schemas/Table-layout-automation-service'
          default:
            chairs: 2
            size:
              width: 24
              length: 12
              radius: 20
            spacing:
              x: 0
              y: 0
        aisles:
          type: object
          properties:
            horizontal:
              $ref: '#/components/schemas/Aisle-layout-automation-service'
            vertical:
              $ref: '#/components/schemas/Aisle-layout-automation-service'
              default:
                width: 36
                floorElementsBetween: 15
          default:
            horizontal: {}
            vertical: {}
        chevronAngle:
          type: number
          default: 0
        ignore_doors_and_columns:
          type: boolean
          description: True and undefined result in skipping collision checks with permanentObjects
        best_effort_capacity:
          type: boolean
          description: Whether a failure to seat all attendees is acceptable. False will throw a fatal error if not all attendees can be seated. True will seat the max possible and add a ctx error message
        errors_in_diagram:
          type: boolean
          default: true
          description: Add error text to the diagram.
        nudgeOnCollide:
          type: boolean
          description: 'On collision, nudge tables slightly to a nearby valid position if any exists. Note: This may slightly compromise a setup''s natural shape.'
        updatedRects:
          type: boolean
          description: Uses an improved algorithm to detect bounding boxes in a floorplan. It usually results in larger valid areas being detected.
      required:
      - attendees
    CustomSetupPost-layout-automation-service:
      required:
      - category
      - spaces
      type: object
      properties:
        event_id:
          type: number
        uses_metric:
          type: boolean
        start_time:
          format: date-time
          type: string
        end_time:
          format: date-time
          type: string
        category:
          type: string
        name:
          type: string
          description: Required if no event_id is provided.
        public:
          type: boolean
        attendee_management:
          type: boolean
        useSocialDistance:
          type: boolean
        spaces:
          items:
            $ref: '#/components/schemas/SpaceCustomSetup-layout-automation-service'
          type: array
        user_email:
          type: string
        team_id:
          type: number
    Aisle-layout-automation-service:
      type: object
      properties:
        width:
          type: number
          default: 0
        floorElementsBetween:
          type: integer
          default: 0
          description: Number of floor elements that should be placed in a row or column before an aisle is placed.
    EventAuthor-layout-automation-service:
      type: object
      properties:
        id:
          type: integer
        first_name:
          type: string
        last_name:
          type: string
        email_address:
          type: string
    SpaceCustomSetup-layout-automation-service:
      type: object
      required:
      - name
      - custom_setup
      - attendees
      properties:
        id:
          type: integer
        name:
          type: string
        external_event_id:
          type: string
        external_diagram_id:
          type: string
        venue_id:
          type: string
        custom_setup:
          type: string
        attendees:
          type: integer
          maximum: 10000
    PositionString-layout-automation-service:
      type: string
      enum:
      - center
      - nw
      - sw
      - ne
      - se
      - n
      - s
      - e
      - w
      default: center
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          scopes:
            authenticated: any authentication whatsoever
            create:oauth_client: oauth client create
            userdata: All of the things.
          authorizationUrl: https://auth.socialtables.com/oauth/authorize
          tokenUrl: https://auth.socialtables.com/oauth/token
      description: OAuth
    user_token:
      type: apiKey
      name: user_token
      in: header
      description: Social Tables User Token
    partner_token:
      type: apiKey
      name: partner_token
      in: header
      description: Social Tables Partner Token