> ## 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.

# Get detailed user profile for editing

> Returns all profile fields, roles, permissions, and login
history for a user. Used to populate the edit-user form.

Requires `list_users` capability.




## OpenAPI

````yaml /openapi/private/specs/wp/wp-ajax-misc.yml post /wp-admin/admin-ajax.php?action=sagescreen_get_council_user_details
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_council_user_details:
    post:
      tags:
        - User – AJAX
      summary: Get detailed user profile for editing
      description: |
        Returns all profile fields, roles, permissions, and login
        history for a user. Used to populate the edit-user form.

        Requires `list_users` capability.
      operationId: ajaxGetCouncilUserDetails
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
                - action
                - nonce
                - user_id
              properties:
                action:
                  type: string
                  const: sagescreen_get_council_user_details
                nonce:
                  type: string
                  description: >-
                    WP nonce for `sagescreen_ajax_nonce` or
                    `sagescreen_frontend_nonce`
                user_id:
                  type: integer
                  description: WordPress user ID
                  examples:
                    - 123
      responses:
        '200':
          description: User details
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/UserDetailsSuccess'
                  - $ref: '#/components/schemas/AjaxErrorResponse'
              examples:
                success:
                  summary: Full user details
                  value:
                    success: true
                    message: Council user details retrieved successfully
                    data:
                      id: 123
                      username: john.doe
                      email: john@example.com
                      first_name: John
                      last_name: Doe
                      linkedin: https://linkedin.com/in/johndoe
                      phone: '+15551234567'
                      whatsapp: '+15551234567'
                      display_name: John Doe
                      display_name_options:
                        - john.doe
                        - John
                        - Doe
                        - John Doe
                        - Doe John
                      role: council_admin
                      council_id: c9d8e7f6-5a4b-3c2d-1e0f-a1b2c3d4e5f6
                      council_role: council_admin
                      council_permissions: []
                      last_login: '2026-02-15 14:30:00'
                      member_since: '2025-01-01T10:00:00Z'
                missingId:
                  summary: No user ID
                  value:
                    success: false
                    message: User ID is required
      security:
        - wpAjaxNonce: []
components:
  schemas:
    UserDetailsSuccess:
      type: object
      properties:
        success:
          type: boolean
          const: true
        message:
          type: string
          examples:
            - Council user details retrieved successfully
        data:
          type: object
          properties:
            id:
              type: integer
              examples:
                - 123
            username:
              type: string
              examples:
                - john.doe
            email:
              type: string
              format: email
              examples:
                - john@example.com
            first_name:
              type: string
              examples:
                - John
            last_name:
              type: string
              examples:
                - Doe
            linkedin:
              type: string
              examples:
                - https://linkedin.com/in/johndoe
            phone:
              type: string
              examples:
                - '+15551234567'
            whatsapp:
              type: string
              examples:
                - '+15551234567'
            display_name:
              type: string
              examples:
                - John Doe
            display_name_options:
              type: array
              items:
                type: string
              description: Generated options for display name dropdown
              examples:
                - - john.doe
                  - John
                  - Doe
                  - John Doe
                  - Doe John
            role:
              type: string
              examples:
                - council_admin
            council_id:
              type: string
              format: uuid
              examples:
                - c9d8e7f6-5a4b-3c2d-1e0f-a1b2c3d4e5f6
            council_role:
              type: string
              examples:
                - council_admin
            council_permissions:
              type: array
              items:
                type: string
              examples:
                - []
            last_login:
              type: string
              description: MySQL datetime or empty string
              examples:
                - '2026-02-15 14:30:00'
            member_since:
              type: string
              format: date-time
              description: ISO 8601 (user_registered)
              examples:
                - '2025-01-01T10:00:00Z'
    AjaxErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          const: false
        message:
          type: string
          examples:
            - All fields are required
  securitySchemes:
    wpAjaxNonce:
      type: apiKey
      in: query
      name: nonce
      description: WordPress AJAX nonce (passed as form field, verified per-action)

````