> ## Documentation Index
> Fetch the complete documentation index at: https://apidocs.sessionboard.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Soft-delete an exhibitor

> Soft-delete an exhibitor. Can be restored with the restore endpoint. Requires the `write:exhibitors` scope.

**This deletes the group, not just its exhibitor role.** The path names the role you are calling under, but the record that gets soft-deleted is the underlying group, so:

* A group holding **both** roles loses its sponsor role too. After
  this call it is absent from both searches and both `GET`s answer
  `404`.

* A group linked to **other events** is removed from those events as
  well — it is no longer returned by any event's sponsor or exhibitor
  search across the organization.


This matches the admin UI, where the unit of deletion is the group, not one of its roles. There is no role-scoped or event-scoped delete on this API. If you only want to stop listing a partner for one season, do not call this endpoint.

`POST /v1/event/{eventId}/exhibitors/{exhibitorId}/restore` reverses it with the same reach — both roles and every event come back — so nothing is lost permanently.




## OpenAPI

````yaml /api-reference/openapi.yaml delete /v1/event/{eventId}/exhibitors/{exhibitorId}
openapi: 3.1.0
info:
  title: Sessionboard Public API
  version: '1.0'
  description: >-
    REST API for managing sessions, speakers, contacts, sponsors, exhibitors,
    and event data on the Sessionboard platform.
  contact:
    name: Sessionboard Support
    email: support@sessionboard.com
  termsOfService: https://www.sessionboard.com/legal/terms-of-service
servers:
  - url: https://public-api.sessionboard.com
    description: US Region
  - url: https://public-api-eu.sessionboard.com
    description: EU Region
security:
  - ApiKey: []
  - BearerToken: []
tags:
  - name: Events
    description: Manage events on the platform.
  - name: Sessions
    description: Search and retrieve sessions within an event.
  - name: Session Writes
    description: >-
      Create, update, delete, and restore sessions. Requires the
      `write:sessions` scope.
  - name: Contact Writes
    description: >-
      Create, update, delete, and restore contacts. Requires the
      `write:contacts` scope.
  - name: Exhibitor Writes
    description: >-
      Create, update, delete, and restore exhibitors. Requires the
      `write:exhibitors` scope.
  - name: Sponsor Writes
    description: >-
      Create, update, delete, and restore sponsors. Requires the
      `write:sponsors` scope.
  - name: Field Writes
    description: >-
      Create, update, and delete custom fields. Requires the `write:fields`
      scope.
  - name: Speakers
    description: Search and retrieve speakers within an event.
  - name: Participants
    description: |
      Search and retrieve every contact holding a session role on an event —
      speakers, chairpersons, moderators and custom roles — with the roles
      each one holds, and list the event's participant roles.
  - name: Contacts
    description: Search and retrieve contacts at the organization or event level.
  - name: Sponsors
    description: Search and retrieve sponsors within an event.
  - name: Exhibitors
    description: Search and retrieve exhibitors within an event.
  - name: Event Settings
    description: >-
      Retrieve event configuration such as fields, tags, tracks, rooms, formats,
      levels, languages, and session statuses.
  - name: GDPR
    description: Manage GDPR data access and erasure requests.
  - name: Insights
    description: >-
      Query event data using SbQL, generate queries with AI, and manage
      dashboards.
  - name: Ask
    description: >-
      Ask a natural-language question about one event and get a cited answer.
      Requires the `read:ask` scope, granted explicitly.
  - name: Metadata Writes
    description: >-
      Create, update, and delete session metadata (rooms, tracks, tags, formats,
      levels, languages, statuses). Requires the `write:metadata` scope.
  - name: Agenda Planning
    description: >-
      Manage agenda drafts, draft sessions, scheduling rules, and evaluation
      personas. Requires the `write:events` scope.
  - name: Dashboards & Widgets
    description: >-
      Create, read, update, and delete dashboards and widgets at the event or
      organization level. Requires `write:events` scope for writes.
  - name: Reports & Queries
    description: >-
      Create, read, update, delete, and run saved SbQL queries/reports at the
      event or organization level. Requires `write:events` scope for writes.
  - name: Transcriptions
    description: >-
      Transcript text on sessions — fragments, summaries, insights, and
      translations. Requires `read:transcriptions` / `write:transcriptions`
      scopes.
  - name: Session Recordings
    description: >-
      Session audio files for recording archives (live capture or imported
      audio). Requires `read:transcriptions` / `write:transcriptions` scopes.
  - name: Media
    description: >-
      Upload video or audio files for automatic transcription. Requires
      `read:media` / `write:media` scopes.
  - name: Session Files
    description: >
      Documents attached to sessions (PDFs, PowerPoint, Word, images, and
      similar).

      Simple upload: `POST .../files/upload` (multipart, max 50 MB).

      Direct-to-storage: create → PUT → complete (max 500 MB).

      Requires `read:sessions` / `write:sessions` scopes.

      See the [Uploading session files](/guides/uploading-session-files) guide.
  - name: OAuth
    description: >-
      OAuth 2.1 endpoints for AI client authorization (Claude, ChatGPT). Mounted
      at `/oauth/` (not `/v1/`).
  - name: Log Export
    description: >
      Pull your organization's API request, security and audit logs into a SIEM

      such as Splunk, Microsoft Sentinel or Elastic. Requires a dedicated API
      token

      with the `read:audit_logs` scope, which can call nothing else.

      See the [Exporting logs to a SIEM](/guides/exporting-logs-to-a-siem)
      guide.
  - name: Awards
    description: >-
      Read and manage Awards programs and their categories, rounds, promo codes,
      submissions and reviews. Organization-level: paths start at
      `/v1/organization/{orgId}/awards`. Requires `read:awards` / `write:awards`
      scopes.
  - name: Registration
    description: >
      Registration inside Sessionboard: registration forms, ticket types,
      registrations,

      orders, attendees and check-ins for one event. Requires the preview scopes

      `read:registrations` / `write:registrations`, which a token or OAuth
      client gets only

      when they are named explicitly (not by default, and not listed in
      `scopes_supported`).

      The event must have Registration turned on (Early Access); otherwise every
      endpoint

      answers `403 FORBIDDEN`.

      See the [Registration and Expo](/guides/registration-and-expo) guide.
  - name: Expo
    description: >
      Expo floor-map booths and sponsorship inventory for one event. Requires
      the preview

      scopes `read:expo` / `write:expo`, which a token or OAuth client gets only
      when they are

      named explicitly (not by default, and not listed in `scopes_supported`).
      The event must

      have Expo turned on (Early Access); otherwise every endpoint answers `403
      FORBIDDEN`.

      See the [Registration and Expo](/guides/registration-and-expo) guide.
