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

# Get all learning guides

> Retrieve the learning guide catalogue for the Learn carousel.

Returns the metadata required to render the Learn screen's Learning Guides shelf. Cached for 30 minutes.

### Authentication & headers

<ParamField header="Authorization" type="string" required>
  Bearer token issued by Auth0. Format: `Bearer YOUR_ACCESS_TOKEN` and must include the `wealthyhood:nbg` scope.
</ParamField>

### Example request

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET 'https://api.wealthyhood.com/learn/learning-guides' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer YOUR_ACCESS_TOKEN'
  ```
</RequestExample>

### Example response

<ResponseExample>
  ```json Success theme={null}
  {
    "data": [
      {
        "key": "investing-basics",
        "contentType": "learningGuide",
        "id": "64f0c51e7fb3fc001234abcd",
        "title": "Investing basics",
        "description": "Start your investing journey with the essentials.",
        "backgroundColor": "#F0F4FF",
        "guideIconURL": "https://images.ctfassets.net/.../guide-icon.png",
        "mobileCoverImageURL": "https://images.ctfassets.net/.../mobile-cover.png",
        "webCoverImageURL": "https://images.ctfassets.net/.../web-cover.png",
        "slug": "investing-basics",
        "chapterCount": 6
      }
    ]
  }
  ```
</ResponseExample>

### Response fields

<ResponseField name="data" type="LearningGuideSummary[]" required>
  Ordered list of learning guides.

  <Expandable title="LearningGuideSummary">
    <ResponseField name="key" type="string" />

    <ResponseField name="contentType" type="string" />

    <ResponseField name="id" type="string" required>
      MongoDB document identifier (24-hex). Use this ID to fetch the full guide via `GET /learning-guides/{id}`.
    </ResponseField>

    <ResponseField name="title" type="string" />

    <ResponseField name="description" type="string" />

    <ResponseField name="backgroundColor" type="string" />

    <ResponseField name="guideIconURL" type="uri" />

    <ResponseField name="mobileCoverImageURL" type="uri" />

    <ResponseField name="webCoverImageURL" type="uri | null" />

    <ResponseField name="slug" type="string" />

    <ResponseField name="chapterCount" type="integer" />
  </Expandable>
</ResponseField>


## OpenAPI

````yaml GET /learn/learning-guides
openapi: 3.0.3
info:
  title: Wealthyhood Learn API
  version: 1.0.0
  description: >
    Machine-to-machine endpoints that power the Wealthyhood Learn screen.


    All routes require a bearer access token issued by Auth0 with the
    `wealthyhood:nbg` scope.
servers:
  - url: https://{host}
    variables:
      host:
        default: api.wealthyhood.com
        description: Wealthyhood API host.
security:
  - bearerAuth: []
tags:
  - name: Learn
    description: Investor education content surfaced in the Learn screen.
paths:
  /learn/learning-guides:
    get:
      tags:
        - Learn
      summary: Get all learning guides
      description: >
        Returns the metadata required to render the Learn screen's Learning
        Guides shelf. Responses are cached

        for 30 minutes and ordered as configured in Contentful. Content is
        localized based on the user's language preference.
      parameters:
        - $ref: '#/components/parameters/XUserId'
      responses:
        '200':
          description: Catalogue of learning guides.
          headers:
            Cache-Control:
              schema:
                type: string
              description: Listing cached for 30 minutes.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LearningGuidesResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
components:
  parameters:
    XUserId:
      name: x-user-id
      in: header
      required: true
      description: >-
        MongoDB identifier of the Wealthyhood user. Used to determine the
        language preference for localized content.
      schema:
        type: string
        pattern: ^[a-f0-9]{24}$
  schemas:
    LearningGuidesResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/LearningGuideSummary'
      required:
        - data
    LearningGuideSummary:
      type: object
      properties:
        key:
          type: string
          example: investing-basics
        id:
          type: string
          description: >-
            MongoDB document identifier (24-hex). Use this ID to fetch the full
            guide via `GET /learning-guides/{id}`.
          example: 64f0c51e7fb3fc001234abcd
        title:
          type: string
        description:
          type: string
        slug:
          type: string
        chapterCount:
          type: integer
      required:
        - key
        - id
        - title
        - description
        - slug
        - chapterCount
    ApiErrorResponse:
      type: object
      properties:
        status:
          type: integer
        error:
          type: object
          properties:
            message:
              type: string
            description:
              type: string
              nullable: true
        responseId:
          type: string
          format: uuid
  responses:
    UnauthorizedError:
      description: Missing or invalid bearer token.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiErrorResponse'
    ForbiddenError:
      description: Token lacks the required scope.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Auth0-issued access token that includes the `wealthyhood:nbg` scope.

````