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

# Get habit journal

> Retrieve all your habits with their completion status and progress for a specific date. This provides a daily journal view showing each habit's current streak, progress toward goals, and log information.



## OpenAPI

````yaml https://static.habitify.me/Habitify%20API%20v2.json get /habits/journal
openapi: 3.1.1
info:
  title: Habitify API v2
  description: >
    Welcome to our REST API. Use it to programmatically access your habit
    tracking data, build integrations, and automate workflows.


    ## Authentication

    All endpoints require authentication using an API key passed in the
    `X-API-Key` header.


    To generate your API key, open our app and go to **Settings > API**. Only
    one API key can be active at a time — generating a new key automatically
    revokes the previous one.


    > **Note:** API access requires a paid subscription and is not available on
    the free plan.


    ### Example Request

    ```

    curl -X GET https://api.habitify.me/v2/habits \
      -H "X-API-Key: YOUR_API_KEY"
    ```


    ## Rate Limiting

    We enforce a rate limit of **500 requests per minute** per account. If you
    exceed this limit, we will respond with a `429 Too Many Requests` status
    code. Wait for the rate limit window to reset before making additional
    requests.


    ## Versioning

    This is version 2 of our API. All endpoints are prefixed with `/v2`.
  version: 2.0.0
  contact:
    name: Habitify API Support
    url: https://habitify.me
  license:
    name: Proprietary
    url: https://habitify.me/terms
servers:
  - url: https://api.habitify.me/v2
    description: Production server
security:
  - ApiKeyTokenAuth: []
  - AccessTokenAuth: []
  - IdTokenAuth: []
tags:
  - name: Habits
    description: Manage your habits — create, update, archive, and delete them
    x-scalar-order:
      - habitify-api-v2/tag/habits/GET/habits
      - habitify-api-v2/tag/habits/POST/habits
      - habitify-api-v2/tag/habits/GET/habits/journal
      - habitify-api-v2/tag/habits/GET/habits/{habitId}
      - habitify-api-v2/tag/habits/PUT/habits/{habitId}
      - habitify-api-v2/tag/habits/DELETE/habits/{habitId}
      - habitify-api-v2/tag/habits/POST/habits/{habitId}/archive
      - habitify-api-v2/tag/habits/GET/habits/{habitId}/statistics
  - name: Habit Logs
    description: >-
      Track your progress by logging completions, failures, skips, and measured
      values
    x-scalar-order:
      - habitify-api-v2/tag/habit-logs/POST/habits/{habitId}/logs
      - habitify-api-v2/tag/habit-logs/DELETE/habits/{habitId}/logs/{logId}
      - habitify-api-v2/tag/habit-logs/POST/habits/{habitId}/logs/complete
      - habitify-api-v2/tag/habit-logs/POST/habits/{habitId}/logs/failed
      - habitify-api-v2/tag/habit-logs/POST/habits/{habitId}/logs/skipped
      - habitify-api-v2/tag/habit-logs/POST/habits/{habitId}/logs/undo
  - name: Habit Notes
    description: Attach notes with text, mood levels, and photos to your habits
    x-scalar-order:
      - habitify-api-v2/tag/habit-notes/GET/habits/{habitId}/notes
      - habitify-api-v2/tag/habit-notes/POST/habits/{habitId}/notes
      - habitify-api-v2/tag/habit-notes/PUT/habits/{habitId}/notes/{noteId}
      - habitify-api-v2/tag/habit-notes/DELETE/habits/{habitId}/notes/{noteId}
  - name: Areas
    description: Organize your habits into areas for grouping and categorization
    x-scalar-order:
      - habitify-api-v2/tag/areas/GET/areas
      - habitify-api-v2/tag/areas/POST/areas
      - habitify-api-v2/tag/areas/GET/areas/{areaId}
      - habitify-api-v2/tag/areas/PUT/areas/{areaId}
      - habitify-api-v2/tag/areas/DELETE/areas/{areaId}
