Class Pronote

Constructors

  • A reprensentation of the Pronote client.

    Parameters

    • fetcher: PawnoteFetcher

      Custom fetcher to call the API with another API than fetch.

    • session: Session

      Represent the user session.

    • credentials: NextAuthenticationCredentials
    • user: {
          autorisationKiosque: boolean;
          autorisations: {
              AvecDiscussion?: boolean;
              AvecDiscussionAvancee?: boolean;
              AvecDiscussionEleves?: boolean;
              AvecDiscussionParents?: boolean;
              AvecDiscussionPersonnels?: boolean;
              AvecDiscussionProfesseurs?: boolean;
              autoriserImpression: boolean;
              compte: {
                  avecInformationsPersonnelles: boolean;
                  avecSaisieMotDePasse: boolean;
              };
              consulterDonneesAdministrativesAutresEleves: boolean;
              cours: {
                  domaineConsultationEDT: {
                      V: string;
                      _T: 8;
                  };
                  domaineModificationCours: {
                      V: string;
                      _T: 8;
                  };
                  masquerPartiesDeClasse: boolean;
              };
              discussionInterdit?: boolean;
              incidents: unknown;
              intendance: unknown;
              services: unknown;
              tailleMaxDocJointEtablissement: number;
              tailleMaxRenduTafEleve: number;
          };
          autorisationsSession: {
              fonctionnalites: {
                  attestationEtendue: boolean;
                  gestionTwitter: boolean;
              };
          };
          listeInformationsEtablissements: {
              V: {
                  Coordonnees: {
                      Adresse1: SVGStringList;
                      Adresse2: string;
                      CodePostal: string;
                      LibellePostal: string;
                      LibelleVille: string;
                      Pays: string;
                      Province: string;
                      SiteInternet: string;
                  };
                  L: string;
                  Logo: {
                      V: number;
                      _T: 25;
                  };
                  N: string;
                  avecInformations: boolean;
              }[];
              _T: 24;
          };
          listeOnglets: {
              G: number;
              Onglet: {
                  G: number;
              }[];
          }[];
          listeOngletsInvisibles: number[];
          listeOngletsNotification: number[];
          parametresUtilisateur: {
              Communication: {
                  DiscussionNonLues: false;
              };
              EDT: {
                  afficherCoursAnnules: boolean;
                  axeInverseEDT: boolean;
                  axeInversePlanningHebdo: boolean;
                  axeInversePlanningJour: boolean;
                  axeInversePlanningJour2: boolean;
                  nbJours: number;
                  nbJoursEDT: number;
                  nbRessources: number;
                  nbSequences: number;
              };
              theme: {
                  theme: number;
              };
              version: number;
          };
          reglesSaisieMDP: {
              max: number;
              min: number;
              regles: {
                  V: string;
                  _T: 26;
              };
          };
          ressource: {
              Etablissement: {
                  V: {
                      L: string;
                      N: string;
                  };
                  _T: 24;
              };
              G: PronoteApiUserResourceType;
              L: string;
              N: string;
              P: number;
              avecPhoto: boolean;
              classeDEleve: {
                  L: string;
                  N: string;
              };
              estDelegue?: boolean;
              estMembreCA?: boolean;
              listeClassesHistoriques: {
                  V: {
                      AvecFiliere: boolean;
                      AvecNote: boolean;
                      L: string;
                      N: string;
                  }[];
                  _T: 24;
              };
              listeGroupes: {
                  V: {
                      L: string;
                      N: string;
                  }[];
                  _T: 24;
              };
              listeOngletsPourPeriodes: {
                  V: {
                      G: PronoteApiOnglets;
                      listePeriodes: {
                          T: 24;
                          V: {
                              A: boolean;
                              G: number;
                              GenreNotation: number;
                              L: string;
                              N: string;
                          }[];
                      };
                      periodeParDefaut?: {
                          V: {
                              L: string;
                              N: string;
                          };
                          _T: 24;
                      };
                  }[];
                  _T: 24;
              };
              listeOngletsPourPiliers: {
                  V: {
                      G: 45;
                      listePaliers: {
                          V: {
                              G: number;
                              L: string;
                              N: string;
                              listePiliers: {
                                  V: {
                                      G: number;
                                      L: string;
                                      N: string;
                                      P: number;
                                      Service?: (...)[];
                                      estPersonnalise: boolean;
                                      estPilierLVE: boolean;
                                  };
                                  _T: 24;
                              };
                          }[];
                          _T: 24;
                      };
                  };
                  _T: 24;
              };
          };
          tabEtablissementsModeleGrille: unknown[];
      }

      The user data.

      • autorisationKiosque: boolean
      • autorisations: {
            AvecDiscussion?: boolean;
            AvecDiscussionAvancee?: boolean;
            AvecDiscussionEleves?: boolean;
            AvecDiscussionParents?: boolean;
            AvecDiscussionPersonnels?: boolean;
            AvecDiscussionProfesseurs?: boolean;
            autoriserImpression: boolean;
            compte: {
                avecInformationsPersonnelles: boolean;
                avecSaisieMotDePasse: boolean;
            };
            consulterDonneesAdministrativesAutresEleves: boolean;
            cours: {
                domaineConsultationEDT: {
                    V: string;
                    _T: 8;
                };
                domaineModificationCours: {
                    V: string;
                    _T: 8;
                };
                masquerPartiesDeClasse: boolean;
            };
            discussionInterdit?: boolean;
            incidents: unknown;
            intendance: unknown;
            services: unknown;
            tailleMaxDocJointEtablissement: number;
            tailleMaxRenduTafEleve: number;
        }

        Authorization for the current student.

        • Optional AvecDiscussion?: boolean

          Whether the user is allowed to read discussions or messages.

        • Optional AvecDiscussionAvancee?: boolean

          Whether the user is allowed to send HTML through discussions. Otherwise the API should send plain text : if not checked properly, an empty message will be sent.

        • Optional AvecDiscussionEleves?: boolean

          Is allowed to create discussions with students ?

          Available

          Teacher

        • Optional AvecDiscussionParents?: boolean

          Is allowed to create discussions with students' parents ?

          Available

          Teacher

        • Optional AvecDiscussionPersonnels?: boolean

          Is allowed to create discussions with staff ?

          Available

          Student | Teacher

        • Optional AvecDiscussionProfesseurs?: boolean

          Is allowed to create discussions with teachers ?

          Available

          Student | Teacher

        • autoriserImpression: boolean
        • compte: {
              avecInformationsPersonnelles: boolean;
              avecSaisieMotDePasse: boolean;
          }
          • avecInformationsPersonnelles: boolean
          • avecSaisieMotDePasse: boolean
        • consulterDonneesAdministrativesAutresEleves: boolean
        • cours: {
              domaineConsultationEDT: {
                  V: string;
                  _T: 8;
              };
              domaineModificationCours: {
                  V: string;
                  _T: 8;
              };
              masquerPartiesDeClasse: boolean;
          }
          • domaineConsultationEDT: {
                V: string;
                _T: 8;
            }
            • V: string
            • _T: 8
          • domaineModificationCours: {
                V: string;
                _T: 8;
            }
            • V: string
            • _T: 8
          • masquerPartiesDeClasse: boolean
        • Optional discussionInterdit?: boolean

          Whether the user is disallowed to create discussions or messages.

        • incidents: unknown
        • intendance: unknown
        • services: unknown
        • tailleMaxDocJointEtablissement: number
        • tailleMaxRenduTafEleve: number
      • autorisationsSession: {
            fonctionnalites: {
                attestationEtendue: boolean;
                gestionTwitter: boolean;
            };
        }
        • fonctionnalites: {
              attestationEtendue: boolean;
              gestionTwitter: boolean;
          }
          • attestationEtendue: boolean
          • gestionTwitter: boolean
      • listeInformationsEtablissements: {
            V: {
                Coordonnees: {
                    Adresse1: SVGStringList;
                    Adresse2: string;
                    CodePostal: string;
                    LibellePostal: string;
                    LibelleVille: string;
                    Pays: string;
                    Province: string;
                    SiteInternet: string;
                };
                L: string;
                Logo: {
                    V: number;
                    _T: 25;
                };
                N: string;
                avecInformations: boolean;
            }[];
            _T: 24;
        }

        Informations about school.

        • V: {
              Coordonnees: {
                  Adresse1: SVGStringList;
                  Adresse2: string;
                  CodePostal: string;
                  LibellePostal: string;
                  LibelleVille: string;
                  Pays: string;
                  Province: string;
                  SiteInternet: string;
              };
              L: string;
              Logo: {
                  V: number;
                  _T: 25;
              };
              N: string;
              avecInformations: boolean;
          }[]
        • _T: 24
      • listeOnglets: {
            G: number;
            Onglet: {
                G: number;
            }[];
        }[]
      • listeOngletsInvisibles: number[]
      • listeOngletsNotification: number[]
      • parametresUtilisateur: {
            Communication: {
                DiscussionNonLues: false;
            };
            EDT: {
                afficherCoursAnnules: boolean;
                axeInverseEDT: boolean;
                axeInversePlanningHebdo: boolean;
                axeInversePlanningJour: boolean;
                axeInversePlanningJour2: boolean;
                nbJours: number;
                nbJoursEDT: number;
                nbRessources: number;
                nbSequences: number;
            };
            theme: {
                theme: number;
            };
            version: number;
        }

        User settings.

        • Communication: {
              DiscussionNonLues: false;
          }
          • DiscussionNonLues: false
        • EDT: {
              afficherCoursAnnules: boolean;
              axeInverseEDT: boolean;
              axeInversePlanningHebdo: boolean;
              axeInversePlanningJour: boolean;
              axeInversePlanningJour2: boolean;
              nbJours: number;
              nbJoursEDT: number;
              nbRessources: number;
              nbSequences: number;
          }

          Settings for the timetable.

          • afficherCoursAnnules: boolean

            Show canceled classes.

          • axeInverseEDT: boolean

            Swap time and day position.

          • axeInversePlanningHebdo: boolean
          • axeInversePlanningJour: boolean
          • axeInversePlanningJour2: boolean
          • nbJours: number
          • nbJoursEDT: number
          • nbRessources: number
          • nbSequences: number
        • theme: {
              theme: number;
          }

          User's current theme.

          • theme: number
        • version: number
      • reglesSaisieMDP: {
            max: number;
            min: number;
            regles: {
                V: string;
                _T: 26;
            };
        }
        • max: number
        • min: number
        • regles: {
              V: string;
              _T: 26;
          }
          • V: string

            Array of numbers ?

          • _T: 26
      • ressource: {
            Etablissement: {
                V: {
                    L: string;
                    N: string;
                };
                _T: 24;
            };
            G: PronoteApiUserResourceType;
            L: string;
            N: string;
            P: number;
            avecPhoto: boolean;
            classeDEleve: {
                L: string;
                N: string;
            };
            estDelegue?: boolean;
            estMembreCA?: boolean;
            listeClassesHistoriques: {
                V: {
                    AvecFiliere: boolean;
                    AvecNote: boolean;
                    L: string;
                    N: string;
                }[];
                _T: 24;
            };
            listeGroupes: {
                V: {
                    L: string;
                    N: string;
                }[];
                _T: 24;
            };
            listeOngletsPourPeriodes: {
                V: {
                    G: PronoteApiOnglets;
                    listePeriodes: {
                        T: 24;
                        V: {
                            A: boolean;
                            G: number;
                            GenreNotation: number;
                            L: string;
                            N: string;
                        }[];
                    };
                    periodeParDefaut?: {
                        V: {
                            L: string;
                            N: string;
                        };
                        _T: 24;
                    };
                }[];
                _T: 24;
            };
            listeOngletsPourPiliers: {
                V: {
                    G: 45;
                    listePaliers: {
                        V: {
                            G: number;
                            L: string;
                            N: string;
                            listePiliers: {
                                V: {
                                    G: number;
                                    L: string;
                                    N: string;
                                    P: number;
                                    Service?: (...)[];
                                    estPersonnalise: boolean;
                                    estPilierLVE: boolean;
                                };
                                _T: 24;
                            };
                        }[];
                        _T: 24;
                    };
                };
                _T: 24;
            };
        }
        • Etablissement: {
              V: {
                  L: string;
                  N: string;
              };
              _T: 24;
          }
          • V: {
                L: string;
                N: string;
            }
            • L: string

              School name.

            • N: string

              School ID.

          • _T: 24
        • G: PronoteApiUserResourceType
        • L: string

          Account name.

        • N: string

          Account ID.

        • P: number
        • avecPhoto: boolean

          Student have a profile picture.

        • classeDEleve: {
              L: string;
              N: string;
          }

          Class of the student.

          • L: string

            Class name.

          • N: string

            Class ID.

        • Optional estDelegue?: boolean
        • Optional estMembreCA?: boolean
        • listeClassesHistoriques: {
              V: {
                  AvecFiliere: boolean;
                  AvecNote: boolean;
                  L: string;
                  N: string;
              }[];
              _T: 24;
          }
          • V: {
                AvecFiliere: boolean;
                AvecNote: boolean;
                L: string;
                N: string;
            }[]
          • _T: 24
        • listeGroupes: {
              V: {
                  L: string;
                  N: string;
              }[];
              _T: 24;
          }

          List of student groups.

          • V: {
                L: string;
                N: string;
            }[]
          • _T: 24
        • listeOngletsPourPeriodes: {
              V: {
                  G: PronoteApiOnglets;
                  listePeriodes: {
                      T: 24;
                      V: {
                          A: boolean;
                          G: number;
                          GenreNotation: number;
                          L: string;
                          N: string;
                      }[];
                  };
                  periodeParDefaut?: {
                      V: {
                          L: string;
                          N: string;
                      };
                      _T: 24;
                  };
              }[];
              _T: 24;
          }
          • V: {
                G: PronoteApiOnglets;
                listePeriodes: {
                    T: 24;
                    V: {
                        A: boolean;
                        G: number;
                        GenreNotation: number;
                        L: string;
                        N: string;
                    }[];
                };
                periodeParDefaut?: {
                    V: {
                        L: string;
                        N: string;
                    };
                    _T: 24;
                };
            }[]
          • _T: 24
        • listeOngletsPourPiliers: {
              V: {
                  G: 45;
                  listePaliers: {
                      V: {
                          G: number;
                          L: string;
                          N: string;
                          listePiliers: {
                              V: {
                                  G: number;
                                  L: string;
                                  N: string;
                                  P: number;
                                  Service?: (...)[];
                                  estPersonnalise: boolean;
                                  estPilierLVE: boolean;
                              };
                              _T: 24;
                          };
                      }[];
                      _T: 24;
                  };
              };
              _T: 24;
          }
          • V: {
                G: 45;
                listePaliers: {
                    V: {
                        G: number;
                        L: string;
                        N: string;
                        listePiliers: {
                            V: {
                                G: number;
                                L: string;
                                N: string;
                                P: number;
                                Service?: (...)[];
                                estPersonnalise: boolean;
                                estPilierLVE: boolean;
                            };
                            _T: 24;
                        };
                    }[];
                    _T: 24;
                };
            }
            • G: 45
            • listePaliers: {
                  V: {
                      G: number;
                      L: string;
                      N: string;
                      listePiliers: {
                          V: {
                              G: number;
                              L: string;
                              N: string;
                              P: number;
                              Service?: (...)[];
                              estPersonnalise: boolean;
                              estPilierLVE: boolean;
                          };
                          _T: 24;
                      };
                  }[];
                  _T: 24;
              }
              • V: {
                    G: number;
                    L: string;
                    N: string;
                    listePiliers: {
                        V: {
                            G: number;
                            L: string;
                            N: string;
                            P: number;
                            Service?: (...)[];
                            estPersonnalise: boolean;
                            estPilierLVE: boolean;
                        };
                        _T: 24;
                    };
                }[]
              • _T: 24
          • _T: 24
      • tabEtablissementsModeleGrille: unknown[]
    • loginInformations: {
          _Signature_: {
              ModeExclusif: boolean;
          };
          donnees: {
              DateServeurHttp: {
                  V: string;
                  _T: 7;
              };
              General: {
                  ActivationMessagerieEntreParents: boolean;
                  AfficherAbbreviationNiveauDAcquisition: boolean;
                  AnneeScolaire: string;
                  AvecChoixConnexion: boolean;
                  AvecElevesRattaches: boolean;
                  AvecEvaluationHistorique: boolean;
                  AvecGestionNiveauxCECRL: boolean;
                  AvecHeuresPleinesApresMidi: boolean;
                  AvecRecuperationInfosConnexion: boolean;
                  BaremeNotation: {
                      V: string;
                      _T: 10;
                  };
                  DemiJourneesOuvrees: {
                      V: string;
                      _T: 26;
                  }[];
                  DerniereDate: {
                      V: string;
                      _T: 7;
                  };
                  DomainesFrequences: Record<PronoteApiDomainFrequencyType, PronoteValue<Element, string>>;
                  DureeSequence: number;
                  GestionParcoursExcellence: boolean;
                  JourOuvre: {
                      V: string;
                      _T: 7;
                  };
                  JourOuvres: {
                      V: string;
                      _T: 11;
                  };
                  JoursDemiPension: {
                      V: string;
                      _T: 26;
                  };
                  LibellesFrequences: Record<PronoteApiDomainFrequencyType, string>;
                  ListeHeures: {
                      V: {
                          A?: boolean;
                          G: number;
                          L: string;
                      }[];
                      _T: 24;
                  };
                  ListeHeuresFin: {
                      V: {
                          A?: boolean;
                          G: number;
                          L: string;
                      }[];
                      _T: 24;
                  };
                  ListeNiveauxDAcquisitions: {
                      V: {
                          G: number;
                          L: string;
                          N: string;
                          P: number;
                          abbreviation: string;
                          actifPour: {
                              V: string;
                              _T: 26;
                          };
                          couleur?: string;
                          estAcqui?: boolean;
                          estNotantPourTxReussite?: boolean;
                          listePositionnements: {
                              V: {
                                  G: number;
                                  L: string;
                                  abbreviation: string;
                              }[];
                              _T: 24;
                          };
                          nombrePointsBrevet?: {
                              V: string;
                              _T: 10;
                          };
                          ponderation?: {
                              V: string;
                              _T: 10;
                          };
                          positionJauge: number;
                          raccourci: string;
                      }[];
                      _T: 24;
                  };
                  ListePeriodes: {
                      G: number;
                      L: string;
                      N: string;
                      dateDebut: {
                          V: string;
                          _T: 7;
                      };
                      dateFin: {
                          V: string;
                          _T: 7;
                      };
                      periodeNotation: number;
                  }[];
                  NeComptabiliserQueEvalsAnneeScoDsValidAuto: boolean;
                  NomEtablissement: string;
                  NomEtablissementConnexion: string;
                  PlaceDemiJourneeAbsence: number;
                  PlacesParHeure: number;
                  PlacesParJour: number;
                  Police: string;
                  PremierLundi: {
                      V: string;
                      _T: 7;
                  };
                  PremiereDate: {
                      V: string;
                      _T: 7;
                  };
                  PremiereHeure: {
                      V: string;
                      _T: 7;
                  };
                  SansValidationNivIntermediairesDsValidAuto: boolean;
                  TailleMaxAppreciation: number[];
                  TaillePolice: number;
                  UrlAide: {
                      V: string;
                      _T: 23;
                  };
                  activationDemiPension: boolean;
                  afficherSemainesCalendaires: 0 | 1;
                  afficherSequences: boolean;
                  avecForum: boolean;
                  couleurActiviteLangagiere: string;
                  dateDebutPremierCycle: {
                      V: string;
                      _T: 7;
                  };
                  debutDemiPension: number;
                  estHebergeEnFrance: boolean;
                  finDemiPension: number;
                  genresRenduTAFValable: {
                      V: string;
                      _T: 26;
                  };
                  grillesEDTEnCycle: number;
                  joursOuvresParCycle: number;
                  langID: number;
                  langue: string;
                  lienMentions: string;
                  listeAnnotationsAutorisees: {
                      V: string;
                      _T: 26;
                  };
                  listeJoursFeries: {
                      V: {
                          L: string;
                          N: string;
                          dateDebut: {
                              V: string;
                              _T: 7;
                          };
                          dateFin: {
                              V: string;
                              _T: 7;
                          };
                      }[];
                      _T: 24;
                  };
                  listeLangues: {
                      V: {
                          description: string;
                          langID: number;
                      }[];
                      _T: 24;
                  };
                  logo: {
                      V: number;
                      _T: 25;
                  };
                  maskTelephone: string;
                  maxBaremeQuestionQCM: number;
                  maxECTS: number;
                  maxNbPointQCM: number;
                  millesime: string;
                  minBaremeQuestionQCM: number;
                  nomCookieAppli: string;
                  numeroPremiereSemaine: number;
                  premierJourSemaine: number;
                  recreations: {
                      V: unknown[];
                      _T: 24;
                  };
                  sequences: string[];
                  setOfJoursCycleOuvre: {
                      V: string;
                      _T: 26;
                  };
                  tailleCommentaireDevoir: number;
                  tailleLibelleElementGrilleCompetence: number;
                  tailleMaxEnregistrementAudioRenduTAF: number;
                  urlAccesTwitter: {
                      V: string;
                      _T: 23;
                  };
                  urlAccesVideos: {
                      V: string;
                      _T: 23;
                  };
                  urlCanope: {
                      V: string;
                      _T: 23;
                  };
                  urlFAQEnregistrementDoubleAuth: {
                      V: string;
                      _T: 23;
                  };
                  urlSiteIndexEducation: {
                      V: string;
                      _T: 23;
                  };
                  urlSiteInfosHebergement: {
                      V: string;
                      _T: 23;
                  };
                  version: string;
                  versionPN: string;
              };
              Nom: string;
              Theme: number;
              URLEspace: string;
              avecMembre: boolean;
              genreImageConnexion: number;
              identifiantNav: string;
              labelLienProduit: string;
              listePolices: {
                  V: {
                      L: string;
                  }[];
                  _T: 24;
              };
              logoProduitCss: string;
              mentionsPagesPubliques: {
                  lien: {
                      V: string;
                      _T: 21;
                  };
              };
              pourNouvelleCaledonie: boolean;
              urlImageConnexion: string;
          };
          nom: Informations;
      }

      A whole informations from the first login request

      • _Signature_: {
            ModeExclusif: boolean;
        }
        • ModeExclusif: boolean
      • donnees: {
            DateServeurHttp: {
                V: string;
                _T: 7;
            };
            General: {
                ActivationMessagerieEntreParents: boolean;
                AfficherAbbreviationNiveauDAcquisition: boolean;
                AnneeScolaire: string;
                AvecChoixConnexion: boolean;
                AvecElevesRattaches: boolean;
                AvecEvaluationHistorique: boolean;
                AvecGestionNiveauxCECRL: boolean;
                AvecHeuresPleinesApresMidi: boolean;
                AvecRecuperationInfosConnexion: boolean;
                BaremeNotation: {
                    V: string;
                    _T: 10;
                };
                DemiJourneesOuvrees: {
                    V: string;
                    _T: 26;
                }[];
                DerniereDate: {
                    V: string;
                    _T: 7;
                };
                DomainesFrequences: Record<PronoteApiDomainFrequencyType, PronoteValue<Element, string>>;
                DureeSequence: number;
                GestionParcoursExcellence: boolean;
                JourOuvre: {
                    V: string;
                    _T: 7;
                };
                JourOuvres: {
                    V: string;
                    _T: 11;
                };
                JoursDemiPension: {
                    V: string;
                    _T: 26;
                };
                LibellesFrequences: Record<PronoteApiDomainFrequencyType, string>;
                ListeHeures: {
                    V: {
                        A?: boolean;
                        G: number;
                        L: string;
                    }[];
                    _T: 24;
                };
                ListeHeuresFin: {
                    V: {
                        A?: boolean;
                        G: number;
                        L: string;
                    }[];
                    _T: 24;
                };
                ListeNiveauxDAcquisitions: {
                    V: {
                        G: number;
                        L: string;
                        N: string;
                        P: number;
                        abbreviation: string;
                        actifPour: {
                            V: string;
                            _T: 26;
                        };
                        couleur?: string;
                        estAcqui?: boolean;
                        estNotantPourTxReussite?: boolean;
                        listePositionnements: {
                            V: {
                                G: number;
                                L: string;
                                abbreviation: string;
                            }[];
                            _T: 24;
                        };
                        nombrePointsBrevet?: {
                            V: string;
                            _T: 10;
                        };
                        ponderation?: {
                            V: string;
                            _T: 10;
                        };
                        positionJauge: number;
                        raccourci: string;
                    }[];
                    _T: 24;
                };
                ListePeriodes: {
                    G: number;
                    L: string;
                    N: string;
                    dateDebut: {
                        V: string;
                        _T: 7;
                    };
                    dateFin: {
                        V: string;
                        _T: 7;
                    };
                    periodeNotation: number;
                }[];
                NeComptabiliserQueEvalsAnneeScoDsValidAuto: boolean;
                NomEtablissement: string;
                NomEtablissementConnexion: string;
                PlaceDemiJourneeAbsence: number;
                PlacesParHeure: number;
                PlacesParJour: number;
                Police: string;
                PremierLundi: {
                    V: string;
                    _T: 7;
                };
                PremiereDate: {
                    V: string;
                    _T: 7;
                };
                PremiereHeure: {
                    V: string;
                    _T: 7;
                };
                SansValidationNivIntermediairesDsValidAuto: boolean;
                TailleMaxAppreciation: number[];
                TaillePolice: number;
                UrlAide: {
                    V: string;
                    _T: 23;
                };
                activationDemiPension: boolean;
                afficherSemainesCalendaires: 0 | 1;
                afficherSequences: boolean;
                avecForum: boolean;
                couleurActiviteLangagiere: string;
                dateDebutPremierCycle: {
                    V: string;
                    _T: 7;
                };
                debutDemiPension: number;
                estHebergeEnFrance: boolean;
                finDemiPension: number;
                genresRenduTAFValable: {
                    V: string;
                    _T: 26;
                };
                grillesEDTEnCycle: number;
                joursOuvresParCycle: number;
                langID: number;
                langue: string;
                lienMentions: string;
                listeAnnotationsAutorisees: {
                    V: string;
                    _T: 26;
                };
                listeJoursFeries: {
                    V: {
                        L: string;
                        N: string;
                        dateDebut: {
                            V: string;
                            _T: 7;
                        };
                        dateFin: {
                            V: string;
                            _T: 7;
                        };
                    }[];
                    _T: 24;
                };
                listeLangues: {
                    V: {
                        description: string;
                        langID: number;
                    }[];
                    _T: 24;
                };
                logo: {
                    V: number;
                    _T: 25;
                };
                maskTelephone: string;
                maxBaremeQuestionQCM: number;
                maxECTS: number;
                maxNbPointQCM: number;
                millesime: string;
                minBaremeQuestionQCM: number;
                nomCookieAppli: string;
                numeroPremiereSemaine: number;
                premierJourSemaine: number;
                recreations: {
                    V: unknown[];
                    _T: 24;
                };
                sequences: string[];
                setOfJoursCycleOuvre: {
                    V: string;
                    _T: 26;
                };
                tailleCommentaireDevoir: number;
                tailleLibelleElementGrilleCompetence: number;
                tailleMaxEnregistrementAudioRenduTAF: number;
                urlAccesTwitter: {
                    V: string;
                    _T: 23;
                };
                urlAccesVideos: {
                    V: string;
                    _T: 23;
                };
                urlCanope: {
                    V: string;
                    _T: 23;
                };
                urlFAQEnregistrementDoubleAuth: {
                    V: string;
                    _T: 23;
                };
                urlSiteIndexEducation: {
                    V: string;
                    _T: 23;
                };
                urlSiteInfosHebergement: {
                    V: string;
                    _T: 23;
                };
                version: string;
                versionPN: string;
            };
            Nom: string;
            Theme: number;
            URLEspace: string;
            avecMembre: boolean;
            genreImageConnexion: number;
            identifiantNav: string;
            labelLienProduit: string;
            listePolices: {
                V: {
                    L: string;
                }[];
                _T: 24;
            };
            logoProduitCss: string;
            mentionsPagesPubliques: {
                lien: {
                    V: string;
                    _T: 21;
                };
            };
            pourNouvelleCaledonie: boolean;
            urlImageConnexion: string;
        }
        • DateServeurHttp: {
              V: string;
              _T: 7;
          }

          Time on the server when the request was made.

          • V: string

            In the following format : DD/MM/YYYY HH:mm:ss

          • _T: 7
        • General: {
              ActivationMessagerieEntreParents: boolean;
              AfficherAbbreviationNiveauDAcquisition: boolean;
              AnneeScolaire: string;
              AvecChoixConnexion: boolean;
              AvecElevesRattaches: boolean;
              AvecEvaluationHistorique: boolean;
              AvecGestionNiveauxCECRL: boolean;
              AvecHeuresPleinesApresMidi: boolean;
              AvecRecuperationInfosConnexion: boolean;
              BaremeNotation: {
                  V: string;
                  _T: 10;
              };
              DemiJourneesOuvrees: {
                  V: string;
                  _T: 26;
              }[];
              DerniereDate: {
                  V: string;
                  _T: 7;
              };
              DomainesFrequences: Record<PronoteApiDomainFrequencyType, PronoteValue<Element, string>>;
              DureeSequence: number;
              GestionParcoursExcellence: boolean;
              JourOuvre: {
                  V: string;
                  _T: 7;
              };
              JourOuvres: {
                  V: string;
                  _T: 11;
              };
              JoursDemiPension: {
                  V: string;
                  _T: 26;
              };
              LibellesFrequences: Record<PronoteApiDomainFrequencyType, string>;
              ListeHeures: {
                  V: {
                      A?: boolean;
                      G: number;
                      L: string;
                  }[];
                  _T: 24;
              };
              ListeHeuresFin: {
                  V: {
                      A?: boolean;
                      G: number;
                      L: string;
                  }[];
                  _T: 24;
              };
              ListeNiveauxDAcquisitions: {
                  V: {
                      G: number;
                      L: string;
                      N: string;
                      P: number;
                      abbreviation: string;
                      actifPour: {
                          V: string;
                          _T: 26;
                      };
                      couleur?: string;
                      estAcqui?: boolean;
                      estNotantPourTxReussite?: boolean;
                      listePositionnements: {
                          V: {
                              G: number;
                              L: string;
                              abbreviation: string;
                          }[];
                          _T: 24;
                      };
                      nombrePointsBrevet?: {
                          V: string;
                          _T: 10;
                      };
                      ponderation?: {
                          V: string;
                          _T: 10;
                      };
                      positionJauge: number;
                      raccourci: string;
                  }[];
                  _T: 24;
              };
              ListePeriodes: {
                  G: number;
                  L: string;
                  N: string;
                  dateDebut: {
                      V: string;
                      _T: 7;
                  };
                  dateFin: {
                      V: string;
                      _T: 7;
                  };
                  periodeNotation: number;
              }[];
              NeComptabiliserQueEvalsAnneeScoDsValidAuto: boolean;
              NomEtablissement: string;
              NomEtablissementConnexion: string;
              PlaceDemiJourneeAbsence: number;
              PlacesParHeure: number;
              PlacesParJour: number;
              Police: string;
              PremierLundi: {
                  V: string;
                  _T: 7;
              };
              PremiereDate: {
                  V: string;
                  _T: 7;
              };
              PremiereHeure: {
                  V: string;
                  _T: 7;
              };
              SansValidationNivIntermediairesDsValidAuto: boolean;
              TailleMaxAppreciation: number[];
              TaillePolice: number;
              UrlAide: {
                  V: string;
                  _T: 23;
              };
              activationDemiPension: boolean;
              afficherSemainesCalendaires: 0 | 1;
              afficherSequences: boolean;
              avecForum: boolean;
              couleurActiviteLangagiere: string;
              dateDebutPremierCycle: {
                  V: string;
                  _T: 7;
              };
              debutDemiPension: number;
              estHebergeEnFrance: boolean;
              finDemiPension: number;
              genresRenduTAFValable: {
                  V: string;
                  _T: 26;
              };
              grillesEDTEnCycle: number;
              joursOuvresParCycle: number;
              langID: number;
              langue: string;
              lienMentions: string;
              listeAnnotationsAutorisees: {
                  V: string;
                  _T: 26;
              };
              listeJoursFeries: {
                  V: {
                      L: string;
                      N: string;
                      dateDebut: {
                          V: string;
                          _T: 7;
                      };
                      dateFin: {
                          V: string;
                          _T: 7;
                      };
                  }[];
                  _T: 24;
              };
              listeLangues: {
                  V: {
                      description: string;
                      langID: number;
                  }[];
                  _T: 24;
              };
              logo: {
                  V: number;
                  _T: 25;
              };
              maskTelephone: string;
              maxBaremeQuestionQCM: number;
              maxECTS: number;
              maxNbPointQCM: number;
              millesime: string;
              minBaremeQuestionQCM: number;
              nomCookieAppli: string;
              numeroPremiereSemaine: number;
              premierJourSemaine: number;
              recreations: {
                  V: unknown[];
                  _T: 24;
              };
              sequences: string[];
              setOfJoursCycleOuvre: {
                  V: string;
                  _T: 26;
              };
              tailleCommentaireDevoir: number;
              tailleLibelleElementGrilleCompetence: number;
              tailleMaxEnregistrementAudioRenduTAF: number;
              urlAccesTwitter: {
                  V: string;
                  _T: 23;
              };
              urlAccesVideos: {
                  V: string;
                  _T: 23;
              };
              urlCanope: {
                  V: string;
                  _T: 23;
              };
              urlFAQEnregistrementDoubleAuth: {
                  V: string;
                  _T: 23;
              };
              urlSiteIndexEducation: {
                  V: string;
                  _T: 23;
              };
              urlSiteInfosHebergement: {
                  V: string;
                  _T: 23;
              };
              version: string;
              versionPN: string;
          }
          • ActivationMessagerieEntreParents: boolean
          • AfficherAbbreviationNiveauDAcquisition: boolean
          • AnneeScolaire: string
          • AvecChoixConnexion: boolean
          • AvecElevesRattaches: boolean
          • AvecEvaluationHistorique: boolean
          • AvecGestionNiveauxCECRL: boolean
          • AvecHeuresPleinesApresMidi: boolean
          • AvecRecuperationInfosConnexion: boolean
          • BaremeNotation: {
                V: string;
                _T: 10;
            }
            • V: string
            • _T: 10
          • DemiJourneesOuvrees: {
                V: string;
                _T: 26;
            }[]
          • DerniereDate: {
                V: string;
                _T: 7;
            }
            • V: string
            • _T: 7
          • DomainesFrequences: Record<PronoteApiDomainFrequencyType, PronoteValue<Element, string>>

            Example

            // A value can look like this :
            "[1..7,10..16,19..25,28..33,36..44]"
            // Can be read in Pawnote using the internal `parseSelection()` function.
          • DureeSequence: number
          • GestionParcoursExcellence: boolean
          • JourOuvre: {
                V: string;
                _T: 7;
            }
            • V: string
            • _T: 7
          • JourOuvres: {
                V: string;
                _T: 11;
            }
            • V: string
            • _T: 11
          • JoursDemiPension: {
                V: string;
                _T: 26;
            }
            • V: string
            • _T: 26
          • LibellesFrequences: Record<PronoteApiDomainFrequencyType, string>
          • ListeHeures: {
                V: {
                    A?: boolean;
                    G: number;
                    L: string;
                }[];
                _T: 24;
            }
            • V: {
                  A?: boolean;
                  G: number;
                  L: string;
              }[]
            • _T: 24
          • ListeHeuresFin: {
                V: {
                    A?: boolean;
                    G: number;
                    L: string;
                }[];
                _T: 24;
            }
            • V: {
                  A?: boolean;
                  G: number;
                  L: string;
              }[]
            • _T: 24
          • ListeNiveauxDAcquisitions: {
                V: {
                    G: number;
                    L: string;
                    N: string;
                    P: number;
                    abbreviation: string;
                    actifPour: {
                        V: string;
                        _T: 26;
                    };
                    couleur?: string;
                    estAcqui?: boolean;
                    estNotantPourTxReussite?: boolean;
                    listePositionnements: {
                        V: {
                            G: number;
                            L: string;
                            abbreviation: string;
                        }[];
                        _T: 24;
                    };
                    nombrePointsBrevet?: {
                        V: string;
                        _T: 10;
                    };
                    ponderation?: {
                        V: string;
                        _T: 10;
                    };
                    positionJauge: number;
                    raccourci: string;
                }[];
                _T: 24;
            }
            • V: {
                  G: number;
                  L: string;
                  N: string;
                  P: number;
                  abbreviation: string;
                  actifPour: {
                      V: string;
                      _T: 26;
                  };
                  couleur?: string;
                  estAcqui?: boolean;
                  estNotantPourTxReussite?: boolean;
                  listePositionnements: {
                      V: {
                          G: number;
                          L: string;
                          abbreviation: string;
                      }[];
                      _T: 24;
                  };
                  nombrePointsBrevet?: {
                      V: string;
                      _T: 10;
                  };
                  ponderation?: {
                      V: string;
                      _T: 10;
                  };
                  positionJauge: number;
                  raccourci: string;
              }[]
            • _T: 24
          • ListePeriodes: {
                G: number;
                L: string;
                N: string;
                dateDebut: {
                    V: string;
                    _T: 7;
                };
                dateFin: {
                    V: string;
                    _T: 7;
                };
                periodeNotation: number;
            }[]
          • NeComptabiliserQueEvalsAnneeScoDsValidAuto: boolean
          • NomEtablissement: string
          • NomEtablissementConnexion: string
          • PlaceDemiJourneeAbsence: number
          • PlacesParHeure: number
          • PlacesParJour: number
          • Police: string
          • PremierLundi: {
                V: string;
                _T: 7;
            }
            • V: string
            • _T: 7
          • PremiereDate: {
                V: string;
                _T: 7;
            }
            • V: string
            • _T: 7
          • PremiereHeure: {
                V: string;
                _T: 7;
            }

            Pronote's Epoch (?)

            • V: string
            • _T: 7
          • SansValidationNivIntermediairesDsValidAuto: boolean
          • TailleMaxAppreciation: number[]
          • TaillePolice: number
          • UrlAide: {
                V: string;
                _T: 23;
            }
            • V: string
            • _T: 23
          • activationDemiPension: boolean
          • afficherSemainesCalendaires: 0 | 1
          • afficherSequences: boolean
          • avecForum: boolean
          • couleurActiviteLangagiere: string
          • dateDebutPremierCycle: {
                V: string;
                _T: 7;
            }
            • V: string
            • _T: 7
          • debutDemiPension: number
          • estHebergeEnFrance: boolean
          • finDemiPension: number
          • genresRenduTAFValable: {
                V: string;
                _T: 26;
            }
            • V: string
            • _T: 26
          • grillesEDTEnCycle: number
          • joursOuvresParCycle: number
          • langID: number

            Current language ID.

          • langue: string

            Current language.

          • lienMentions: string
          • listeAnnotationsAutorisees: {
                V: string;
                _T: 26;
            }
            • V: string
            • _T: 26
          • listeJoursFeries: {
                V: {
                    L: string;
                    N: string;
                    dateDebut: {
                        V: string;
                        _T: 7;
                    };
                    dateFin: {
                        V: string;
                        _T: 7;
                    };
                }[];
                _T: 24;
            }
            • V: {
                  L: string;
                  N: string;
                  dateDebut: {
                      V: string;
                      _T: 7;
                  };
                  dateFin: {
                      V: string;
                      _T: 7;
                  };
              }[]
            • _T: 24
          • listeLangues: {
                V: {
                    description: string;
                    langID: number;
                }[];
                _T: 24;
            }

            List of available languages.

            • V: {
                  description: string;
                  langID: number;
              }[]
            • _T: 24
          • logo: {
                V: number;
                _T: 25;
            }
            • V: number
            • _T: 25
          • maskTelephone: string
          • maxBaremeQuestionQCM: number
          • maxECTS: number
          • maxNbPointQCM: number
          • millesime: string

            Year of the version.

          • minBaremeQuestionQCM: number
          • nomCookieAppli: string
          • numeroPremiereSemaine: number
          • premierJourSemaine: number
          • recreations: {
                V: unknown[];
                _T: 24;
            }
            • V: unknown[]
            • _T: 24
          • sequences: string[]
          • setOfJoursCycleOuvre: {
                V: string;
                _T: 26;
            }
            • V: string
            • _T: 26
          • tailleCommentaireDevoir: number
          • tailleLibelleElementGrilleCompetence: number
          • tailleMaxEnregistrementAudioRenduTAF: number
          • urlAccesTwitter: {
                V: string;
                _T: 23;
            }
            • V: string
            • _T: 23
          • urlAccesVideos: {
                V: string;
                _T: 23;
            }
            • V: string
            • _T: 23
          • urlCanope: {
                V: string;
                _T: 23;
            }
            • V: string
            • _T: 23
          • urlFAQEnregistrementDoubleAuth: {
                V: string;
                _T: 23;
            }
            • V: string
            • _T: 23
          • urlSiteIndexEducation: {
                V: string;
                _T: 23;
            }
            • V: string
            • _T: 23
          • urlSiteInfosHebergement: {
                V: string;
                _T: 23;
            }
            • V: string
            • _T: 23
          • version: string

            Complete version with name of the app.

          • versionPN: string

            Pronote version.

        • Nom: string

          Content of the header in instance page.

        • Theme: number
        • URLEspace: string

          Path for the same instance page but on desktop.

        • avecMembre: boolean
        • genreImageConnexion: number
        • identifiantNav: string
        • labelLienProduit: string
        • listePolices: {
              V: {
                  L: string;
              }[];
              _T: 24;
          }

          Array of available fonts... why the hell they need this ?

          • V: {
                L: string;
            }[]
          • _T: 24
        • logoProduitCss: string
        • mentionsPagesPubliques: {
              lien: {
                  V: string;
                  _T: 21;
              };
          }
          • lien: {
                V: string;
                _T: 21;
            }
            • V: string
            • _T: 21
        • pourNouvelleCaledonie: boolean
        • urlImageConnexion: string
      • nom: Informations

    Returns Pronote

