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

# List Suppression Groups

> List all suppression groups in your account using the AutoSend API.

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET \
    --url 'https://api.autosend.com/v1/suppression-groups?includeGlobal=true' \
    --header 'Authorization: Bearer <token>'
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      "https://api.autosend.com/v1/suppression-groups",
      params={"includeGlobal": True},
      headers={"Authorization": "Bearer <token>"},
  )
  print(response.json())
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    "https://api.autosend.com/v1/suppression-groups?includeGlobal=true",
    {
      method: "GET",
      headers: {
        Authorization: "Bearer <token>",
      },
    }
  );
  const data = await response.json();
  console.log(data);
  ```

  ```php PHP theme={null}
  <?php
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, "https://api.autosend.com/v1/suppression-groups?includeGlobal=true");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_HTTPHEADER, [
      "Authorization: Bearer <token>",
  ]);
  $response = curl_exec($ch);
  curl_close($ch);
  echo $response;
  ```

  ```go Go theme={null}
  package main

  import (
      "fmt"
      "io"
      "net/http"
  )

  func main() {
      req, _ := http.NewRequest("GET", "https://api.autosend.com/v1/suppression-groups?includeGlobal=true", nil)
      req.Header.Set("Authorization", "Bearer <token>")

      client := &http.Client{}
      resp, _ := client.Do(req)
      defer resp.Body.Close()

      body, _ := io.ReadAll(resp.Body)
      fmt.Println(string(body))
  }
  ```

  ```java Java theme={null}
  import java.net.URI;
  import java.net.http.*;

  public class Main {
      public static void main(String[] args) throws Exception {
          HttpRequest request = HttpRequest.newBuilder()
              .uri(URI.create("https://api.autosend.com/v1/suppression-groups?includeGlobal=true"))
              .header("Authorization", "Bearer <token>")
              .GET()
              .build();

          HttpResponse<String> response = HttpClient.newHttpClient()
              .send(request, HttpResponse.BodyHandlers.ofString());
          System.out.println(response.body());
      }
  }
  ```

  ```ruby Ruby theme={null}
  require "net/http"
  require "uri"

  uri = URI("https://api.autosend.com/v1/suppression-groups?includeGlobal=true")
  req = Net::HTTP::Get.new(uri)
  req["Authorization"] = "Bearer <token>"

  response = Net::HTTP.start(uri.host, uri.port, use_ssl: true) { |http| http.request(req) }
  puts response.body
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "success": true,
    "data": {
      "groups": [
        {
          "id": "69044947cc370f8a63845236",
          "groupId": "20XWO",
          "name": "Marketing Unsubscribes",
          "description": "Users who opted out of marketing",
          "isGlobal": false,
          "isActive": true,
          "createdAt": "2025-10-31T05:29:43.906Z",
          "updatedAt": "2026-02-27T10:16:26.095Z",
          "suppressionCount": 0
        },
        {
          "id": "69c3a0c19278fca074bebb74",
          "groupId": "B43YU",
          "name": "Bounced Addresses",
          "description": "Hard bounces from transactional sends",
          "isGlobal": true,
          "isActive": true,
          "createdAt": "2026-03-25T08:45:53.085Z",
          "updatedAt": "2026-03-25T08:45:53.085Z",
          "suppressionCount": 196
        }
      ]
    }
  }
  ```
</ResponseExample>

### Authorizations

<ParamField path="Authorizations" type="string | header" required>
  Bearer authentication header of the form Bearer `<token>`, where `<token>` is your auth token.
</ParamField>

### Query Parameters

<ParamField query="onlyGlobal" type="boolean">
  When `true`, returns only global suppression groups, excluding any project-specific groups.
</ParamField>

<ParamField query="includeGlobal" type="boolean">
  When `true`, includes global suppression groups in the results alongside project-specific groups.
</ParamField>

### Response

<span className="text-sm">Suppression groups retrieved successfully</span>

<ResponseField name="success" type="boolean">
  Example: `true`
</ResponseField>

<ResponseField name="data" type="object">
  <Expandable title="child attributes">
    <ResponseField name="data.groups" type="object[]">
      Array of suppression groups.

      <Expandable title="group attributes">
        <ResponseField name="id" type="string">
          Unique identifier for the suppression group.
        </ResponseField>

        <ResponseField name="groupId" type="string">
          Short code identifier used when referencing the group in campaigns and templates.

          Example: `"20XWO"`
        </ResponseField>

        <ResponseField name="name" type="string">
          Display name of the suppression group.
        </ResponseField>

        <ResponseField name="description" type="string">
          Optional description of the suppression group.
        </ResponseField>

        <ResponseField name="isGlobal" type="boolean">
          Whether this is a global suppression group shared across all projects.
        </ResponseField>

        <ResponseField name="isActive" type="boolean">
          Whether the suppression group is active.
        </ResponseField>

        <ResponseField name="suppressionCount" type="integer">
          Number of email addresses currently suppressed in this group.
        </ResponseField>

        <ResponseField name="createdAt" type="string">
          ISO 8601 creation timestamp.
        </ResponseField>

        <ResponseField name="updatedAt" type="string">
          ISO 8601 last-updated timestamp.
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>


## OpenAPI

````yaml GET /suppression-groups
openapi: 3.1.0
info:
  title: Suppression Groups API
  version: 1.0.0
  description: >-
    Manage suppression groups and suppression entries. Suppression groups let
    you categorize unsubscribes, bounces, and spam complaints so that you can
    control which emails are sent to which contacts.
servers:
  - url: https://api.autosend.com/v1
    description: Production
security:
  - bearerAuth: []
paths:
  /suppression-groups:
    get:
      summary: List Suppression Groups
      description: >-
        Returns all suppression groups for the current project. Optionally
        filter to only global groups or include global groups alongside
        project-specific ones.
components: {}

````