Skip to content

Json documentation

Emma edited this page Jan 20, 2025 · 4 revisions

JSON File Documentation for Import and Export

NOTE: This documentation is not final and is a quick draft. This warning will be removed once finalized. Please follow the instructions carefully when using the JSON file.

Important Notes

  • Always start by exporting data from the Mensinator app.
  • NEVER modify the app_settings values. Changing these may break the app's functionality.
  • We do not support importing data from other apps. Use this feature at your own risk.
  • Only edit the periods and ovulations sections.
  • Always keep a backup by performing an export before making any edits to the file.

JSON Structure

The exported file follows this structure:

{
  "periods": [
    {
      "id": <integer>,
      "date": <string>,
      "period_id": <integer>
    }
    // More period objects
  ],
  "symptoms": [
    {
      "id": <integer>,
      "symptom_name": <string>,
      "active": <integer>
    }
    // More symptom objects
  ],
  "symptom_date": [
    {
      "id": <integer>,
      "symptom_date": <string>,
      "symptom_id": <integer>
    }
    // More symptom_date objects
  ],
  "ovulations": [
    {
      "id": <integer>,
      "date": <string>
    }
    // More ovulation objects
  ],
  "app_settings": [
    {
    }
    // Never touch these values! Hence, no explanation needed. Changing these might cause the app to not function properly!
  ]
}

Explanation of Fields

periods

  • id: A unique integer identifier for each period date.
  • date: The date of the period in the format YYYY-MM-DD.
  • period_id: An integer used to group multiple dates into a single menstrual cycle.

symptoms

  • id: A unique integer identifier for each symptom.
  • symptom_name: The name of the symptom as a string.
  • active: Indicates if the symptom is currently active. 1 means active, and 0 means inactive.

symptom_date

  • id: A unique integer identifier for each symptom occurrence.
  • symptom_date: The date the symptom occurred, in the format YYYY-MM-DD.
  • symptom_id: Links the occurrence to a specific symptom by referencing its id.

ovulations

  • id: A unique integer identifier for each ovulation record.
  • date: The date of ovulation in the format YYYY-MM-DD.

app_settings

  • Will not explain these!