Properties

#authorizations: Authorizations
#weekFrequencies: (null | {
    name: string;
    type: PronoteApiDomainFrequencyType;
})[]
accountTypeID: PronoteApiAccountId

ID of this account type in the Pronote API.

Custom fetcher to call the API with another API than fetch.

firstDate: Date

First day of the entire year.

firstMonday: Date

First day of the entire timetable. Used to get week numbers relative to this date.

holidays: Holiday[]
isDelegate: boolean
isDemo: boolean

Whether the Pronote instance you're connected to is a demonstration server or not.

authenticateToken won't work against them since next-time tokens aren't saved, even though it's able to generate them.

isMemberCA: boolean
lastDate: Date

Last day of the entire year. Used to get week numbers relative to this date.

loginInformations: {
    _Signature_: {
        ModeExclusif: boolean;
    };
    donnees: {
        DateServeurHttp: {
            V: string;
            _T: 7;
        };
        General: {
            ActivationMessagerieEntreParents: boolean;
            AfficherAbbreviationNiveauDAcquisition: boolean;
            AnneeScolaire: string;
            AvecChoixConnexion: boolean;
            AvecElevesRattaches: boolean;
            AvecEvaluationHistorique: boolean;
            AvecGestionNiveauxCECRL: boolean;
            AvecHeuresPleinesApresMidi: boolean;
            AvecRecuperationInfosConnexion: boolean;
            BaremeNotation: {
                V: string;
                _T: 10;
            };
            DemiJourneesOuvrees: {
                V: string;
                _T: 26;
            }[];
            DerniereDate: {
                V: string;
                _T: 7;
            };
            DomainesFrequences: Record<PronoteApiDomainFrequencyType, PronoteValue<Element, string>>;
            DureeSequence: number;
            GestionParcoursExcellence: boolean;
            JourOuvre: {
                V: string;
                _T: 7;
            };
            JourOuvres: {
                V: string;
                _T: 11;
            };
            JoursDemiPension: {
                V: string;
                _T: 26;
            };
            LibellesFrequences: Record<PronoteApiDomainFrequencyType, string>;
            ListeHeures: {
                V: {
                    A?: boolean;
                    G: number;
                    L: string;
                }[];
                _T: 24;
            };
            ListeHeuresFin: {
                V: {
                    A?: boolean;
                    G: number;
                    L: string;
                }[];
                _T: 24;
            };
            ListeNiveauxDAcquisitions: {
                V: {
                    G: number;
                    L: string;
                    N: string;
                    P: number;
                    abbreviation: string;
                    actifPour: {
                        V: string;
                        _T: 26;
                    };
                    couleur?: string;
                    estAcqui?: boolean;
                    estNotantPourTxReussite?: boolean;
                    listePositionnements: {
                        V: {
                            G: number;
                            L: string;
                            abbreviation: string;
                        }[];
                        _T: 24;
                    };
                    nombrePointsBrevet?: {
                        V: string;
                        _T: 10;
                    };
                    ponderation?: {
                        V: string;
                        _T: 10;
                    };
                    positionJauge: number;
                    raccourci: string;
                }[];
                _T: 24;
            };
            ListePeriodes: {
                G: number;
                L: string;
                N: string;
                dateDebut: {
                    V: string;
                    _T: 7;
                };
                dateFin: {
                    V: string;
                    _T: 7;
                };
                periodeNotation: number;
            }[];
            NeComptabiliserQueEvalsAnneeScoDsValidAuto: boolean;
            NomEtablissement: string;
            NomEtablissementConnexion: string;
            PlaceDemiJourneeAbsence: number;
            PlacesParHeure: number;
            PlacesParJour: number;
            Police: string;
            PremierLundi: {
                V: string;
                _T: 7;
            };
            PremiereDate: {
                V: string;
                _T: 7;
            };
            PremiereHeure: {
                V: string;
                _T: 7;
            };
            SansValidationNivIntermediairesDsValidAuto: boolean;
            TailleMaxAppreciation: number[];
            TaillePolice: number;
            UrlAide: {
                V: string;
                _T: 23;
            };
            activationDemiPension: boolean;
            afficherSemainesCalendaires: 0 | 1;
            afficherSequences: boolean;
            avecForum: boolean;
            couleurActiviteLangagiere: string;
            dateDebutPremierCycle: {
                V: string;
                _T: 7;
            };
            debutDemiPension: number;
            estHebergeEnFrance: boolean;
            finDemiPension: number;
            genresRenduTAFValable: {
                V: string;
                _T: 26;
            };
            grillesEDTEnCycle: number;
            joursOuvresParCycle: number;
            langID: number;
            langue: string;
            lienMentions: string;
            listeAnnotationsAutorisees: {
                V: string;
                _T: 26;
            };
            listeJoursFeries: {
                V: {
                    L: string;
                    N: string;
                    dateDebut: {
                        V: string;
                        _T: 7;
                    };
                    dateFin: {
                        V: string;
                        _T: 7;
                    };
                }[];
                _T: 24;
            };
            listeLangues: {
                V: {
                    description: string;
                    langID: number;
                }[];
                _T: 24;
            };
            logo: {
                V: number;
                _T: 25;
            };
            maskTelephone: string;
            maxBaremeQuestionQCM: number;
            maxECTS: number;
            maxNbPointQCM: number;
            millesime: string;
            minBaremeQuestionQCM: number;
            nomCookieAppli: string;
            numeroPremiereSemaine: number;
            premierJourSemaine: number;
            recreations: {
                V: unknown[];
                _T: 24;
            };
            sequences: string[];
            setOfJoursCycleOuvre: {
                V: string;
                _T: 26;
            };
            tailleCommentaireDevoir: number;
            tailleLibelleElementGrilleCompetence: number;
            tailleMaxEnregistrementAudioRenduTAF: number;
            urlAccesTwitter: {
                V: string;
                _T: 23;
            };
            urlAccesVideos: {
                V: string;
                _T: 23;
            };
            urlCanope: {
                V: string;
                _T: 23;
            };
            urlFAQEnregistrementDoubleAuth: {
                V: string;
                _T: 23;
            };
            urlSiteIndexEducation: {
                V: string;
                _T: 23;
            };
            urlSiteInfosHebergement: {
                V: string;
                _T: 23;
            };
            version: string;
            versionPN: string;
        };
        Nom: string;
        Theme: number;
        URLEspace: string;
        avecMembre: boolean;
        genreImageConnexion: number;
        identifiantNav: string;
        labelLienProduit: string;
        listePolices: {
            V: {
                L: string;
            }[];
            _T: 24;
        };
        logoProduitCss: string;
        mentionsPagesPubliques: {
            lien: {
                V: string;
                _T: 21;
            };
        };
        pourNouvelleCaledonie: boolean;
        urlImageConnexion: string;
    };
    nom: Informations;
}

