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

# Calculate Streak

> Calculate the user's streak, and increase it if necessary.



## OpenAPI

````yaml post /calculate-streak
openapi: 3.1.0
info:
  title: DolphinFlashcardApp API
  version: '1.0'
  summary: Manage flashcards
  description: >-
    Set up user accounts, create or manage flashcards, set learning goals, and
    track performances with user's heatmap and streak data. Data is available in
    JSON format only. <br></br>**Note**: All parameters are case-sensitive.
    Request body parameters are required, but the query parameters are
    optional. 
  contact:
    name: Dolphin Flashcards
    url: https://dolphinflashcards.com/contact
    email: dolphinflashcards@outlook.com
  license:
    name: MIT
    url: https://github.com/jacob-macleod/Dolphin-Flashcard-App/blob/main/LICENSE
servers:
  - url: http://dolphinflashcards.com/api
    description: baseurl
security: []
tags:
  - name: Account
    description: Groups the endpoints required to create an account.
  - name: Card management
    description: Groups the endpoints required to create and manage flashcards.
  - name: Goal
    description: Groups the endpoints required to create and manage goals.
  - name: Statistics
    description: Groups the endpoints required to track heatmap and streak.
paths:
  /calculate-streak:
    post:
      tags:
        - Statistics
      summary: Calculate Streak
      description: Calculate the user's streak, and increase it if necessary.
      operationId: post-calculate-streak
      parameters:
        - schema:
            type: boolean
          in: query
          name: increase
          description: >-
            Can be added to the query string to increase a user's streak. If
            needed, set `increase = true`
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
                - jwtToken
              properties:
                jwtToken:
                  type: string
                  x-stoplight:
                    id: ulxhv08jir4pf
                  description: >-
                    The unique identifier of the user to calculate the streak
                    for.
                  example: >-
                    eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsImtpZCI6ImEzMmZkZDRiMTQ2Njc3NzE5YWIyMzcyODYxYmRlZDg5In0.eyJpc3MiOiJodHRwOi8vZG9scGhpbmZsYXNoY2FyZHMuY29tIiwiYXVkIjoiYXBpIiwic3ViIjoidU5RR2lIencxdk9EaExybTVDRWtaQ1ZoTU93MSIsImFjY2Vzc190b2tlbiI6IjRiZTA2NDNmLTFkOTgtNTczYi05N2NkLWNhOThhNjUzNDdkZCIsImFjY2Vzc190b2tlbl9yYXciOiJ0ZXN0IiwiaWF0IjoxNzI2Nzc0MTYzfQ.F-fxFitPQF-gGHyhGPGxE_zj_b8XJybqe4J_iYG66BC4Dqm4LTb8RpcDLyYUhRCcpphihpWGbdp
            examples:
              Example 1:
                value:
                  jwtToken: >-
                    eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsImtpZCI6ImEzMmZkZDRiMTQ2Njc3NzE5YWIyMzcyODYxYmRlZDg5In0.eyJpc3MiOiJodHRwOi8vZG9scGhpbmZsYXNoY2FyZHMuY29tIiwiYXVkIjoiYXBpIiwic3ViIjoidU5RR2lIencxdk9EaExybTVDRWtaQ1ZoTU93MSIsImFjY2Vzc190b2tlbiI6IjRiZTA2NDNmLTFkOTgtNTczYi05N2NkLWNhOThhNjUzNDdkZCIsImFjY2Vzc190b2tlbl9yYXciOiJ0ZXN0IiwiaWF0IjoxNzI2Nzc0MTYzfQ.F-fxFitPQF-gGHyhGPGxE_zj_b8XJybqe4J_iYG66BC4Dqm4LTb8RpcDLyYUhRCcpphihpWGbdp
      responses:
        '200':
          description: OK.
          content:
            application/json:
              schema:
                type: array
                x-examples:
                  Example 1:
                    - streak: 0
                items:
                  type:
                    - object
                    - integer
                  properties:
                    '200':
                      type: integer
                      x-stoplight:
                        id: rrojbzk2fmv0x
                      description: HTTP status code indicating a successful operation.
                    streak:
                      type: string
                      example: '1'
                      description: Specifies the user's calculated streak.
        '400':
          description: >-
            A bad request error. Returned when the request body parameter is not
            in the expected JSON format.
          content:
            application/json:
              schema:
                type: object
                x-examples:
                  Example 1:
                    error: >-
                      Your supplied json keys do not match the expected format.
                      The request should be in the format: {'jwtToken': ''}
                properties:
                  error:
                    type: string
                    example: >-
                      Your supplied json keys do not match the expected format.
                      The request should be in the format: {'jwtToken': ' '}
                    description: >-
                      Describes the nature of the error and provides a possible
                      solution.
        '500':
          description: 'Internal server error. '
          content:
            application/json:
              schema:
                type: object
                x-examples:
                  Example 1:
                    error: '''NoneType'' object is not subscriptable'
                properties:
                  error:
                    type: string
                    description: >-
                      Describes the nature of the error and provides a possible
                      reason.
                    example: User does not exist.

````