paths:
  /v1/event/{eventId}/exhibitors/{exhibitorId}:
    delete:
      tags:
        - Exhibitor Writes
      summary: Soft-delete an exhibitor
      description: >
        Soft-delete an exhibitor. Can be restored with the restore endpoint.
        Requires the `write:exhibitors` scope.


        **This deletes the group, not just its exhibitor role.** The path names
        the role you are calling under, but the record that gets soft-deleted is
        the underlying group, so:


        * A group holding **both** roles loses its sponsor role too. After
          this call it is absent from both searches and both `GET`s answer
          `404`.

        * A group linked to **other events** is removed from those events as
          well — it is no longer returned by any event's sponsor or exhibitor
          search across the organization.


        This matches the admin UI, where the unit of deletion is the group, not
        one of its roles. There is no role-scoped or event-scoped delete on this
        API. If you only want to stop listing a partner for one season, do not
        call this endpoint.


        `POST /v1/event/{eventId}/exhibitors/{exhibitorId}/restore` reverses it
        with the same reach — both roles and every event come back — so nothing
        is lost permanently.
      operationId: delete-exhibitor
      parameters:
        - name: eventId
          in: path
          required: true
          schema:
            type: integer
          description: The event ID.
        - name: exhibitorId
          in: path
          required: true
          schema:
            type: string
          description: The exhibitor ID.
      responses:
        '204':
          description: >
            Exhibitor deleted. The response has no body — do not expect a `200`
            or a JSON payload.
        '401':
          description: Unauthorized
        '403':
          description: Missing write:exhibitors scope
        '404':
          description: >
            No exhibitor with this id on this event. A record that exists but
            does not hold the exhibitor role — a contact, or a group linked only
            as the other role — is also a `404` here; look it up on the endpoint
            for the role it holds. An **already-deleted** exhibitor is also a
            `404`, so a repeated delete is safe but is not reported as a
            success.
components:
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: x-access-token
      description: >-
        Organization API token. Generate from Organization Settings → API
        Tokens.
    BearerToken:
      type: http
      scheme: bearer
      description: >-
        OAuth 2.1 access token. Obtained via the OAuth PKCE flow at
        `/oauth/token`.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.