A whole informations from the first login request

Type declaration

  • _Signature_: {
        ModeExclusif: boolean;
    }
    • ModeExclusif: boolean
  • donnees: {
        DateServeurHttp: {
            V: string;
            _T: 7;
        };
        General: {
            ActivationMessagerieEntreParents: boolean;
            AfficherAbbreviationNiveauDAcquisition: boolean;
            AnneeScolaire: string;
            AvecChoixConnexion: boolean;
            AvecElevesRattaches: boolean;
            AvecEvaluationHistorique: boolean;
            AvecGestionNiveauxCECRL: boolean;
            AvecHeuresPleinesApresMidi: boolean;
            AvecRecuperationInfosConnexion: boolean;
            BaremeNotation: {
                V: string;
                _T: 10;
            };
            DemiJourneesOuvrees: {
                V: string;
                _T: 26;
            }[];
            DerniereDate: {
                V: string;
                _T: 7;
            };
            DomainesFrequences: Record<PronoteApiDomainFrequencyType, PronoteValue<Element, string>>;
            DureeSequence: number;
            GestionParcoursExcellence: boolean;
            JourOuvre: {
                V: string;
                _T: 7;
            };
            JourOuvres: {
                V: string;
                _T: 11;
            };
            JoursDemiPension: {
                V: string;
                _T: 26;
            };
            LibellesFrequences: Record<PronoteApiDomainFrequencyType, string>;
            ListeHeures: {
                V: {
                    A?: boolean;
                    G: number;
                    L: string;
                }[];
                _T: 24;
            };
            ListeHeuresFin: {
                V: {
                    A?: boolean;
                    G: number;
                    L: string;
                }[];
                _T: 24;
            };
            ListeNiveauxDAcquisitions: {
                V: {
                    G: number;
                    L: string;
                    N: string;
                    P: number;
                    abbreviation: string;
                    actifPour: {
                        V: string;
                        _T: 26;
                    };
                    couleur?: string;
                    estAcqui?: boolean;
                    estNotantPourTxReussite?: boolean;
                    listePositionnements: {
                        V: {
                            G: number;
                            L: string;
                            abbreviation: string;
                        }[];
                        _T: 24;
                    };
                    nombrePointsBrevet?: {
                        V: string;
                        _T: 10;
                    };
                    ponderation?: {
                        V: string;
                        _T: 10;
                    };
                    positionJauge: number;
                    raccourci: string;
                }[];
                _T: 24;
            };
            ListePeriodes: {
                G: number;
                L: string;
                N: string;
                dateDebut: {
                    V: string;
                    _T: 7;
                };
                dateFin: {
                    V: string;
                    _T: 7;
                };
                periodeNotation: number;
            }[];
            NeComptabiliserQueEvalsAnneeScoDsValidAuto: boolean;
            NomEtablissement: string;
            NomEtablissementConnexion: string;
            PlaceDemiJourneeAbsence: number;
            PlacesParHeure: number;
            PlacesParJour: number;
            Police: string;
            PremierLundi: {
                V: string;
                _T: 7;
            };
            PremiereDate: {
                V: string;
                _T: 7;
            };
            PremiereHeure: {
                V: string;
                _T: 7;
            };
            SansValidationNivIntermediairesDsValidAuto: boolean;
            TailleMaxAppreciation: number[];
            TaillePolice: number;
            UrlAide: {
                V: string;
                _T: 23;
            };
            activationDemiPension: boolean;
            afficherSemainesCalendaires: 0 | 1;
            afficherSequences: boolean;
            avecForum: boolean;
            couleurActiviteLangagiere: string;
            dateDebutPremierCycle: {
                V: string;
                _T: 7;
            };
            debutDemiPension: number;
            estHebergeEnFrance: boolean;
            finDemiPension: number;
            genresRenduTAFValable: {
                V: string;
                _T: 26;
            };
            grillesEDTEnCycle: number;
            joursOuvresParCycle: number;
            langID: number;
            langue: string;
            lienMentions: string;
            listeAnnotationsAutorisees: {
                V: string;
                _T: 26;
            };
            listeJoursFeries: {
                V: {
                    L: string;
                    N: string;
                    dateDebut: {
                        V: string;
                        _T: 7;
                    };
                    dateFin: {
                        V: string;
                        _T: 7;
                    };
                }[];
                _T: 24;
            };
            listeLangues: {
                V: {
                    description: string;
                    langID: number;
                }[];
                _T: 24;
            };
            logo: {
                V: number;
                _T: 25;
            };
            maskTelephone: string;
            maxBaremeQuestionQCM: number;
            maxECTS: number;
            maxNbPointQCM: number;
            millesime: string;
            minBaremeQuestionQCM: number;
            nomCookieAppli: string;
            numeroPremiereSemaine: number;
            premierJourSemaine: number;
            recreations: {
                V: unknown[];
                _T: 24;
            };
            sequences: string[];
            setOfJoursCycleOuvre: {
                V: string;
                _T: 26;
            };
            tailleCommentaireDevoir: number;
            tailleLibelleElementGrilleCompetence: number;
            tailleMaxEnregistrementAudioRenduTAF: number;
            urlAccesTwitter: {
                V: string;
                _T: 23;
            };
            urlAccesVideos: {
                V: string;
                _T: 23;
            };
            urlCanope: {
                V: string;
                _T: 23;
            };
            urlFAQEnregistrementDoubleAuth: {
                V: string;
                _T: 23;
            };
            urlSiteIndexEducation: {
                V: string;
                _T: 23;
            };
            urlSiteInfosHebergement: {
                V: string;
                _T: 23;
            };
            version: string;
            versionPN: string;
        };
        Nom: string;
        Theme: number;
        URLEspace: string;
        avecMembre: boolean;
        genreImageConnexion: number;
        identifiantNav: string;
        labelLienProduit: string;
        listePolices: {
            V: {
                L: string;
            }[];
            _T: 24;
        };
        logoProduitCss: string;
        mentionsPagesPubliques: {
            lien: {
                V: string;
                _T: 21;
            };
        };
        pourNouvelleCaledonie: boolean;
        urlImageConnexion: string;
    }
    • DateServeurHttp: {
          V: string;
          _T: 7;
      }

      Time on the server when the request was made.

      • V: string

        In the following format : DD/MM/YYYY HH:mm:ss

      • _T: 7
    • General: {
          ActivationMessagerieEntreParents: boolean;
          AfficherAbbreviationNiveauDAcquisition: boolean;
          AnneeScolaire: string;
          AvecChoixConnexion: boolean;
          AvecElevesRattaches: boolean;
          AvecEvaluationHistorique: boolean;
          AvecGestionNiveauxCECRL: boolean;
          AvecHeuresPleinesApresMidi: boolean;
          AvecRecuperationInfosConnexion: boolean;
          BaremeNotation: {
              V: string;
              _T: 10;
          };
          DemiJourneesOuvrees: {
              V: string;
              _T: 26;
          }[];
          DerniereDate: {
              V: string;
              _T: 7;
          };
          DomainesFrequences: Record<PronoteApiDomainFrequencyType, PronoteValue<Element, string>>;
          DureeSequence: number;
          GestionParcoursExcellence: boolean;
          JourOuvre: {
              V: string;
              _T: 7;
          };
          JourOuvres: {
              V: string;
              _T: 11;
          };
          JoursDemiPension: {
              V: string;
              _T: 26;
          };
          LibellesFrequences: Record<PronoteApiDomainFrequencyType, string>;
          ListeHeures: {
              V: {
                  A?: boolean;
                  G: number;
                  L: string;
              }[];
              _T: 24;
          };
          ListeHeuresFin: {
              V: {
                  A?: boolean;
                  G: number;
                  L: string;
              }[];
              _T: 24;
          };
          ListeNiveauxDAcquisitions: {
              V: {
                  G: number;
                  L: string;
                  N: string;
                  P: number;
                  abbreviation: string;
                  actifPour: {
                      V: string;
                      _T: 26;
                  };
                  couleur?: string;
                  estAcqui?: boolean;
                  estNotantPourTxReussite?: boolean;
                  listePositionnements: {
                      V: {
                          G: number;
                          L: string;
                          abbreviation: string;
                      }[];
                      _T: 24;
                  };
                  nombrePointsBrevet?: {
                      V: string;
                      _T: 10;
                  };
                  ponderation?: {
                      V: string;
                      _T: 10;
                  };
                  positionJauge: number;
                  raccourci: string;
              }[];
              _T: 24;
          };
          ListePeriodes: {
              G: number;
              L: string;
              N: string;
              dateDebut: {
                  V: string;
                  _T: 7;
              };
              dateFin: {
                  V: string;
                  _T: 7;
              };
              periodeNotation: number;
          }[];
          NeComptabiliserQueEvalsAnneeScoDsValidAuto: boolean;
          NomEtablissement: string;
          NomEtablissementConnexion: string;
          PlaceDemiJourneeAbsence: number;
          PlacesParHeure: number;
          PlacesParJour: number;
          Police: string;
          PremierLundi: {
              V: string;
              _T: 7;
          };
          PremiereDate: {
              V: string;
              _T: 7;
          };
          PremiereHeure: {
              V: string;
              _T: 7;
          };
          SansValidationNivIntermediairesDsValidAuto: boolean;
          TailleMaxAppreciation: number[];
          TaillePolice: number;
          UrlAide: {
              V: string;
              _T: 23;
          };
          activationDemiPension: boolean;
          afficherSemainesCalendaires: 0 | 1;
          afficherSequences: boolean;
          avecForum: boolean;
          couleurActiviteLangagiere: string;
          dateDebutPremierCycle: {
              V: string;
              _T: 7;
          };
          debutDemiPension: number;
          estHebergeEnFrance: boolean;
          finDemiPension: number;
          genresRenduTAFValable: {
              V: string;
              _T: 26;
          };
          grillesEDTEnCycle: number;
          joursOuvresParCycle: number;
          langID: number;
          langue: string;
          lienMentions: string;
          listeAnnotationsAutorisees: {
              V: string;
              _T: 26;
          };
          listeJoursFeries: {
              V: {
                  L: string;
                  N: string;
                  dateDebut: {
                      V: string;
                      _T: 7;
                  };
                  dateFin: {
                      V: string;
                      _T: 7;
                  };
              }[];
              _T: 24;
          };
          listeLangues: {
              V: {
                  description: string;
                  langID: number;
              }[];
              _T: 24;
          };
          logo: {
              V: number;
              _T: 25;
          };
          maskTelephone: string;
          maxBaremeQuestionQCM: number;
          maxECTS: number;
          maxNbPointQCM: number;
          millesime: string;
          minBaremeQuestionQCM: number;
          nomCookieAppli: string;
          numeroPremiereSemaine: number;
          premierJourSemaine: number;
          recreations: {
              V: unknown[];
              _T: 24;
          };
          sequences: string[];
          setOfJoursCycleOuvre: {
              V: string;
              _T: 26;
          };
          tailleCommentaireDevoir: number;
          tailleLibelleElementGrilleCompetence: number;
          tailleMaxEnregistrementAudioRenduTAF: number;
          urlAccesTwitter: {
              V: string;
              _T: 23;
          };
          urlAccesVideos: {
              V: string;
              _T: 23;
          };
          urlCanope: {
              V: string;
              _T: 23;
          };
          urlFAQEnregistrementDoubleAuth: {
              V: string;
              _T: 23;
          };
          urlSiteIndexEducation: {
              V: string;
              _T: 23;
          };
          urlSiteInfosHebergement: {
              V: string;
              _T: 23;
          };
          version: string;
          versionPN: string;
      }
      • ActivationMessagerieEntreParents: boolean
      • AfficherAbbreviationNiveauDAcquisition: boolean
      • AnneeScolaire: string
      • AvecChoixConnexion: boolean
      • AvecElevesRattaches: boolean
      • AvecEvaluationHistorique: boolean
      • AvecGestionNiveauxCECRL: boolean
      • AvecHeuresPleinesApresMidi: boolean
      • AvecRecuperationInfosConnexion: boolean
      • BaremeNotation: {
            V: string;
            _T: 10;
        }
        • V: string
        • _T: 10
      • DemiJourneesOuvrees: {
            V: string;
            _T: 26;
        }[]
      • DerniereDate: {
            V: string;
            _T: 7;
        }
        • V: string
        • _T: 7
      • DomainesFrequences: Record<PronoteApiDomainFrequencyType, PronoteValue<Element, string>>

        Example

        // A value can look like this :
        "[1..7,10..16,19..25,28..33,36..44]"
        // Can be read in Pawnote using the internal `parseSelection()` function.
      • DureeSequence: number
      • GestionParcoursExcellence: boolean
      • JourOuvre: {
            V: string;
            _T: 7;
        }
        • V: string
        • _T: 7
      • JourOuvres: {
            V: string;
            _T: 11;
        }
        • V: string
        • _T: 11
      • JoursDemiPension: {
            V: string;
            _T: 26;
        }
        • V: string
        • _T: 26
      • LibellesFrequences: Record<PronoteApiDomainFrequencyType, string>
      • ListeHeures: {
            V: {
                A?: boolean;
                G: number;
                L: string;
            }[];
            _T: 24;
        }
        • V: {
              A?: boolean;
              G: number;
              L: string;
          }[]
        • _T: 24
      • ListeHeuresFin: {
            V: {
                A?: boolean;
                G: number;
                L: string;
            }[];
            _T: 24;
        }
        • V: {
              A?: boolean;
              G: number;
              L: string;
          }[]
        • _T: 24
      • ListeNiveauxDAcquisitions: {
            V: {
                G: number;
                L: string;
                N: string;
                P: number;
                abbreviation: string;
                actifPour: {
                    V: string;
                    _T: 26;
                };
                couleur?: string;
                estAcqui?: boolean;
                estNotantPourTxReussite?: boolean;
                listePositionnements: {
                    V: {
                        G: number;
                        L: string;
                        abbreviation: string;
                    }[];
                    _T: 24;
                };
                nombrePointsBrevet?: {
                    V: string;
                    _T: 10;
                };
                ponderation?: {
                    V: string;
                    _T: 10;
                };
                positionJauge: number;
                raccourci: string;
            }[];
            _T: 24;
        }
        • V: {
              G: number;
              L: string;
              N: string;
              P: number;
              abbreviation: string;
              actifPour: {
                  V: string;
                  _T: 26;
              };
              couleur?: string;
              estAcqui?: boolean;
              estNotantPourTxReussite?: boolean;
              listePositionnements: {
                  V: {
                      G: number;
                      L: string;
                      abbreviation: string;
                  }[];
                  _T: 24;
              };
              nombrePointsBrevet?: {
                  V: string;
                  _T: 10;
              };
              ponderation?: {
                  V: string;
                  _T: 10;
              };
              positionJauge: number;
              raccourci: string;
          }[]
        • _T: 24
      • ListePeriodes: {
            G: number;
            L: string;
            N: string;
            dateDebut: {
                V: string;
                _T: 7;
            };
            dateFin: {
                V: string;
                _T: 7;
            };
            periodeNotation: number;
        }[]
      • NeComptabiliserQueEvalsAnneeScoDsValidAuto: boolean
      • NomEtablissement: string
      • NomEtablissementConnexion: string
      • PlaceDemiJourneeAbsence: number
      • PlacesParHeure: number
      • PlacesParJour: number
      • Police: string
      • PremierLundi: {
            V: string;
            _T: 7;
        }
        • V: string
        • _T: 7
      • PremiereDate: {
            V: string;
            _T: 7;
        }
        • V: string
        • _T: 7
      • PremiereHeure: {
            V: string;
            _T: 7;
        }

        Pronote's Epoch (?)

        • V: string
        • _T: 7
      • SansValidationNivIntermediairesDsValidAuto: boolean
      • TailleMaxAppreciation: number[]
      • TaillePolice: number
      • UrlAide: {
            V: string;
            _T: 23;
        }
        • V: string
        • _T: 23
      • activationDemiPension: boolean
      • afficherSemainesCalendaires: 0 | 1
      • afficherSequences: boolean
      • avecForum: boolean
      • couleurActiviteLangagiere: string
      • dateDebutPremierCycle: {
            V: string;
            _T: 7;
        }
        • V: string
        • _T: 7
      • debutDemiPension: number
      • estHebergeEnFrance: boolean
      • finDemiPension: number
      • genresRenduTAFValable: {
            V: string;
            _T: 26;
        }
        • V: string
        • _T: 26
      • grillesEDTEnCycle: number
      • joursOuvresParCycle: number
      • langID: number

        Current language ID.

      • langue: string

        Current language.

      • lienMentions: string
      • listeAnnotationsAutorisees: {
            V: string;
            _T: 26;
        }
        • V: string
        • _T: 26
      • listeJoursFeries: {
            V: {
                L: string;
                N: string;
                dateDebut: {
                    V: string;
                    _T: 7;
                };
                dateFin: {
                    V: string;
                    _T: 7;
                };
            }[];
            _T: 24;
        }
        • V: {
              L: string;
              N: string;
              dateDebut: {
                  V: string;
                  _T: 7;
              };
              dateFin: {
                  V: string;
                  _T: 7;
              };
          }[]
        • _T: 24
      • listeLangues: {
            V: {
                description: string;
                langID: number;
            }[];
            _T: 24;
        }

        List of available languages.

        • V: {
              description: string;
              langID: number;
          }[]
        • _T: 24
      • logo: {
            V: number;
            _T: 25;
        }
        • V: number
        • _T: 25
      • maskTelephone: string
      • maxBaremeQuestionQCM: number
      • maxECTS: number
      • maxNbPointQCM: number
      • millesime: string

        Year of the version.

      • minBaremeQuestionQCM: number
      • nomCookieAppli: string
      • numeroPremiereSemaine: number
      • premierJourSemaine: number
      • recreations: {
            V: unknown[];
            _T: 24;
        }
        • V: unknown[]
        • _T: 24
      • sequences: string[]
      • setOfJoursCycleOuvre: {
            V: string;
            _T: 26;
        }
        • V: string
        • _T: 26
      • tailleCommentaireDevoir: number
      • tailleLibelleElementGrilleCompetence: number
      • tailleMaxEnregistrementAudioRenduTAF: number
      • urlAccesTwitter: {
            V: string;
            _T: 23;
        }
        • V: string
        • _T: 23
      • urlAccesVideos: {
            V: string;
            _T: 23;
        }
        • V: string
        • _T: 23
      • urlCanope: {
            V: string;
            _T: 23;
        }
        • V: string
        • _T: 23
      • urlFAQEnregistrementDoubleAuth: {
            V: string;
            _T: 23;
        }
        • V: string
        • _T: 23
      • urlSiteIndexEducation: {
            V: string;
            _T: 23;
        }
        • V: string
        • _T: 23
      • urlSiteInfosHebergement: {
            V: string;
            _T: 23;
        }
        • V: string
        • _T: 23
      • version: string

        Complete version with name of the app.

      • versionPN: string

        Pronote version.

    • Nom: string

      Content of the header in instance page.

    • Theme: number
    • URLEspace: string

      Path for the same instance page but on desktop.

    • avecMembre: boolean
    • genreImageConnexion: number
    • identifiantNav: string
    • labelLienProduit: string
    • listePolices: {
          V: {
              L: string;
          }[];
          _T: 24;
      }

      Array of available fonts... why the hell they need this ?

      • V: {
            L: string;
        }[]
      • _T: 24
    • logoProduitCss: string
    • mentionsPagesPubliques: {
          lien: {
              V: string;
              _T: 21;
          };
      }
      • lien: {
            V: string;
            _T: 21;
        }
        • V: string
        • _T: 21
    • pourNouvelleCaledonie: boolean
    • urlImageConnexion: string
  • nom: Informations
