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

# List demo signups for a sage

> Returns all `ss_demo_user` posts linked to the given sage,
sorted newest-first. Read-only.

Requires login. No specific capability check beyond nonce.




## OpenAPI

````yaml /openapi/private/specs/wp/wp-ajax-misc.yml post /wp-admin/admin-ajax.php?action=sagescreen_get_demo_users
openapi: 3.1.0
info:
  title: SageScreen — Misc AJAX Modules (User · Council · Billing · Splash · Demo)
  version: 1.0.0
servers:
  - url: https://{domain}/wp-json/sagescreen/v1
    description: WordPress REST API
    variables:
      domain:
        default: api.sagescreen.app
security: []
tags:
  - name: User – REST
    description: Zapier-facing REST endpoints
  - name: User – AJAX
    description: Council user management AJAX endpoints
  - name: User – Profile
    description: Self-service profile updates
  - name: Council – REST
    description: Zapier-facing REST endpoints for council data sync
  - name: Council – AJAX
    description: Council user and sage management AJAX endpoints
  - name: Billing – Stripe
    description: Stripe webhook and subscription endpoints
  - name: Billing – Broadcast
    description: Postmark broadcast unsubscribe endpoint
  - name: Billing – Pipedrive
    description: Pipedrive CRM ID set-* webhook endpoints (called by Zapier)
  - name: Billing – AJAX
    description: Credit ledger, reactivation, and portal AJAX endpoints
  - name: Splash
    description: Splash banner AJAX endpoints
  - name: Demo
    description: Demo signup and management AJAX endpoints
  - name: CSV Upload
    description: Bulk candidate CSV upload
paths:
  /wp-admin/admin-ajax.php?action=sagescreen_get_demo_users:
    post:
      tags:
        - Demo
      summary: List demo signups for a sage
      description: |
        Returns all `ss_demo_user` posts linked to the given sage,
        sorted newest-first. Read-only.

        Requires login. No specific capability check beyond nonce.
      operationId: ajaxGetDemoUsers
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
                - action
                - nonce
                - council_sage_id
              properties:
                action:
                  type: string
                  const: sagescreen_get_demo_users
                nonce:
                  type: string
                  description: >-
                    WP nonce for `sagescreen_admin_nonce` or
                    `sagescreen_frontend_nonce`
                council_sage_id:
                  type: integer
                  description: Post ID of `ss_council_sage`
                  examples:
                    - 101
      responses:
        '200':
          description: Demo user list
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/GetDemoUsersSuccess'
                  - $ref: '#/components/schemas/DemoInternalAjaxErrorResponse'
              examples:
                success:
                  summary: Two demo users
                  value:
                    success: true
                    data:
                      - id: 501
                        first_name: John
                        last_name: Doe
                        email: john@example.com
                        company: ACME Corp
                        url: https://acme.com
                        phone: 555-1234
                        signup_date: '2026-02-19 10:30:45'
                      - id: 502
                        first_name: Jane
                        last_name: Smith
                        email: jane@example.com
                        company: Globex Inc
                        url: ''
                        phone: 555-5678
                        signup_date: '2026-02-18 14:20:00'
                notLoggedIn:
                  summary: Not logged in
                  value:
                    success: false
                    message: Authentication required
      security:
        - wpAjaxNonce: []
components:
  schemas:
    GetDemoUsersSuccess:
      type: object
      properties:
        success:
          type: boolean
          const: true
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: integer
                examples:
                  - 501
              first_name:
                type: string
                examples:
                  - John
              last_name:
                type: string
                examples:
                  - Doe
              email:
                type: string
                format: email
                examples:
                  - john@example.com
              company:
                type: string
                examples:
                  - ACME Corp
              url:
                type: string
                examples:
                  - https://acme.com
              phone:
                type: string
                examples:
                  - 555-1234
              signup_date:
                type: string
                examples:
                  - '2026-02-19 10:30:45'
    DemoInternalAjaxErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          const: false
        message:
          type: string
          examples:
            - Invalid security token
  securitySchemes:
    wpAjaxNonce:
      type: apiKey
      in: query
      name: nonce
      description: WordPress AJAX nonce (passed as form field, verified per-action)

````