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

# Get all tags

> Retrieve all tags used in articles. The tags returned depend on the authentication used:

**Authenticated Access:**
- **Admin API keys**: Returns tags from all articles across all accounts in the system
- **Account API keys**: Returns tags only from articles belonging to the account that owns the key

**Public Access** (from valid domains):
- **No authentication required** when accessing from verified domains (*.localhost, *.suprsonic.blog, *.suprsonic.app, or verified custom domains)
- Returns tags only from **published articles** belonging to the domain-associated account
- Excludes tags from draft, archived, or deleted articles




## OpenAPI

````yaml get /api/v1/tags
openapi: 3.1.0
info:
  title: SuprSonic API
  version: 1.0.0
  description: API for autonomous content generation and blog management
  contact:
    name: SuprSonic API Support
    url: https://www.suprsonic.com/support
    email: support@suprsonic.com
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
servers:
  - url: https://www.suprsonic.com
    description: Production server
  - url: http://localhost:3000
    description: Development server
security: []
tags: []
paths:
  /api/v1/tags:
    get:
      tags:
        - Tags
      summary: Get all tags
      description: >
        Retrieve all tags used in articles. The tags returned depend on the
        authentication used:


        **Authenticated Access:**

        - **Admin API keys**: Returns tags from all articles across all accounts
        in the system

        - **Account API keys**: Returns tags only from articles belonging to the
        account that owns the key


        **Public Access** (from valid domains):

        - **No authentication required** when accessing from verified domains
        (*.localhost, *.suprsonic.blog, *.suprsonic.app, or verified custom
        domains)

        - Returns tags only from **published articles** belonging to the
        domain-associated account

        - Excludes tags from draft, archived, or deleted articles
      responses:
        '200':
          description: Successfully retrieved tags
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        tag:
                          type: string
                          description: The tag name
                        usage_count:
                          type: integer
                          description: Number of articles using this tag
                    description: >-
                      Array of tags with usage counts, sorted by usage count
                      descending
        '401':
          description: Unauthorized - Invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - AdminApiKey: []
        - AccountApiKey: []
        - {}
components:
  schemas:
    Error:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: object
          properties:
            code:
              type: string
              example: VALIDATION_ERROR
            message:
              type: string
              example: Invalid request data
            details:
              type: object
  securitySchemes:
    AdminApiKey:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Admin API key for managing accounts and creating content
    AccountApiKey:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Account-specific API key for accessing account data

````