nextOpenDate: Date

The next school opening day.

nextTimeToken: string

Acts as a replacement for the password. Whenever you need to authenticate, you should use this token from now on if you want to avoid entering your password again.

Note that this token is only valid for the deviceUUID you provided in the authentication options.

periods: Period[]

A list of year periods.

periodsByOnglet: Map<PronoteApiOnglets, OngletPeriods>
personalInformationCache?: StudentPersonalInformation

Since content inside of it can't change that often, we use a cache to prevent calling the API every time.

presenceRequestsInterval?: Timeout
pronoteRootURL: string

Root URL of the Pronote instance.

queue: default
schoolName: string

School name of the Pronote instance.

session: Session

Represent the user session.

sessionID: number

ID of the currently running session on Pronote.

studentClass: string

Example

"3A"
studentName: string

First name and family name of the logged in student.

studentProfilePictureURL?: string

An absolute URL giving the profile picture of the logged in student, if exists.

user: {
    autorisationKiosque: boolean;
    autorisations: {
        AvecDiscussion?: boolean;
        AvecDiscussionAvancee?: boolean;
        AvecDiscussionEleves?: boolean;
        AvecDiscussionParents?: boolean;
        AvecDiscussionPersonnels?: boolean;
        AvecDiscussionProfesseurs?: boolean;
        autoriserImpression: boolean;
        compte: {
            avecInformationsPersonnelles: boolean;
            avecSaisieMotDePasse: boolean;
        };
        consulterDonneesAdministrativesAutresEleves: boolean;
        cours: {
            domaineConsultationEDT: {
                V: string;
                _T: 8;
            };
            domaineModificationCours: {
                V: string;
                _T: 8;
            };
            masquerPartiesDeClasse: boolean;
        };
        discussionInterdit?: boolean;
        incidents: unknown;
        intendance: unknown;
        services: unknown;
        tailleMaxDocJointEtablissement: number;
        tailleMaxRenduTafEleve: number;
    };
    autorisationsSession: {
        fonctionnalites: {
            attestationEtendue: boolean;
            gestionTwitter: boolean;
        };
    };
    listeInformationsEtablissements: {
        V: {
            Coordonnees: {
                Adresse1: SVGStringList;
                Adresse2: string;
                CodePostal: string;
                LibellePostal: string;
                LibelleVille: string;
                Pays: string;
                Province: string;
                SiteInternet: string;
            };
            L: string;
            Logo: {
                V: number;
                _T: 25;
            };
            N: string;
            avecInformations: boolean;
        }[];
        _T: 24;
    };
    listeOnglets: {
        G: number;
        Onglet: {
            G: number;
        }[];
    }[];
    listeOngletsInvisibles: number[];
    listeOngletsNotification: number[];
    parametresUtilisateur: {
        Communication: {
            DiscussionNonLues: false;
        };
        EDT: {
            afficherCoursAnnules: boolean;
            axeInverseEDT: boolean;
            axeInversePlanningHebdo: boolean;
            axeInversePlanningJour: boolean;
            axeInversePlanningJour2: boolean;
            nbJours: number;
            nbJoursEDT: number;
            nbRessources: number;
            nbSequences: number;
        };
        theme: {
            theme: number;
        };
        version: number;
    };
    reglesSaisieMDP: {
        max: number;
        min: number;
        regles: {
            V: string;
            _T: 26;
        };
    };
    ressource: {
        Etablissement: {
            V: {
                L: string;
                N: string;
            };
            _T: 24;
        };
        G: PronoteApiUserResourceType;
        L: string;
        N: string;
        P: number;
        avecPhoto: boolean;
        classeDEleve: {
            L: string;
            N: string;
        };
        estDelegue?: boolean;
        estMembreCA?: boolean;
        listeClassesHistoriques: {
            V: {
                AvecFiliere: boolean;
                AvecNote: boolean;
                L: string;
                N: string;
            }[];
            _T: 24;
        };
        listeGroupes: {
            V: {
                L: string;
                N: string;
            }[];
            _T: 24;
        };
        listeOngletsPourPeriodes: {
            V: {
                G: PronoteApiOnglets;
                listePeriodes: {
                    T: 24;
                    V: {
                        A: boolean;
                        G: number;
                        GenreNotation: number;
                        L: string;
                        N: string;
                    }[];
                };
                periodeParDefaut?: {
                    V: {
                        L: string;
                        N: string;
                    };
                    _T: 24;
                };
            }[];
            _T: 24;
        };
        listeOngletsPourPiliers: {
            V: {
                G: 45;
                listePaliers: {
                    V: {
                        G: number;
                        L: string;
                        N: string;
                        listePiliers: {
                            V: {
                                G: number;
                                L: string;
                                N: string;
                                P: number;
                                Service?: (...)[];
                                estPersonnalise: boolean;
                                estPilierLVE: boolean;
                            };
                            _T: 24;
                        };
                    }[];
                    _T: 24;
                };
            };
            _T: 24;
        };
    };
    tabEtablissementsModeleGrille: unknown[];
}