paths:
  /habits/journal:
    get:
      tags:
        - Habits
      summary: Get habit journal
      description: >-
        Retrieve all your habits with their completion status and progress for a
        specific date. This provides a daily journal view showing each habit's
        current streak, progress toward goals, and log information.
      operationId: getHabitsJournal
      parameters:
        - name: date
          in: query
          schema:
            type: string
            format: date
          description: >-
            Date to retrieve the journal for (YYYY-MM-DD format). Defaults to
            today based on your timezone.
          required: false
      responses:
        '200':
          description: Journal data with habits and their progress for the requested date
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Unique identifier of the habit
                        name:
                          type: string
                          description: Display name of the habit
                        status:
                          description: >
                            Represents the completion status of a habit for a
                            specific date. - `completed`: The habit was
                            successfully completed for the day. - `skipped`: You
                            intentionally skipped the habit. - `failed`: You
                            marked the habit as failed. - `inprogress`: The
                            habit has not yet been completed, skipped, or failed
                            for the day.
                          type: string
                          enum:
                            - completed
                            - skipped
                            - failed
                            - inprogress
                        colorHex:
                          type: string
                          description: Hex color code of the habit
                          examples:
                            - '#FF6B6B'
                        icon:
                          type: string
                          description: Icon identifier of the habit
                        timeOfDayIds:
                          type: array
                          items:
                            type: string
                          description: IDs of time-of-day periods assigned to this habit
                        type:
                          type: string
                          enum:
                            - good
                            - bad
                          description: >-
                            Whether this is a habit to build (good) or break
                            (bad)
                        currentStreak:
                          type: object
                          description: Current consecutive streak information
                          properties:
                            length:
                              type: integer
                              description: Number of consecutive successful periods
                              examples:
                                - 7
                            unit:
                              type: string
                              enum:
                                - day
                              description: Unit of measurement for the streak
                        progress:
                          type: object
                          description: >-
                            Progress toward the habit's goal for the current
                            period
                          properties:
                            current:
                              type: number
                              description: Current accumulated value for the period
                            target:
                              type: number
                              description: Target value to reach for the period
                            unit:
                              type: string
                              description: Unit of measurement for the progress value
                              examples:
                                - rep
                            periodicity:
                              description: >
                                The time period over which a goal is measured. -
                                `daily`: Goal resets every day. - `weekly`: Goal
                                resets every week. - `monthly`: Goal resets
                                every month. - `yearly`: Goal resets every year.
                              type: string
                              enum:
                                - daily
                                - weekly
                                - monthly
                                - yearly
                        logInfo:
                          type: object
                          description: Information about how the habit is logged
                          properties:
                            type:
                              description: >
                                Indicates how the log entry was created. -
                                `manual`: You manually recorded the value. -
                                `auto`: The value was automatically recorded via
                                an integrated service.
                              type: string
                              enum:
                                - manual
                                - auto
                examples:
                  - data:
                      - id: habit_123
                        name: Morning Run
                        status: completed
                        colorHex: '#FF6B6B'
                        icon: running
                        timeOfDayIds:
                          - morning_slot_id
                        type: good
                        currentStreak:
                          length: 7
                          unit: day
                        progress:
                          current: 5.2
                          target: 5
                          unit: km
                          periodicity: daily
                        logInfo:
                          type: manual
                      - id: habit_456
                        name: Read Book
                        status: inprogress
                        colorHex: '#4ECDC4'
                        icon: book
                        timeOfDayIds:
                          - evening_slot_id
                        type: good
                        currentStreak:
                          length: 3
                          unit: day
                        progress:
                          current: 0
                          target: 30
                          unit: min
                          periodicity: daily
                        logInfo:
                          type: manual
        '400':
          description: Request validation failed
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    examples:
                      - Validation Error
                  message:
                    type: string
                    examples:
                      - Request validation failed
                  details:
                    type: array
                    items:
                      type: object
                      properties:
                        field:
                          type: string
                        message:
                          type: string
        '401':
          description: Authentication information is missing or invalid
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    examples:
                      - Unauthorized
                  message:
                    type: string
                    examples:
                      - Invalid or missing authentication token
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    examples:
                      - Internal server error
components:
  securitySchemes:
    ApiKeyTokenAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: >-
        API key generated from our app (Settings > API). Only one key can be
        active at a time.
    AccessTokenAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Access token acquired from OAuth2
    IdTokenAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: ID token from Firebase Auth

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.