Stannp Groups API

Manage recipient groups

Operations 7

GET /groups/list List groups #
POST /groups/new Create a group #
POST /groups/add/{group_id} Add recipients to group #
POST /groups/remove/{group_id} Remove recipients from group #
POST /groups/purge Purge a group #
POST /groups/calculate/{group_id} Recalculate group #
POST /groups/delete Delete a group #

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/stannp-groups-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 email required.

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

OpenAPI Specification

stannp-groups-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Stannp Direct Mail Account Groups API
  description: 'REST API for programmatically sending physical letters and postcards, managing recipient groups, configuring campaigns, triggering individual mail pieces, and tracking delivery status through webhooks and event callbacks. Authentication uses API key-based HTTP Basic Auth over HTTPS.

    '
  version: 1.0.0
  contact:
    name: Stannp Support
    url: https://www.stannp.com/us/direct-mail-api/guide
  termsOfService: https://www.stannp.com
servers:
- url: https://api-us1.stannp.com/v1
  description: US API server
- url: https://api-eu1.stannp.com/v1
  description: EU API server
security:
- basicAuth: []
tags:
- name: Groups
  description: Manage recipient groups
paths:
  /groups/list:
    get:
      operationId: listGroups
      summary: List groups
      description: Retrieve a paginated list of recipient groups.
      tags:
      - Groups
      parameters:
      - name: offset
        in: query
        schema:
          type: integer
        description: Pagination offset
      - name: limit
        in: query
        schema:
          type: integer
        description: Number of results to return
      responses:
        '200':
          description: Groups retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Group'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /groups/new:
    post:
      operationId: createGroup
      summary: Create a group
      description: Create a new recipient group.
      tags:
      - Groups
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
              - name
              properties:
                name:
                  type: string
                  description: Group name
      responses:
        '200':
          description: Group created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  data:
                    type: integer
                    description: New group ID
        '401':
          $ref: '#/components/responses/Unauthorized'
  /groups/add/{group_id}:
    post:
      operationId: addRecipientsToGroup
      summary: Add recipients to group
      description: Add one or more existing recipients to a group.
      tags:
      - Groups
      parameters:
      - name: group_id
        in: path
        required: true
        schema:
          type: integer
        description: Group ID
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
              - recipients
              properties:
                recipients:
                  type: string
                  description: Comma-separated recipient IDs
      responses:
        '200':
          description: Recipients added successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  data:
                    type: integer
                    description: Number of recipients added
        '401':
          $ref: '#/components/responses/Unauthorized'
  /groups/remove/{group_id}:
    post:
      operationId: removeRecipientsFromGroup
      summary: Remove recipients from group
      description: Remove one or more recipients from a group.
      tags:
      - Groups
      parameters:
      - name: group_id
        in: path
        required: true
        schema:
          type: integer
        description: Group ID
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
              - recipients
              properties:
                recipients:
                  type: string
                  description: Comma-separated recipient IDs
      responses:
        '200':
          description: Recipients removed successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  data:
                    type: integer
                    description: Number of recipients removed
        '401':
          $ref: '#/components/responses/Unauthorized'
  /groups/purge:
    post:
      operationId: purgeGroup
      summary: Purge a group
      description: Remove all recipients from a group, optionally deleting recipient records.
      tags:
      - Groups
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
              - id
              properties:
                id:
                  type: integer
                  description: Group ID
                delete_recipients:
                  type: boolean
                  description: If true, delete all recipient records in the group
      responses:
        '200':
          description: Group purged successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /groups/calculate/{group_id}:
    post:
      operationId: recalculateGroup
      summary: Recalculate group
      description: Trigger a recalculation of group recipient counts and validity.
      tags:
      - Groups
      parameters:
      - name: group_id
        in: path
        required: true
        schema:
          type: integer
        description: Group ID
      responses:
        '200':
          description: Recalculation triggered successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /groups/delete:
    post:
      operationId: deleteGroup
      summary: Delete a group
      description: Delete a recipient group, optionally deleting associated recipient records.
      tags:
      - Groups
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
              - id
              properties:
                id:
                  type: integer
                  description: Group ID
                delete_recipients:
                  type: boolean
                  description: If true, also delete all recipients in the group
      responses:
        '200':
          description: Group deleted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: string
          description: Error message
    Group:
      type: object
      properties:
        id:
          type: integer
        account_id:
          type: integer
        name:
          type: string
        created:
          type: string
          format: date-time
        recipients:
          type: integer
          description: Total recipient count
        valid:
          type: integer
          description: Count of valid addresses
        international:
          type: integer
          description: Count of international addresses
        skipped:
          type: integer
        status:
          type: string
        import_progress:
          type: integer
          description: Import progress percentage
        is_seeds:
          type: boolean
    SuccessResponse:
      type: object
      properties:
        success:
          type: boolean
        data:
          description: Result value (boolean, integer, or string depending on operation)
  responses:
    Unauthorized:
      description: Authentication required or API key invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: Use your API key as the username and leave the password blank.