The user data.

Type declaration

  • autorisationKiosque: boolean
  • autorisations: {
        AvecDiscussion?: boolean;
        AvecDiscussionAvancee?: boolean;
        AvecDiscussionEleves?: boolean;
        AvecDiscussionParents?: boolean;
        AvecDiscussionPersonnels?: boolean;
        AvecDiscussionProfesseurs?: boolean;
        autoriserImpression: boolean;
        compte: {
            avecInformationsPersonnelles: boolean;
            avecSaisieMotDePasse: boolean;
        };
        consulterDonneesAdministrativesAutresEleves: boolean;
        cours: {
            domaineConsultationEDT: {
                V: string;
                _T: 8;
            };
            domaineModificationCours: {
                V: string;
                _T: 8;
            };
            masquerPartiesDeClasse: boolean;
        };
        discussionInterdit?: boolean;
        incidents: unknown;
        intendance: unknown;
        services: unknown;
        tailleMaxDocJointEtablissement: number;
        tailleMaxRenduTafEleve: number;
    }

    Authorization for the current student.

    • Optional AvecDiscussion?: boolean

      Whether the user is allowed to read discussions or messages.

    • Optional AvecDiscussionAvancee?: boolean

      Whether the user is allowed to send HTML through discussions. Otherwise the API should send plain text : if not checked properly, an empty message will be sent.

    • Optional AvecDiscussionEleves?: boolean

      Is allowed to create discussions with students ?

      Available

      Teacher

    • Optional AvecDiscussionParents?: boolean

      Is allowed to create discussions with students' parents ?

      Available

      Teacher

    • Optional AvecDiscussionPersonnels?: boolean

      Is allowed to create discussions with staff ?

      Available

      Student | Teacher

    • Optional AvecDiscussionProfesseurs?: boolean

      Is allowed to create discussions with teachers ?

      Available

      Student | Teacher

    • autoriserImpression: boolean
    • compte: {
          avecInformationsPersonnelles: boolean;
          avecSaisieMotDePasse: boolean;
      }
      • avecInformationsPersonnelles: boolean
      • avecSaisieMotDePasse: boolean
    • consulterDonneesAdministrativesAutresEleves: boolean
    • cours: {
          domaineConsultationEDT: {
              V: string;
              _T: 8;
          };
          domaineModificationCours: {
              V: string;
              _T: 8;
          };
          masquerPartiesDeClasse: boolean;
      }
      • domaineConsultationEDT: {
            V: string;
            _T: 8;
        }
        • V: string
        • _T: 8
      • domaineModificationCours: {
            V: string;
            _T: 8;
        }
        • V: string
        • _T: 8
      • masquerPartiesDeClasse: boolean
    • Optional discussionInterdit?: boolean

      Whether the user is disallowed to create discussions or messages.

    • incidents: unknown
    • intendance: unknown
    • services: unknown
    • tailleMaxDocJointEtablissement: number
    • tailleMaxRenduTafEleve: number
  • autorisationsSession: {
        fonctionnalites: {
            attestationEtendue: boolean;
            gestionTwitter: boolean;
        };
    }
    • fonctionnalites: {
          attestationEtendue: boolean;
          gestionTwitter: boolean;
      }
      • attestationEtendue: boolean
      • gestionTwitter: boolean
  • listeInformationsEtablissements: {
        V: {
            Coordonnees: {
                Adresse1: SVGStringList;
                Adresse2: string;
                CodePostal: string;
                LibellePostal: string;
                LibelleVille: string;
                Pays: string;
                Province: string;
                SiteInternet: string;
            };
            L: string;
            Logo: {
                V: number;
                _T: 25;
            };
            N: string;
            avecInformations: boolean;
        }[];
        _T: 24;
    }

    Informations about school.

    • V: {
          Coordonnees: {
              Adresse1: SVGStringList;
              Adresse2: string;
              CodePostal: string;
              LibellePostal: string;
              LibelleVille: string;
              Pays: string;
              Province: string;
              SiteInternet: string;
          };
          L: string;
          Logo: {
              V: number;
              _T: 25;
          };
          N: string;
          avecInformations: boolean;
      }[]
    • _T: 24
  • listeOnglets: {
        G: number;
        Onglet: {
            G: number;
        }[];
    }[]
  • listeOngletsInvisibles: number[]
  • listeOngletsNotification: number[]
  • parametresUtilisateur: {
        Communication: {
            DiscussionNonLues: false;
        };
        EDT: {
            afficherCoursAnnules: boolean;
            axeInverseEDT: boolean;
            axeInversePlanningHebdo: boolean;
            axeInversePlanningJour: boolean;
            axeInversePlanningJour2: boolean;
            nbJours: number;
            nbJoursEDT: number;
            nbRessources: number;
            nbSequences: number;
        };
        theme: {
            theme: number;
        };
        version: number;
    }

    User settings.

    • Communication: {
          DiscussionNonLues: false;
      }
      • DiscussionNonLues: false
    • EDT: {
          afficherCoursAnnules: boolean;
          axeInverseEDT: boolean;
          axeInversePlanningHebdo: boolean;
          axeInversePlanningJour: boolean;
          axeInversePlanningJour2: boolean;
          nbJours: number;
          nbJoursEDT: number;
          nbRessources: number;
          nbSequences: number;
      }

      Settings for the timetable.

      • afficherCoursAnnules: boolean

        Show canceled classes.

      • axeInverseEDT: boolean

        Swap time and day position.

      • axeInversePlanningHebdo: boolean
      • axeInversePlanningJour: boolean
      • axeInversePlanningJour2: boolean
      • nbJours: number
      • nbJoursEDT: number
      • nbRessources: number
      • nbSequences: number
    • theme: {
          theme: number;
      }

      User's current theme.

      • theme: number
    • version: number
  • reglesSaisieMDP: {
        max: number;
        min: number;
        regles: {
            V: string;
            _T: 26;
        };
    }
    • max: number
    • min: number
    • regles: {
          V: string;
          _T: 26;
      }
      • V: string

        Array of numbers ?

      • _T: 26
  • ressource: {
        Etablissement: {
            V: {
                L: string;
                N: string;
            };
            _T: 24;
        };
        G: PronoteApiUserResourceType;
        L: string;
        N: string;
        P: number;
        avecPhoto: boolean;
        classeDEleve: {
            L: string;
            N: string;
        };
        estDelegue?: boolean;
        estMembreCA?: boolean;
        listeClassesHistoriques: {
            V: {
                AvecFiliere: boolean;
                AvecNote: boolean;
                L: string;
                N: string;
            }[];
            _T: 24;
        };
        listeGroupes: {
            V: {
                L: string;
                N: string;
            }[];
            _T: 24;
        };
        listeOngletsPourPeriodes: {
            V: {
                G: PronoteApiOnglets;
                listePeriodes: {
                    T: 24;
                    V: {
                        A: boolean;
                        G: number;
                        GenreNotation: number;
                        L: string;
                        N: string;
                    }[];
                };
                periodeParDefaut?: {
                    V: {
                        L: string;
                        N: string;
                    };
                    _T: 24;
                };
            }[];
            _T: 24;
        };
        listeOngletsPourPiliers: {
            V: {
                G: 45;
                listePaliers: {
                    V: {
                        G: number;
                        L: string;
                        N: string;
                        listePiliers: {
                            V: {
                                G: number;
                                L: string;
                                N: string;
                                P: number;
                                Service?: (...)[];
                                estPersonnalise: boolean;
                                estPilierLVE: boolean;
                            };
                            _T: 24;
                        };
                    }[];
                    _T: 24;
                };
            };
            _T: 24;
        };
    }
    • Etablissement: {
          V: {
              L: string;
              N: string;
          };
          _T: 24;
      }
      • V: {
            L: string;
            N: string;
        }
        • L: string

          School name.

        • N: string

          School ID.

      • _T: 24
    • G: PronoteApiUserResourceType
    • L: string

      Account name.

    • N: string

      Account ID.

    • P: number
    • avecPhoto: boolean

      Student have a profile picture.

    • classeDEleve: {
          L: string;
          N: string;
      }

      Class of the student.

      • L: string

        Class name.

      • N: string

        Class ID.

    • Optional estDelegue?: boolean
    • Optional estMembreCA?: boolean
    • listeClassesHistoriques: {
          V: {
              AvecFiliere: boolean;
              AvecNote: boolean;
              L: string;
              N: string;
          }[];
          _T: 24;
      }
      • V: {
            AvecFiliere: boolean;
            AvecNote: boolean;
            L: string;
            N: string;
        }[]
      • _T: 24
    • listeGroupes: {
          V: {
              L: string;
              N: string;
          }[];
          _T: 24;
      }

      List of student groups.

      • V: {
            L: string;
            N: string;
        }[]
      • _T: 24
    • listeOngletsPourPeriodes: {
          V: {
              G: PronoteApiOnglets;
              listePeriodes: {
                  T: 24;
                  V: {
                      A: boolean;
                      G: number;
                      GenreNotation: number;
                      L: string;
                      N: string;
                  }[];
              };
              periodeParDefaut?: {
                  V: {
                      L: string;
                      N: string;
                  };
                  _T: 24;
              };
          }[];
          _T: 24;
      }
      • V: {
            G: PronoteApiOnglets;
            listePeriodes: {
                T: 24;
                V: {
                    A: boolean;
                    G: number;
                    GenreNotation: number;
                    L: string;
                    N: string;
                }[];
            };
            periodeParDefaut?: {
                V: {
                    L: string;
                    N: string;
                };
                _T: 24;
            };
        }[]
      • _T: 24
    • listeOngletsPourPiliers: {
          V: {
              G: 45;
              listePaliers: {
                  V: {
                      G: number;
                      L: string;
                      N: string;
                      listePiliers: {
                          V: {
                              G: number;
                              L: string;
                              N: string;
                              P: number;
                              Service?: (...)[];
                              estPersonnalise: boolean;
                              estPilierLVE: boolean;
                          };
                          _T: 24;
                      };
                  }[];
                  _T: 24;
              };
          };
          _T: 24;
      }
      • V: {
            G: 45;
            listePaliers: {
                V: {
                    G: number;
                    L: string;
                    N: string;
                    listePiliers: {
                        V: {
                            G: number;
                            L: string;
                            N: string;
                            P: number;
                            Service?: (...)[];
                            estPersonnalise: boolean;
                            estPilierLVE: boolean;
                        };
                        _T: 24;
                    };
                }[];
                _T: 24;
            };
        }
        • G: 45
        • listePaliers: {
              V: {
                  G: number;
                  L: string;
                  N: string;
                  listePiliers: {
                      V: {
                          G: number;
                          L: string;
                          N: string;
                          P: number;
                          Service?: (...)[];
                          estPersonnalise: boolean;
                          estPilierLVE: boolean;
                      };
                      _T: 24;
                  };
              }[];
              _T: 24;
          }
          • V: {
                G: number;
                L: string;
                N: string;
                listePiliers: {
                    V: {
                        G: number;
                        L: string;
                        N: string;
                        P: number;
                        Service?: (...)[];
                        estPersonnalise: boolean;
                        estPilierLVE: boolean;
                    };
                    _T: 24;
                };
            }[]
          • _T: 24
      • _T: 24
  • tabEtablissementsModeleGrille: unknown[]
