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

# Delete a Signal

> Deletes a Signal and returns its final state.

<Warning>
  Deleting a Signal also deletes all of its alerts and events and is irreversible. We recommend disabling the Signal instead. You can disable it from the UI or through the [Update a Signal](/api-reference/signals/update-a-signal) endpoint by setting `disabled` to `true`.
</Warning>




## OpenAPI

````yaml /openapi/openapi.yaml delete /v1/signals/{signal_id}
openapi: 3.1.0
info:
  title: Laminar API
  version: 1.0.0
  description: Public HTTP API for ingesting and managing data in a Laminar project.
  license:
    name: Apache 2.0
    identifier: Apache-2.0
servers:
  - url: https://api.lmnr.ai
    description: Laminar Cloud
security:
  - projectApiKey: []
tags:
  - name: Ingestion
    description: Send telemetry data to Laminar.
  - name: Traces
    description: Update trace data after ingestion.
  - name: SQL
    description: Query project data with read-only SQL.
  - name: Projects
    description: Resolve project information.
  - name: Datasets
    description: Read datasets and add datapoints.
  - name: Evaluations
    description: Create evaluation runs and record their results.
  - name: Labeling queues
    description: Add items to labeling queues.
  - name: Signals
    description: Manage automated evaluations of project traces.
  - name: LLM profiles
    description: Configure workspace LLM credentials and models for self-hosted Signals.
paths:
  /v1/signals/{signal_id}:
    parameters:
      - $ref: '#/components/parameters/SignalId'
    delete:
      tags:
        - Signals
      summary: Delete a Signal
      description: |
        Deletes a Signal and returns its final state.

        <Warning>
          Deleting a Signal also deletes all of its alerts and events and is irreversible. We recommend disabling the Signal instead. You can disable it from the UI or through the [Update a Signal](/api-reference/signals/update-a-signal) endpoint by setting `disabled` to `true`.
        </Warning>
      operationId: deleteSignal
      responses:
        '200':
          description: Signal deleted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Signal'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  parameters:
    SignalId:
      name: signal_id
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/Uuid'
  schemas:
    Signal:
      allOf:
        - $ref: '#/components/schemas/SignalDefinitionFields'
        - type: object
          required:
            - id
            - projectId
            - name
            - prompt
            - structuredOutput
            - sampleRate
            - disabled
            - createdAt
            - trigger
            - filters
            - mode
            - version
            - llmProfileId
            - llmProfileName
            - model
          properties:
            id:
              $ref: '#/components/schemas/Uuid'
            projectId:
              $ref: '#/components/schemas/Uuid'
            createdAt:
              type: string
              format: date-time
            version:
              type: integer
              format: int32
              minimum: 1
              readOnly: true
              description: Server-managed version of the Signal configuration.
            llmProfileName:
              type:
                - string
                - 'null'
              readOnly: true
              description: Display name of the selected workspace LLM profile.
    Uuid:
      type: string
      format: uuid
    SignalDefinitionFields:
      type: object
      properties:
        name:
          type: string
          maxLength: 255
        prompt:
          type: string
        structuredOutput:
          type: object
          additionalProperties: true
          description: JSON Schema for the Signal's structured result.
        sampleRate:
          type:
            - integer
            - 'null'
          minimum: 1
          maximum: 95
          description: >-
            Percentage of matching traces to sample; null clears sampling on
            update.
        disabled:
          type: boolean
        trigger:
          $ref: '#/components/schemas/SignalTrigger'
        filters:
          type: array
          items:
            $ref: '#/components/schemas/SignalFilter'
        mode:
          type: string
          enum:
            - batch
            - realtime
        llmProfileId:
          oneOf:
            - $ref: '#/components/schemas/Uuid'
            - type: 'null'
          description: >-
            Self-hosted only. Workspace LLM profile used to evaluate the Signal.
            Provide with `model`; omit both fields on update to keep the
            existing route.
        model:
          type:
            - string
            - 'null'
          description: >-
            Self-hosted only. Model selected from `llmProfileId`. Provide both
            fields together.
    Error:
      oneOf:
        - type: object
          properties:
            error:
              type: string
          required:
            - error
        - type: string
    SignalTrigger:
      oneOf:
        - type: object
          required:
            - type
          properties:
            type:
              type: string
              const: rootSpanFinished
        - type: object
          required:
            - type
            - spanNames
          properties:
            type:
              type: string
              const: spanName
            spanNames:
              type: array
              minItems: 1
              items:
                type: string
    SignalFilter:
      type: object
      required:
        - column
        - operator
        - value
      properties:
        column:
          type: string
          enum:
            - total_token_count
            - status
            - span_names
            - tags
        operator:
          type: string
          enum:
            - eq
            - ne
            - gt
            - gte
            - lt
            - lte
            - includes
            - not_includes
        value:
          $ref: '#/components/schemas/JsonValue'
      description: Operators and value shapes are validated for the selected column.
    JsonValue: {}
  responses:
    Unauthorized:
      description: Missing or invalid API key.
    NotFound:
      description: The requested resource was not found in this project.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    projectApiKey:
      type: http
      scheme: bearer
      bearerFormat: Project API key
      description: A Laminar project API key.

````