username: string

Username that SHOULD be used for any further authentication.

Accessors

Methods

  • Parameters

    • type: PronoteApiUserResourceType

    Returns void

  • Creates a discussion.

    Sadly, we can't get the ID of the created discussion or anything else related to it, you need to request the discussions list once again using getDiscussionsOverview().

    Parameters

    Returns Promise<void>

  • You shouldn't have to use this usually, but it's exported here in case of need to do some operations required.

    Returns {
        aes_iv: ByteStringBuffer;
        aes_key: ByteStringBuffer;
    }

    • aes_iv: ByteStringBuffer
    • aes_key: ByteStringBuffer
  • Parameters

    Returns Promise<StudentEvaluation[]>

  • Parameters

    • weekNumber: number

    Returns null | {
        name: string;
        type: PronoteApiDomainFrequencyType;
    }

  • Get grades overview for a specific period. Including student's grades with averages and the global averages.

    Parameters

    • period: Period = ...

      Period the grades overview will be from.

    Returns Promise<{
        averages: StudentAverage[];
        classAverage: undefined | number | PronoteApiGradeType;
        grades: StudentGrade[];
        overallAverage: undefined | number | PronoteApiGradeType;
    }>

    Remark

    Internally used in the Period class.

  • Parameters

    • lessonId: string

    Returns Promise<StudentLessonResource>

  • Parameters

    • partner: Partner

    Returns Promise<string>

  • Allows to get more information such as student's INE, email, phone and address.

    Parameters

    • forceUpdate: boolean = false

      Forces the API request, even if a cache for this request was made.

    Returns Promise<StudentPersonalInformation>

  • Returns a list of possible recipients when creating a discussion.

    This step is required before creating a discussion. It allows to know who can be the recipient of the discussion.

    Parameters

    • type: PronoteApiUserResourceType

    Returns Promise<DiscussionCreationRecipient[]>

  • Parameters

    • from: Date
    • Optional to: Date

    Returns Promise<{
        lessons: StudentLessonResource[];
    }>

  • Parameters

    • weekNumber: number

    Returns Promise<{
        lessons: StudentLessonResource[];
    }>

  • Mark a discussion as read.

    Parameters

    Returns Promise<void>

    Remark

    Shortcut for getMessagesFromDiscussion but here we don't return anything.

  • Parameters

    • homeworkID: string
    • done: boolean

    Returns Promise<void>

  • Updates the status of a news item. Could be a read, or answer to a survey.

    Should only be used internally, but if you know what you're doing, you can use it.

    Parameters

    • information: {
          id: string;
          public: PronoteApiNewsPublicSelf;
          title: string;
      }
      • id: string
      • public: PronoteApiNewsPublicSelf
      • title: string
    • answers: StudentNewsItemQuestion[]
    • extra: {
          delete: boolean;
          markAsRead: boolean;
          onlyMarkAsRead: boolean;
      } = ...
      • delete: boolean
      • markAsRead: boolean
      • onlyMarkAsRead: boolean

    Returns Promise<undefined>

  • Parameters

    • payload: ApiUserDiscussionAvailableCommands

    Returns Promise<void>

  • Parameters

    • homeworkID: string

    Returns Promise<void>

  • Parameters

    • replyMessageID: string
    • content: string
    • button: PronoteApiMessagesButtonType
    • includeParentsAndStudents: boolean = false

    Returns Promise<void>

  • Parameters

    • interval: number = ...

      Custom interval (in ms) for Presence requests. Defaults to 2 minutes: same value as from Pronote.

    Returns void

  • Parameters

    • homeworkID: string
    • file: PawnoteSupportedFormDataFile
    • fileName: string

    Returns Promise<void>