church_of_jesus_christ_api.church_of_jesus_christ_api package

Submodules

church_of_jesus_christ_api.church_of_jesus_christ_api.church_of_jesus_christ_api module

Module contents

The module that implements ChurchOfJesusChristAPI. This module allows the user to get data from churchofjesuschrist.org.

class church_of_jesus_christ_api.church_of_jesus_christ_api.ChurchOfJesusChristAPI(username: str, password: str, debug_mode: bool = False)

Bases: object

A class used to interact with features found on churchofjesuschrist.org, such as getting member data, calling information, reports, etc.

download_patriarchal_blessing(filename: str = 'patriarchal_blessing.pdf') → None

Downloads user’s patriarchal blessing (if available online) and saves it to a file with the given name

Parameters

filenamestr

The name of the file in which to save the PDF of the patriarchal blessing

get_action_and_interviews(unit: int = None) → JSONType

Returns the unit action and interview list

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    type: str,
    key: str,
    title: str,
    description: str,
    list: [
      {
        name: str,
        spokenName: str,
        nameOrder: int,
        birthDate: str,
        birthDateSort: str,
        birthDaySort: str,
        birthDayFormatted: str,
        birthDateFormatted: str,
        gender: str,
        genderCode: int,
        mrn: NoneType,
        id: int,
        email: NoneType,
        householdEmail: NoneType,
        phone: str,
        householdPhone: str,
        unitNumber: int,
        unitName: str,
        priesthood: NoneType,
        priesthoodCode: NoneType,
        priesthoodType: NoneType,
        age: int,
        actualAge: int,
        actualAgeInMonths: int,
        genderLabelShort: str,
        visible: NoneType,
        nonMember: bool,
        outOfUnitMember: bool,
        notAccountable: bool,
        address: str,
        status: str,
        confirmationDate: NoneType,
        confirmationDateFormatted: NoneType,
        action: str,
        ailActionType: str,
        calling: NoneType,
        interviewDate: NoneType,
        interviewComplete: bool,
        sustainedDate: NoneType,
        accountable: bool,
        formattedMrn: NoneType,
        setApart: bool
      }
    ],
    tab: str
  }
]
get_birthdays(unit: int = None) → JSONType

Returns the unit birthday list

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    birthdays: [
      {
        name: str,
        spokenName: str,
        nameOrder: NoneType,
        birthDate: str,
        birthDateSort: str,
        birthDaySort: str,
        birthDayFormatted: str,
        birthDateFormatted: str,
        gender: str,
        genderCode: int,
        mrn: NoneType,
        id: int,
        email: NoneType,
        householdEmail: NoneType,
        phone: NoneType,
        householdPhone: NoneType,
        unitNumber: int,
        unitName: str,
        priesthood: NoneType,
        priesthoodCode: NoneType,
        priesthoodType: NoneType,
        age: NoneType,
        actualAge: NoneType,
        actualAgeInMonths: NoneType,
        genderLabelShort: str,
        visible: NoneType,
        nonMember: bool,
        outOfUnitMember: bool,
        notAccountable: bool,
        address: str,
        monthInteger: int,
        dayInteger: int,
        birthDayAge: NoneType,
        displayBirthdate: str,
        sustainedDate: NoneType,
        accountable: bool,
        formattedMrn: NoneType,
        setApart: bool
      }
    ]
  }
]
get_directory(unit: int = None) → JSONType

Returns the unit directory of households

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    uuid: str,
    unitNumber: int,
    displayName: str,
    familyName: str,
    phone: str,
    address: str,
    coordinates: {
      lat: float,
      long: float
    },
    verified: bool,
    members: [
      {
        uuid: str,
        individualId: int,
        householdUuid: str,
        head: bool,
        displayName: str,
        preferredName: str,
        givenName: str,
        familyName: str,
        phone: str,
        email: str,
        permissions: [
          str
        ]
      }
    ],
    permissions: [
      str
    ]
  }
]
get_donation_history(start_date: datetime.date = None, end_date: datetime.date = None) → JSONType

Returns the user’s church donation record

Parameters

start_date: datetime.date

The start date after which donations will be retrieved

end_date: datetime.date

The end date after which donations will no longer be retrieved

Returns

[
  {
    slipId: int,
    amount: int,
    date: str,
    countryId: int,
    busId: int,
    countryName: str,
    countryAbbreviation: str,
    source: str,
    sourceId: int,
    statusCode: str,
    participantName: str,
    currencyCode: str,
    si: bool,
    typeId: int,
    giftAid: bool,
    reusable: bool,
    slipLines: list,
    instrumentLines: list,
    owner: bool
  }
]
get_family_history_report(unit: int = None) → JSONType

Returns the unit family history report

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

{
  submitterTrendReport: {
    ytdDiffYearOverYear: int,
    trendData: [
      {
        year: int,
        months: [
          {
            month: int,
            submitters: int
          }
        ],
        label: str
      }
    ]
  },
  participationReports: {
    yearsInReport: [
      str
    ],
    percentageFourGen: [
      {
        monthEndDate: str,
        monthEndDisplayLabel: str,
        label: NoneType,
        title: NoneType,
        percent: float
      }
    ],
    loggingIn: [
      {
        monthEndDate: str,
        monthEndDisplayLabel: str,
        label: NoneType,
        title: NoneType,
        membersLoggingIn: int
      }
    ],
    addedAncestor: [
      {
        monthEndDate: str,
        monthEndDisplayLabel: str,
        label: NoneType,
        title: str,
        membersAddingAncestor: int
      }
    ],
    addedMemory: [
      {
        monthEndDate: str,
        monthEndDisplayLabel: str,
        label: NoneType,
        title: str,
        membersAddingMemory: int
      }
    ],
    membersWhoIndexed: [
      {
        monthEndDate: str,
        monthEndDisplayLabel: str,
        label: NoneType,
        title: str,
        membersIndexing: int
      }
    ]
  },
  ytdSubmittersReports: {
    monthEndDate: str,
    summary: {
      unitNumber: int,
      unitName: str,
      totalMembersSubmitting: int,
      totalPotentialSubmitters: int,
      percentSubmitting: float,
      adultSubmitters: int,
      totalAdults: int,
      youthSubmitters: int,
      totalYouth: int,
      convertSubmitters: int,
      totalConverts: int,
      ysaSubmitters: int,
      totalYsa: int,
      totalPercentage: str,
      adultPercentage: str,
      youthPercentage: str,
      convertPercentage: str,
      ysasPercentage: str
    },
    unitTotals: [
      {
        unitNumber: int,
        unitName: str,
        totalMembersSubmitting: int,
        totalPotentialSubmitters: int,
        percentSubmitting: float,
        adultSubmitters: int,
        totalAdults: int,
        youthSubmitters: int,
        totalYouth: int,
        convertSubmitters: int,
        totalConverts: int,
        ysaSubmitters: int,
        totalYsa: int,
        totalPercentage: str,
        adultPercentage: str,
        youthPercentage: str,
        convertPercentage: str,
        ysasPercentage: str
      }
    ]
  },
  reportDate: str,
  error: bool
}
get_key_indicators(unit: int = None) → JSONType

Returns the unit key indicators

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

{
  quarters: [
    str
  ],
  statistics: [
    {
      name: str,
      label: str,
      stats: [
        int
      ]
    }
  ]
}
get_member_callings_and_classes(member_id: int = None) → JSONType

Returns the callings and class assignments for the given member

Parameters

member_idint

ID of the member for which to retrieve information

Returns

{
  authorizedToEditCallings: bool,
  authorizedToEditClassAssignments: bool,
  subOrgsForPotentialNewCallings: list,
  individualCallings: [
    {
      unitNumber: int,
      unitName: str,
      subOrgTypeId: int,
      subOrgId: int,
      newSubOrgId: NoneType,
      organization: str,
      parentOrganization: NoneType,
      otherAllowedSubOrgs: [
        {
          unitNumber: int,
          subOrgId: int,
          orgTypeIds: [
            int
          ],
          defaultOrgTypeIds: [
            int
          ],
          name: str,
          children: list,
          userCanEditCallings: bool,
          isClass: bool,
          isRealClass: bool,
          isSplit: bool,
          classGroup: NoneType,
          parentName: NoneType,
          firstTypeId: int,
          isCombined: bool,
          gender: NoneType
        }
      ],
      positionTypeId: int,
      positionId: int,
      releasePositionIds: NoneType,
      position: str,
      positionDisplayOrder: int,
      memberId: int,
      mrn: NoneType,
      nameVerificationForMrn: NoneType,
      memberName: str,
      memberNameOrder: int,
      memberEmail: str,
      memberPhone: NoneType,
      memberUnitName: NoneType,
      memberUnitNumber: NoneType,
      setApartByPersonId: NoneType,
      setApartByPersonMrn: NoneType,
      setApartByPersonName: NoneType,
      ordainedByPersonId: NoneType,
      ordainedByPersonMrn: NoneType,
      ordainedByPersonName: NoneType,
      activeDate: str,
      expectedEndDate: NoneType,
      releaseDate: NoneType,
      setApartDate: str,
      ordainDate: NoneType,
      missionName: NoneType,
      missionUnitNumber: NoneType,
      missionaryHomeUnitName: NoneType,
      dualAuthUser: NoneType,
      dualAuthPass: NoneType,
      responsibilities: NoneType,
      contactWorkPhone: NoneType,
      contactMobilePhone: NoneType,
      contactEmail: str,
      contactMailingAddr: NoneType,
      autoReleasedPositionTypeIds: NoneType,
      editable: bool,
      contactInfoEditable: bool,
      allowMultiple: bool,
      custom: bool,
      setApart: bool,
      customNameChanged: bool,
      hidden: bool,
      allowNew: bool,
      userCanEdit: bool,
      userCanEditContactInfoOnly: bool,
      canHaveResponsibilities: bool,
      unpublished: bool,
      requiresSetApartDateAndPerson: bool,
      requiresBishopOrdination: bool,
      allowVacant: bool,
      requiresDualAuthorization: bool,
      pendingDelete: bool,
      hasContactInfo: bool,
      showUnitCard: bool,
      pendingCalling: bool,
      pendingDualAuth: bool,
      allowApprove: bool,
      previouslyOrdained: bool,
      userCannotEditPreviousOrdination: bool,
      approvalRequest: bool,
      sequence: int,
      errors: {},
      vacant: bool,
      positionTypeEnum: str
    }
  ],
  householdCallings: [
    {
      unitNumber: int,
      unitName: str,
      subOrgTypeId: int,
      subOrgId: int,
      newSubOrgId: NoneType,
      organization: str,
      parentOrganization: NoneType,
      otherAllowedSubOrgs: [
        {
          unitNumber: int,
          subOrgId: int,
          orgTypeIds: [
            int
          ],
          defaultOrgTypeIds: [
            int
          ],
          name: str,
          children: list,
          userCanEditCallings: bool,
          isClass: bool,
          isRealClass: bool,
          isSplit: bool,
          classGroup: str,
          parentName: str,
          firstTypeId: int,
          isCombined: bool,
          gender: str
        }
      ],
      positionTypeId: int,
      positionId: int,
      releasePositionIds: NoneType,
      position: str,
      positionDisplayOrder: int,
      memberId: int,
      mrn: NoneType,
      nameVerificationForMrn: NoneType,
      memberName: str,
      memberNameOrder: int,
      memberEmail: NoneType,
      memberPhone: NoneType,
      memberUnitName: NoneType,
      memberUnitNumber: NoneType,
      setApartByPersonId: NoneType,
      setApartByPersonMrn: NoneType,
      setApartByPersonName: NoneType,
      ordainedByPersonId: NoneType,
      ordainedByPersonMrn: NoneType,
      ordainedByPersonName: NoneType,
      activeDate: str,
      expectedEndDate: NoneType,
      releaseDate: NoneType,
      setApartDate: str,
      ordainDate: NoneType,
      missionName: NoneType,
      missionUnitNumber: NoneType,
      missionaryHomeUnitName: NoneType,
      dualAuthUser: NoneType,
      dualAuthPass: NoneType,
      responsibilities: NoneType,
      contactWorkPhone: NoneType,
      contactMobilePhone: NoneType,
      contactEmail: str,
      contactMailingAddr: NoneType,
      autoReleasedPositionTypeIds: NoneType,
      editable: bool,
      contactInfoEditable: bool,
      allowMultiple: bool,
      custom: bool,
      setApart: bool,
      customNameChanged: bool,
      hidden: bool,
      allowNew: bool,
      userCanEdit: bool,
      userCanEditContactInfoOnly: bool,
      canHaveResponsibilities: bool,
      unpublished: bool,
      requiresSetApartDateAndPerson: bool,
      requiresBishopOrdination: bool,
      allowVacant: bool,
      requiresDualAuthorization: bool,
      pendingDelete: bool,
      hasContactInfo: bool,
      showUnitCard: bool,
      pendingCalling: bool,
      pendingDualAuth: bool,
      allowApprove: bool,
      previouslyOrdained: bool,
      userCannotEditPreviousOrdination: bool,
      approvalRequest: bool,
      sequence: int,
      errors: {},
      vacant: bool,
      positionTypeEnum: str
    }
  ],
  classAssignments: [
    {
      group: str,
      classTypeId: int,
      organization: str,
      classId: int,
      className: str,
      defaultClass: bool,
      defaultClassTypeId: int,
      individualId: int,
      adultClass: bool
    }
  ]
}
get_member_list(unit: int = None) → JSONType

Returns the unit member list

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    nameFormats: {
      listPreferredLocal: str,
      givenPreferredLocal: str,
      familyPreferredLocal: str,
      listPreferred: NoneType,
      listOfficial: NoneType
    },
    uuid: str,
    nameOrder: int,
    age: NoneType,
    emails: [
      {
        email: str,
        ownerType: NoneType
      }
    ],
    phones: [
      {
        number: str,
        ownerType: NoneType
      }
    ],
    phoneNumber: str,
    priesthoodOffice: NoneType,
    membershipUnit: NoneType,
    legacyCmisId: int,
    sex: str,
    unitOrgsCombined: [
      str
    ],
    positions: NoneType,
    householdMember: {
      householdRole: str,
      household: {
        anchorPerson: {
          legacyCmisId: int,
          uuid: str
        },
        uuid: str,
        familyNameLocal: str,
        directoryPreferredLocal: str,
        address: {
          formattedLine1: str,
          formattedLine2: str,
          formattedLine3: NoneType,
          formattedLine4: NoneType,
          formatted1: NoneType,
          formatted2: NoneType,
          formatted3: NoneType,
          formatted4: NoneType,
          formattedAll: list,
          addressLines: [
            str
          ]
        },
        emails: NoneType,
        phones: [
          {
            number: str,
            ownerType: NoneType
          }
        ],
        unit: {
          parentUnit: NoneType,
          uuid: NoneType,
          unitNumber: int,
          nameLocal: str,
          unitType: NoneType,
          children: NoneType
        }
      },
      membershipUnitFlag: bool
    },
    member: bool,
    householdAnchorPersonUuid: str,
    isSpouse: bool,
    youthBasedOnAge: bool,
    isAdult: bool,
    houseHoldMemberNameForList: str,
    isOutOfUnitMember: bool,
    nameFamilyPreferredLocal: str,
    unitNumber: int,
    householdNameDirectoryLocal: str,
    convert: bool,
    householdNameFamilyLocal: str,
    householdRole: str,
    email: str,
    unitName: str,
    outOfUnitMember: bool,
    householdEmail: NoneType,
    formattedAddress: str,
    householdUuid: str,
    isProspectiveElder: bool,
    isSingleAdult: bool,
    isYoungSingleAdult: bool,
    priesthoodTeacherOrAbove: bool,
    isHead: bool,
    householdPhoneNumber: str,
    personUuid: str,
    nameListPreferredLocal: str,
    isMember: bool,
    nameGivenPreferredLocal: str,
    address: {
      formattedLine1: str,
      formattedLine2: str,
      formattedLine3: NoneType,
      formattedLine4: NoneType,
      formatted1: NoneType,
      formatted2: NoneType,
      formatted3: NoneType,
      formatted4: NoneType,
      formattedAll: list,
      addressLines: [
        str
      ]
    },
    birth: {
      date: {
        date: str,
        calc: str,
        display: str
      },
      monthDay: {
        date: str,
        calc: str,
        display: str
      }
    },
    personStatusFlags: {
      member: bool,
      convert: bool,
      adult: bool,
      singleAdult: bool,
      youngSingleAdult: bool,
      prospectiveElder: bool
    }
  }
]
get_member_service(member_id: int = None) → JSONType

Returns member’s service assignments

Parameters

member_idint

ID of the member for which to retrieve information

Returns

{
  outOfUnitMember: bool,
  individual: {
    errors: {},
    warnings: {},
    outOfUnit: bool,
    hasOutOfUnitRecord: bool,
    id: int,
    gender: str,
    notAccountable: bool,
    birthDate: str,
    birthDateDisplay: str,
    age: NoneType,
    actualAge: NoneType,
    actualAgeInMonths: NoneType,
    ageAsOfDec31: NoneType,
    ageAsOfDec31NextYear: NoneType,
    adultAgeOrMarried: bool,
    birthPlace: NoneType,
    birthCountry: NoneType,
    birthCountryId: NoneType,
    missionCountryId: NoneType,
    missionLanguageId: NoneType,
    missionCountry: NoneType,
    missionLanguage: NoneType,
    legalNameGroup: {
      formattedLocal: str,
      formattedLatin: str,
      name1: {
        family: str,
        given: str,
        suffix: NoneType,
        translitSource: bool,
        writingSystem: str,
        label: str,
        labelKey: NoneType
      },
      name2: NoneType,
      name3: NoneType,
      autoRomanize: bool
    },
    nameUpdateReason: NoneType,
    preferredNameGroup: {
      formattedLocal: str,
      formattedLatin: str,
      name1: {
        family: str,
        given: str,
        suffix: NoneType,
        translitSource: bool,
        writingSystem: str,
        label: str,
        labelKey: NoneType
      },
      name2: NoneType,
      name3: NoneType,
      autoRomanize: bool
    },
    maidenNameGroup: {
      formattedLocal: NoneType,
      formattedLatin: NoneType,
      name1: {
        family: NoneType,
        given: NoneType,
        suffix: NoneType,
        translitSource: bool,
        writingSystem: str,
        label: str,
        labelKey: NoneType
      },
      name2: NoneType,
      name3: NoneType,
      autoRomanize: bool
    },
    canHaveMaidenName: bool,
    email: str,
    householdEmail: str,
    phone: str,
    householdPhone: str,
    residentialAddress: {
      street1: str,
      street2: NoneType,
      city: str,
      district: NoneType,
      postalCode: str,
      state: int,
      country: int,
      formattedLines: [
        str
      ],
      standardized: NoneType,
      geocodeToUnits: bool,
      units: NoneType
    },
    mailingAddress: {
      street1: NoneType,
      street2: NoneType,
      city: NoneType,
      district: NoneType,
      postalCode: NoneType,
      state: NoneType,
      country: NoneType,
      formattedLines: NoneType,
      standardized: NoneType,
      geocodeToUnits: bool,
      units: NoneType
    },
    mailingSameAsResidential: bool,
    unitName: str,
    unitNumber: str,
    primaryUnitName: str,
    primaryUnitNumber: NoneType,
    moveDate: NoneType,
    moveDateDuration: NoneType,
    priorUnitName: NoneType,
    priorUnitNumber: NoneType,
    priorUnits: NoneType,
    mrn: NoneType,
    hohId: int,
    name: str,
    hohName: str,
    formattedHouseholdCoupleName: str,
    headInUnit: bool,
    priesthood: NoneType,
    priesthoodCode: NoneType,
    sealedToSpouse: NoneType,
    endowed: NoneType,
    spouseName: str,
    spouseId: int,
    spouseInUnit: bool,
    recommendStatus: NoneType,
    moveRestriction: bool,
    hqMoveRestriction: bool,
    moveRestrictionDate: NoneType,
    restorationOfBlessingsRequired: bool,
    confidentialEvents: NoneType,
    canHaveCalling: NoneType,
    canHaveHTAssignment: bool,
    canHaveVTAssignment: bool,
    head: bool,
    formattedMrn: NoneType
  },
  stakeOrDistrictUser: bool,
  individualName: str,
  unitLocaleData: {
    addressFields: [
      str
    ],
    name1WritingSystem: str,
    name2WritingSystem: NoneType,
    hasLatinWritingSystem: bool
  },
  household: {
    hohMrn: NoneType,
    familyNameGroup: {
      formattedLocal: str,
      formattedLatin: str,
      name1: {
        family: str,
        given: NoneType,
        suffix: NoneType,
        translitSource: bool,
        writingSystem: str,
        label: str,
        labelKey: NoneType
      },
      name2: NoneType,
      name3: NoneType,
      autoRomanize: bool
    },
    members: [
      {
        id: int,
        mrn: NoneType,
        pendingId: NoneType,
        linkedRecord: bool,
        member: bool,
        unknown: bool,
        deceased: bool,
        deathDate: NoneType,
        gender: str,
        name: str,
        preferredOrLegalName: str,
        spokenName: NoneType,
        maidenOrLegalName: str,
        listName: str,
        maidenName: NoneType,
        birthDate: str,
        displayBirthDate: str,
        age: NoneType,
        relationshipDisplay: str,
        relationship: str,
        inAuthorizedUnit: bool,
        inHousehold: bool,
        headOfHousehold: bool,
        unitNumber: int,
        nameGroup: NoneType,
        priesthood: NoneType,
        priesthoodType: NoneType,
        allPriesthoodOrdinations: NoneType,
        priesthoodCode: NoneType,
        noMrnInitiated: bool
      }
    ],
    errors: {}
  },
  family: {
    hohMrn: NoneType,
    children: list,
    marriage: {
      errors: {},
      warnings: {},
      authorizedToViewNonMemberSpouse: bool,
      marriageId: str,
      date: NoneType,
      place: NoneType,
      country: NoneType,
      countryId: NoneType,
      spouse: {
        id: int,
        mrn: NoneType,
        pendingId: NoneType,
        linkedRecord: bool,
        member: bool,
        unknown: bool,
        deceased: bool,
        deathDate: NoneType,
        gender: str,
        name: str,
        preferredOrLegalName: str,
        spokenName: NoneType,
        maidenOrLegalName: str,
        listName: str,
        maidenName: str,
        birthDate: str,
        displayBirthDate: str,
        age: NoneType,
        relationshipDisplay: str,
        relationship: str,
        inAuthorizedUnit: bool,
        inHousehold: bool,
        headOfHousehold: bool,
        unitNumber: int,
        nameGroup: NoneType,
        priesthood: NoneType,
        priesthoodType: NoneType,
        allPriesthoodOrdinations: NoneType,
        priesthoodCode: NoneType,
        noMrnInitiated: bool
      },
      memberStatus: NoneType,
      memberType: NoneType,
      spouseMember: bool,
      spouseDeceased: bool,
      spouseEditable: bool,
      nonMemberSpouseNameBirthdateNotEditable: bool,
      spouseUnitNumber: int,
      spouseMrn: NoneType,
      spouseId: int,
      sealingDate: NoneType,
      sealingTemple: NoneType,
      templeId: NoneType,
      restorationOfBlessingsRequired: bool,
      sealedToPriorSpouse: bool,
      terminationDate: NoneType,
      marriageTerminationCause: NoneType,
      mrn: str,
      individualId: int,
      marriageTerminated: bool,
      madeHeadOfHousehold: bool,
      updateName: NoneType,
      legalNameGroup: NoneType,
      preferredNameGroup: NoneType,
      spouseInDifferentWardBranch: bool,
      showTempleInfo: bool
    },
    parents: NoneType
  },
  authorizedToUpdateContactInfo: bool,
  authorizedToViewHTVT: bool,
  authorizedToViewReportBasic: bool,
  recommend: NoneType,
  ordinances: NoneType,
  canChangeMoveRestriction: bool,
  authorizedToViewRecord: bool,
  authorizedToUpdateRecord: bool,
  authorizedToEditMelchizedekPriesthood: bool,
  authorizedToPrintCertificates: bool,
  authorizedToPrintMelchizedekPriesthood: bool,
  authorizedToAddEndowment: bool,
  showNotEditEnabledMessage: bool,
  withinStewardship: bool,
  consentFormId: NoneType,
  consentFormMediaType: NoneType
}
get_members_with_callings(unit: int = None) → JSONType

Returns the unit list of members with callings

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    mrn: str,
    unitNumber: int,
    unitName: str,
    subOrgTypeId: int,
    subOrgId: int,
    customSubOrgName: NoneType,
    parentSubOrgId: int,
    positionTypeId: int,
    positionId: int,
    standardPosition: bool,
    position: str,
    displaySequence: int,
    activeCalender: str,
    activeDate: str,
    setApartCalender: NoneType,
    setApartDate: NoneType,
    leaderHomePhone: NoneType,
    leaderWorkPhone: NoneType,
    id: int,
    memberUnitNumber: int,
    memberUnitName: str,
    name: str,
    nameOrder: int,
    birthDate: str,
    birthDateSort: str,
    birthdDateDisplay: str,
    phone: str,
    age: NoneType,
    outOfUnit: bool,
    stake: bool,
    district: bool,
    organization: str,
    spokenName: str,
    gender: str,
    priesthood: NoneType,
    email: str,
    errors: {},
    subOrgType: str,
    sustainedDate: str,
    custom: bool,
    setApart: bool
  }
]
get_members_without_callings(unit: int = None) → JSONType

Returns the unit list of members without callings

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    name: str,
    spokenName: str,
    nameOrder: NoneType,
    birthDate: str,
    birthDateSort: str,
    birthDaySort: str,
    birthDayFormatted: str,
    birthDateFormatted: str,
    gender: str,
    genderCode: int,
    mrn: NoneType,
    id: int,
    email: str,
    householdEmail: NoneType,
    phone: str,
    householdPhone: str,
    unitNumber: int,
    unitName: str,
    priesthood: NoneType,
    priesthoodCode: NoneType,
    priesthoodType: NoneType,
    age: NoneType,
    actualAge: NoneType,
    actualAgeInMonths: NoneType,
    genderLabelShort: str,
    visible: NoneType,
    nonMember: bool,
    outOfUnitMember: bool,
    notAccountable: bool,
    sustainedDate: NoneType,
    formattedMrn: NoneType,
    setApart: bool,
    accountable: bool
  }
]
get_ministering(unit: int = None) → JSONType

Returns the unit ministering assignments

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

{
  individuals: [
    {
      personUuid: str,
      legacyCmisId: int,
      name: str,
      nameOrder: int,
      unitOrgTypeId: int,
      youthBasedOnAge: bool,
      companions: [
        {
          personUuid: str,
          legacyCmisId: int,
          name: str,
          nameOrder: int,
          youthBasedOnAge: bool
        }
      ],
      assignments: [
        {
          personUuid: str,
          legacyCmisId: int,
          name: str,
          nameOrder: int,
          youthBasedOnAge: bool
        }
      ]
    }
  ],
  households: [
    {
      headOfHouseholdUuid: str,
      headOfHouseholdCmisId: int,
      householdName: str,
      householdSortOrder: int,
      ministeringBrothers: list,
      ministeringSisters: list,
      unitNumber: int,
      unitName: str,
      hasReliefSocietyMember: bool
    }
  ]
}
get_missionary_indicators(unit: int = None) → JSONType

Returns the unit missionary indicators

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

{
  keyIndicators: [
    {
      id: int,
      name: str,
      description: str,
      calculationDescription: NoneType,
      actual: int,
      goal: int
    }
  ],
  reportStart: str,
  reportEnd: str
}
get_missionary_progress_record(unit: int = None) → JSONType

Returns the unit missionary progress record

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    fullName: str,
    status: int,
    statusName: str,
    gender: NoneType,
    age: str,
    address: str,
    phone: {
      mobile: NoneType,
      home: NoneType,
      work: NoneType,
      other: NoneType
    },
    email: {
      home: NoneType,
      work: NoneType,
      family: NoneType,
      other: NoneType
    },
    formattedBaptismDate: NoneType,
    fellowshippers: list,
    memberFellowshippers: list,
    otherFellowshippers: list,
    missionaries: {
      names: [
        str
      ],
      area_id: str
    },
    assignedMissionaries: [
      {
        name: str,
        spokenName: NoneType,
        nameOrder: NoneType,
        birthDate: NoneType,
        birthDateSort: NoneType,
        birthDaySort: NoneType,
        birthDayFormatted: NoneType,
        birthDateFormatted: str,
        gender: str,
        genderCode: int,
        mrn: NoneType,
        id: int,
        email: str,
        householdEmail: NoneType,
        phone: str,
        householdPhone: str,
        unitNumber: NoneType,
        unitName: NoneType,
        priesthood: NoneType,
        priesthoodCode: NoneType,
        priesthoodType: NoneType,
        age: NoneType,
        actualAge: NoneType,
        actualAgeInMonths: NoneType,
        genderLabelShort: str,
        visible: NoneType,
        nonMember: bool,
        outOfUnitMember: bool,
        notAccountable: bool,
        formattedMrn: NoneType,
        sustainedDate: NoneType,
        setApart: bool,
        accountable: bool
      }
    ],
    visits: list,
    lastVisit: int,
    formattedLastVisit: NoneType,
    lastSacramentAttendance: int,
    formattedLastSacramentAttendance: NoneType,
    last6Sundays: [
      {
        date: int,
        attended: bool,
        formattedDate: str
      }
    ],
    needs: NoneType,
    teachingRecord: NoneType,
    visitFilters: list,
    sacramentAttendanceFilters: list,
    member: NoneType,
    statusFilters: [
      str
    ],
    person_id: int,
    first_name: str,
    last_name: NoneType,
    cmis_id: NoneType,
    mem_taught: NoneType,
    baptism_date: int,
    baptism_goal_date: NoneType,
    confirmation_date: NoneType,
    sacrament_attendance: list
  }
]
get_moved_in(unit: int = None) → JSONType

Returns the unit list of recently moved in members

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    addressUnknown: bool,
    age: NoneType,
    moveDateOrder: int,
    nameOrder: int,
    id: int,
    householdPositionEnum: str,
    address: str,
    birthdate: str,
    birthdateCalc: str,
    genderLabelShort: str,
    householdUuid: str,
    householdPosition: str,
    moveDate: str,
    moveDateCalc: str,
    name: str,
    phone: str,
    priesthood: NoneType,
    priorUnitNumber: str,
    priorUnitName: str,
    unitName: str,
    gender: str,
    textAddress: str,
    locale: str
  }
]
get_moved_out(unit: int = None) → JSONType

Returns the unit list of recently moved out members

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    name: str,
    nameOrder: int,
    birthDate: str,
    moveDateOrder: int,
    moveDate: str,
    priorUnit: NoneType,
    nextUnitName: NoneType,
    nextUnitNumber: NoneType,
    addressUnknown: bool,
    deceased: bool
  }
]
get_new_members(unit: int = None) → JSONType

Returns the unit list of new members (recent converts)

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    age: int,
    nameOrder: int,
    id: int,
    address: NoneType,
    birthDateDisplay: str,
    birthDateCalc: str,
    confirmationDateDisplay: NoneType,
    confirmationDateCalc: NoneType,
    gender: str,
    genderLabelShort: str,
    householdUuid: NoneType,
    name: str,
    calling: NoneType,
    status: str,
    textAddress: NoneType,
    unitName: str,
    locale: str
  }
]
get_out_of_unit_callings(unit: int = None) → JSONType

Returns the unit list of members with callings out of unit

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

{
  LIVING_INSIDE: [
    {
      mrn: str,
      unitNumber: int,
      unitName: str,
      subOrgTypeId: int,
      subOrgId: int,
      customSubOrgName: NoneType,
      parentSubOrgId: int,
      positionTypeId: NoneType,
      positionId: int,
      standardPosition: bool,
      position: str,
      displaySequence: NoneType,
      activeCalender: str,
      activeDate: str,
      setApartCalender: str,
      setApartDate: str,
      leaderHomePhone: NoneType,
      leaderWorkPhone: NoneType,
      id: int,
      memberUnitNumber: int,
      memberUnitName: str,
      name: str,
      nameOrder: int,
      birthDate: str,
      birthDateSort: str,
      birthdDateDisplay: str,
      phone: str,
      age: NoneType,
      outOfUnit: bool,
      stake: bool,
      district: bool,
      organization: str,
      spokenName: str,
      gender: str,
      priesthood: NoneType,
      email: str,
      errors: {},
      sustainedDate: str,
      custom: bool,
      setApart: bool,
      subOrgType: str
    }
  ],
  LIVING_OUTSIDE: list
}
get_quarterly_reports(unit: int = None) → JSONType

Returns all available unit quarterly reports

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

{
  2014: {
    4: {
      unitNumber: int,
      year: int,
      quarter: int,
      version: str,
      sections: [
        {
          nameResourceId: str,
          label: str,
          rows: [
            {
              number: int,
              nameResourceId: str,
              label: str,
              helpResourceId: str,
              helpLabel: str,
              lineReference: NoneType,
              editable: bool,
              calculated: bool,
              propertyName: NoneType,
              valueStr: NoneType,
              actualValue: int,
              updatedActualValue: NoneType,
              actualListType: str,
              potentialValue: int,
              potentialListType: str,
              year1Percent: str,
              year5Percent: str,
              childUnitRows: NoneType,
              childUnitNumber: NoneType
            }
          ]
        }
      ],
      initialSubmitDate: str,
      lastSaveDate: str,
      dueDate: str,
      overdue: bool,
      converts: [
        {
          name: str,
          spokenName: str,
          nameOrder: NoneType,
          birthDate: str,
          birthDateSort: str,
          birthDaySort: str,
          birthDayFormatted: str,
          birthDateFormatted: str,
          gender: str,
          genderCode: int,
          mrn: NoneType,
          id: int,
          email: NoneType,
          householdEmail: NoneType,
          phone: NoneType,
          householdPhone: NoneType,
          unitNumber: NoneType,
          unitName: NoneType,
          priesthood: NoneType,
          priesthoodCode: int,
          priesthoodType: NoneType,
          age: int,
          actualAge: int,
          actualAgeInMonths: NoneType,
          genderLabelShort: str,
          visible: NoneType,
          nonMember: bool,
          outOfUnitMember: bool,
          notAccountable: bool,
          inAuthorizedUnit: bool,
          attendMeetings: bool,
          hasCalling: bool,
          quarterlyReportUnitNumber: int,
          formattedMrn: NoneType,
          sustainedDate: NoneType,
          setApart: bool,
          accountable: bool
        }
      ],
      childUnits: NoneType,
      errors: {},
      submitted: bool
    }
  },
  2015: {
    4: {
      unitNumber: int,
      year: int,
      quarter: int,
      version: str,
      sections: [
        {
          nameResourceId: str,
          label: str,
          rows: [
            {
              number: int,
              nameResourceId: str,
              label: str,
              helpResourceId: str,
              helpLabel: str,
              lineReference: NoneType,
              editable: bool,
              calculated: bool,
              propertyName: NoneType,
              valueStr: NoneType,
              actualValue: int,
              updatedActualValue: NoneType,
              actualListType: str,
              potentialValue: int,
              potentialListType: str,
              year1Percent: str,
              year5Percent: str,
              childUnitRows: NoneType,
              childUnitNumber: NoneType
            }
          ]
        }
      ],
      initialSubmitDate: str,
      lastSaveDate: str,
      dueDate: str,
      overdue: bool,
      converts: [
        {
          name: str,
          spokenName: str,
          nameOrder: NoneType,
          birthDate: str,
          birthDateSort: str,
          birthDaySort: str,
          birthDayFormatted: str,
          birthDateFormatted: str,
          gender: str,
          genderCode: int,
          mrn: NoneType,
          id: int,
          email: NoneType,
          householdEmail: NoneType,
          phone: NoneType,
          householdPhone: NoneType,
          unitNumber: int,
          unitName: str,
          priesthood: NoneType,
          priesthoodCode: int,
          priesthoodType: NoneType,
          age: int,
          actualAge: int,
          actualAgeInMonths: NoneType,
          genderLabelShort: str,
          visible: NoneType,
          nonMember: bool,
          outOfUnitMember: bool,
          notAccountable: bool,
          inAuthorizedUnit: bool,
          attendMeetings: bool,
          hasCalling: bool,
          quarterlyReportUnitNumber: int,
          formattedMrn: NoneType,
          sustainedDate: NoneType,
          setApart: bool,
          accountable: bool
        }
      ],
      childUnits: NoneType,
      errors: {},
      submitted: bool
    }
  },
  2016: {
    4: {
      unitNumber: int,
      year: int,
      quarter: int,
      version: str,
      sections: [
        {
          nameResourceId: str,
          label: str,
          rows: [
            {
              number: int,
              nameResourceId: str,
              label: str,
              helpResourceId: str,
              helpLabel: str,
              lineReference: NoneType,
              editable: bool,
              calculated: bool,
              propertyName: NoneType,
              valueStr: NoneType,
              actualValue: int,
              updatedActualValue: NoneType,
              actualListType: str,
              potentialValue: int,
              potentialListType: str,
              year1Percent: str,
              year5Percent: str,
              childUnitRows: NoneType,
              childUnitNumber: NoneType
            }
          ]
        }
      ],
      initialSubmitDate: str,
      lastSaveDate: str,
      dueDate: str,
      overdue: bool,
      converts: [
        {
          name: str,
          spokenName: str,
          nameOrder: NoneType,
          birthDate: str,
          birthDateSort: str,
          birthDaySort: str,
          birthDayFormatted: str,
          birthDateFormatted: str,
          gender: str,
          genderCode: int,
          mrn: NoneType,
          id: int,
          email: NoneType,
          householdEmail: NoneType,
          phone: NoneType,
          householdPhone: NoneType,
          unitNumber: int,
          unitName: str,
          priesthood: NoneType,
          priesthoodCode: NoneType,
          priesthoodType: NoneType,
          age: int,
          actualAge: int,
          actualAgeInMonths: int,
          genderLabelShort: str,
          visible: NoneType,
          nonMember: bool,
          outOfUnitMember: bool,
          notAccountable: bool,
          inAuthorizedUnit: bool,
          attendMeetings: bool,
          hasCalling: NoneType,
          quarterlyReportUnitNumber: int,
          formattedMrn: NoneType,
          sustainedDate: NoneType,
          setApart: bool,
          accountable: bool
        }
      ],
      childUnits: NoneType,
      errors: {},
      submitted: bool
    }
  },
  2017: {
    4: {
      unitNumber: int,
      year: int,
      quarter: int,
      version: str,
      sections: [
        {
          nameResourceId: str,
          label: str,
          rows: [
            {
              number: int,
              nameResourceId: str,
              label: str,
              helpResourceId: str,
              helpLabel: str,
              lineReference: NoneType,
              editable: bool,
              calculated: bool,
              propertyName: NoneType,
              valueStr: NoneType,
              actualValue: int,
              updatedActualValue: NoneType,
              actualListType: str,
              potentialValue: int,
              potentialListType: str,
              year1Percent: str,
              year5Percent: str,
              childUnitRows: NoneType,
              childUnitNumber: NoneType
            }
          ]
        }
      ],
      initialSubmitDate: str,
      lastSaveDate: str,
      dueDate: str,
      overdue: bool,
      converts: [
        {
          name: str,
          spokenName: str,
          nameOrder: NoneType,
          birthDate: str,
          birthDateSort: str,
          birthDaySort: str,
          birthDayFormatted: str,
          birthDateFormatted: str,
          gender: str,
          genderCode: int,
          mrn: NoneType,
          id: int,
          email: NoneType,
          householdEmail: NoneType,
          phone: NoneType,
          householdPhone: NoneType,
          unitNumber: NoneType,
          unitName: NoneType,
          priesthood: NoneType,
          priesthoodCode: NoneType,
          priesthoodType: NoneType,
          age: int,
          actualAge: int,
          actualAgeInMonths: int,
          genderLabelShort: str,
          visible: NoneType,
          nonMember: bool,
          outOfUnitMember: bool,
          notAccountable: bool,
          inAuthorizedUnit: bool,
          attendMeetings: bool,
          hasCalling: NoneType,
          quarterlyReportUnitNumber: int,
          formattedMrn: NoneType,
          sustainedDate: NoneType,
          setApart: bool,
          accountable: bool
        }
      ],
      childUnits: NoneType,
      errors: {},
      submitted: bool
    }
  },
  2018: {
    4: {
      unitNumber: int,
      year: int,
      quarter: int,
      version: str,
      sections: [
        {
          nameResourceId: str,
          label: str,
          rows: [
            {
              number: int,
              nameResourceId: str,
              label: str,
              helpResourceId: str,
              helpLabel: str,
              lineReference: NoneType,
              editable: bool,
              calculated: bool,
              propertyName: NoneType,
              valueStr: NoneType,
              actualValue: int,
              updatedActualValue: NoneType,
              actualListType: str,
              potentialValue: int,
              potentialListType: str,
              year1Percent: str,
              year5Percent: str,
              childUnitRows: NoneType,
              childUnitNumber: NoneType
            }
          ]
        }
      ],
      initialSubmitDate: str,
      lastSaveDate: str,
      dueDate: str,
      overdue: bool,
      converts: list,
      childUnits: NoneType,
      errors: {},
      submitted: bool
    }
  },
  2019: {
    4: {
      unitNumber: int,
      year: int,
      quarter: int,
      version: str,
      sections: [
        {
          nameResourceId: str,
          label: str,
          rows: [
            {
              number: int,
              nameResourceId: str,
              label: str,
              helpResourceId: str,
              helpLabel: str,
              lineReference: NoneType,
              editable: bool,
              calculated: bool,
              propertyName: NoneType,
              valueStr: NoneType,
              actualValue: int,
              updatedActualValue: NoneType,
              actualListType: str,
              potentialValue: int,
              potentialListType: str,
              year1Percent: str,
              year5Percent: str,
              childUnitRows: NoneType,
              childUnitNumber: NoneType
            }
          ]
        }
      ],
      initialSubmitDate: str,
      lastSaveDate: str,
      dueDate: str,
      overdue: bool,
      converts: [
        {
          name: str,
          spokenName: str,
          nameOrder: NoneType,
          birthDate: str,
          birthDateSort: str,
          birthDaySort: str,
          birthDayFormatted: str,
          birthDateFormatted: str,
          gender: str,
          genderCode: int,
          mrn: NoneType,
          id: int,
          email: NoneType,
          householdEmail: NoneType,
          phone: NoneType,
          householdPhone: NoneType,
          unitNumber: int,
          unitName: str,
          priesthood: NoneType,
          priesthoodCode: NoneType,
          priesthoodType: NoneType,
          age: int,
          actualAge: int,
          actualAgeInMonths: int,
          genderLabelShort: str,
          visible: NoneType,
          nonMember: bool,
          outOfUnitMember: bool,
          notAccountable: bool,
          inAuthorizedUnit: bool,
          attendMeetings: bool,
          hasCalling: NoneType,
          quarterlyReportUnitNumber: int,
          formattedMrn: NoneType,
          sustainedDate: NoneType,
          setApart: bool,
          accountable: bool
        }
      ],
      childUnits: NoneType,
      errors: {},
      submitted: bool
    }
  },
  2020: {
    1: {
      unitNumber: int,
      year: int,
      quarter: int,
      version: str,
      sections: [
        {
          nameResourceId: str,
          label: str,
          rows: [
            {
              number: int,
              nameResourceId: str,
              label: str,
              helpResourceId: str,
              helpLabel: str,
              lineReference: NoneType,
              editable: bool,
              calculated: bool,
              propertyName: NoneType,
              valueStr: NoneType,
              actualValue: int,
              updatedActualValue: NoneType,
              actualListType: str,
              potentialValue: int,
              potentialListType: str,
              year1Percent: str,
              year5Percent: str,
              childUnitRows: NoneType,
              childUnitNumber: NoneType
            }
          ]
        }
      ],
      initialSubmitDate: str,
      lastSaveDate: str,
      dueDate: str,
      overdue: bool,
      converts: [
        {
          name: str,
          spokenName: str,
          nameOrder: NoneType,
          birthDate: str,
          birthDateSort: str,
          birthDaySort: str,
          birthDayFormatted: str,
          birthDateFormatted: str,
          gender: str,
          genderCode: int,
          mrn: NoneType,
          id: int,
          email: NoneType,
          householdEmail: NoneType,
          phone: NoneType,
          householdPhone: NoneType,
          unitNumber: int,
          unitName: str,
          priesthood: NoneType,
          priesthoodCode: NoneType,
          priesthoodType: NoneType,
          age: int,
          actualAge: int,
          actualAgeInMonths: int,
          genderLabelShort: str,
          visible: NoneType,
          nonMember: bool,
          outOfUnitMember: bool,
          notAccountable: bool,
          inAuthorizedUnit: bool,
          attendMeetings: bool,
          hasCalling: NoneType,
          quarterlyReportUnitNumber: int,
          formattedMrn: NoneType,
          sustainedDate: NoneType,
          setApart: bool,
          accountable: bool
        }
      ],
      childUnits: NoneType,
      errors: {},
      submitted: bool
    }
  }
}
get_seminary_and_institute_quarterly_attendance(unit: int = None) → JSONType

Returns all availabe seminary/institute quarterly attendance reports

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

{
  2014: {
    4: {
      unitNumber: int,
      unitName: str,
      unitAbbreviation: NoneType,
      year: int,
      quarter: int,
      yearQuarterDisplay: str,
      isStakeTotals: bool,
      sections: [
        {
          id: int,
          name: str,
          comment: str,
          rows: [
            {
              id: int,
              name: str,
              tooltip: str,
              actual: int,
              potential: int,
              percent: int,
              value: NoneType,
              valueIsPercent: bool,
              valueIsPotential: bool,
              valueIsActual: bool
            }
          ],
          subSections: list
        }
      ]
    }
  },
  2015: {
    4: {
      unitNumber: int,
      unitName: str,
      unitAbbreviation: NoneType,
      year: int,
      quarter: int,
      yearQuarterDisplay: str,
      isStakeTotals: bool,
      sections: [
        {
          id: int,
          name: str,
          comment: str,
          rows: [
            {
              id: int,
              name: str,
              tooltip: str,
              actual: int,
              potential: int,
              percent: int,
              value: NoneType,
              valueIsPercent: bool,
              valueIsPotential: bool,
              valueIsActual: bool
            }
          ],
          subSections: list
        }
      ]
    }
  },
  2016: {
    4: {
      unitNumber: int,
      unitName: str,
      unitAbbreviation: NoneType,
      year: int,
      quarter: int,
      yearQuarterDisplay: str,
      isStakeTotals: bool,
      sections: [
        {
          id: int,
          name: str,
          comment: str,
          rows: [
            {
              id: int,
              name: str,
              tooltip: str,
              actual: int,
              potential: int,
              percent: int,
              value: NoneType,
              valueIsPercent: bool,
              valueIsPotential: bool,
              valueIsActual: bool
            }
          ],
          subSections: list
        }
      ]
    }
  },
  2017: {
    4: {
      unitNumber: int,
      unitName: str,
      unitAbbreviation: NoneType,
      year: int,
      quarter: int,
      yearQuarterDisplay: str,
      isStakeTotals: bool,
      sections: [
        {
          id: int,
          name: str,
          comment: str,
          rows: [
            {
              id: int,
              name: str,
              tooltip: str,
              actual: int,
              potential: int,
              percent: int,
              value: NoneType,
              valueIsPercent: bool,
              valueIsPotential: bool,
              valueIsActual: bool
            }
          ],
          subSections: list
        }
      ]
    }
  },
  2018: {
    4: {
      unitNumber: int,
      unitName: str,
      unitAbbreviation: NoneType,
      year: int,
      quarter: int,
      yearQuarterDisplay: str,
      isStakeTotals: bool,
      sections: [
        {
          id: int,
          name: str,
          comment: str,
          rows: [
            {
              id: int,
              name: str,
              tooltip: str,
              actual: int,
              potential: int,
              percent: int,
              value: NoneType,
              valueIsPercent: bool,
              valueIsPotential: bool,
              valueIsActual: bool
            }
          ],
          subSections: list
        }
      ]
    }
  },
  2019: {
    4: {
      unitNumber: int,
      unitName: str,
      unitAbbreviation: NoneType,
      year: int,
      quarter: int,
      yearQuarterDisplay: str,
      isStakeTotals: bool,
      sections: [
        {
          id: int,
          name: str,
          comment: str,
          rows: [
            {
              id: int,
              name: str,
              tooltip: str,
              actual: int,
              potential: int,
              percent: int,
              value: NoneType,
              valueIsPercent: bool,
              valueIsPotential: bool,
              valueIsActual: bool
            }
          ],
          subSections: list
        }
      ]
    }
  },
  2020: {
    2: {
      unitNumber: int,
      unitName: str,
      unitAbbreviation: NoneType,
      year: int,
      quarter: int,
      yearQuarterDisplay: str,
      isStakeTotals: bool,
      sections: [
        {
          id: int,
          name: str,
          comment: str,
          rows: [
            {
              id: int,
              name: str,
              tooltip: str,
              actual: int,
              potential: int,
              percent: int,
              value: NoneType,
              valueIsPercent: bool,
              valueIsPotential: bool,
              valueIsActual: bool
            }
          ],
          subSections: list
        }
      ]
    }
  }
}
get_unit_orginizations(unit: int = None) → JSONType

Returns the unit calling/leadership organization structure

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

[
  {
    unitNumber: int,
    unitType: int,
    subOrgId: int,
    parentSubOrgId: NoneType,
    parentName: str,
    customOrgName: NoneType,
    defaultOrgName: str,
    name: str,
    relatedSubOrgName: NoneType,
    priesthood: bool,
    gender: NoneType,
    adultClass: bool,
    filterOffices: list,
    canHaveMembers: bool,
    userCanEditCallings: bool,
    userCanEditClassAssignments: bool,
    userCanSeeBasicInfo: bool,
    multipleAllowed: bool,
    nameEditable: bool,
    resetable: bool,
    required: bool,
    customPositionsAllowed: bool,
    missionaries: bool,
    highCouncilOrDistrictCouncil: bool,
    room: NoneType,
    splitOrCombinedClassNotice: NoneType,
    canShowWithNoCallings: bool,
    children: list,
    displayOrder: int,
    instance: int,
    totalInstances: int,
    callings: [
      {
        unitNumber: int,
        unitName: NoneType,
        subOrgTypeId: int,
        subOrgId: int,
        newSubOrgId: NoneType,
        organization: str,
        parentOrganization: NoneType,
        otherAllowedSubOrgs: [
          {
            unitNumber: int,
            subOrgId: int,
            orgTypeIds: [
              int
            ],
            defaultOrgTypeIds: [
              int
            ],
            name: str,
            children: list,
            userCanEditCallings: bool,
            isClass: bool,
            isRealClass: bool,
            isSplit: bool,
            isCombined: bool,
            gender: NoneType,
            parentName: NoneType,
            classGroup: NoneType,
            firstTypeId: int
          }
        ],
        positionTypeId: int,
        positionId: int,
        releasePositionIds: NoneType,
        position: str,
        positionDisplayOrder: int,
        memberId: int,
        mrn: NoneType,
        nameVerificationForMrn: NoneType,
        memberName: str,
        memberNameOrder: int,
        memberEmail: str,
        memberPhone: str,
        memberUnitName: str,
        memberUnitNumber: int,
        setApartByPersonId: int,
        setApartByPersonMrn: str,
        setApartByPersonName: str,
        ordainedByPersonId: int,
        ordainedByPersonMrn: str,
        ordainedByPersonName: str,
        activeDate: str,
        expectedEndDate: NoneType,
        releaseDate: NoneType,
        setApartDate: str,
        ordainDate: str,
        missionName: NoneType,
        missionUnitNumber: NoneType,
        missionaryHomeUnitName: NoneType,
        dualAuthUser: NoneType,
        dualAuthPass: NoneType,
        responsibilities: NoneType,
        contactWorkPhone: NoneType,
        contactMobilePhone: NoneType,
        contactEmail: str,
        contactMailingAddr: {
          street1: str,
          street2: NoneType,
          city: str,
          district: NoneType,
          postalCode: str,
          state: int,
          country: int,
          formattedLines: list,
          standardized: NoneType,
          geocodeToUnits: bool,
          units: NoneType
        },
        autoReleasedPositionTypeIds: NoneType,
        editable: bool,
        contactInfoEditable: bool,
        allowMultiple: bool,
        custom: bool,
        setApart: bool,
        customNameChanged: bool,
        hidden: bool,
        allowNew: bool,
        userCanEdit: bool,
        userCanEditContactInfoOnly: bool,
        canHaveResponsibilities: bool,
        unpublished: bool,
        requiresSetApartDateAndPerson: bool,
        requiresBishopOrdination: bool,
        allowVacant: bool,
        requiresDualAuthorization: bool,
        pendingDelete: bool,
        hasContactInfo: bool,
        showUnitCard: bool,
        pendingCalling: bool,
        pendingDualAuth: bool,
        allowApprove: bool,
        previouslyOrdained: bool,
        userCannotEditPreviousOrdination: bool,
        approvalRequest: bool,
        sequence: int,
        errors: {},
        positionTypeEnum: str,
        vacant: bool
      }
    ],
    members: list,
    size: NoneType,
    firstOrgTypeId: int,
    firstOrgTypeName: NoneType,
    orgTypeIds: [
      int
    ],
    addableSubOrgTypes: NoneType,
    positionTypeIdsThatCanHaveResponsibilities: list,
    isSplit: bool,
    leadershipSubOrgId: NoneType,
    classes: NoneType,
    mergeableSubOrgTypeIds: list,
    classesCollapsed: bool,
    enableHT: bool,
    enableVT: bool,
    supportsAttendanceRoll: bool,
    firstOrgType: str,
    other: bool,
    classGroup: NoneType,
    hasCustomCallings: bool,
    hasAnyAllowMultiple: bool
  }
]
get_unit_statistics(unit: int = None) → JSONType

Returns the unit statistics

Parameters

unitint

Number of the church unit for which to retrieve the report

Returns

{
  unitNumber: int,
  unitType: NoneType,
  unitName: NoneType,
  shortUnitName: NoneType,
  highPriests: int,
  highPriestsIndividualIds: [
    int
  ],
  elders: int,
  eldersIndividualIds: [
    int
  ],
  prospectiveElders: int,
  prospectiveEldersIndividualIds: [
    int
  ],
  women: int,
  womenIndividualIds: [
    int
  ],
  priests: int,
  priestsIndividualIds: [
    int
  ],
  teachers: int,
  teachersIndividualIds: [
    int
  ],
  deacons: int,
  deaconsIndividualIds: [
    int
  ],
  laurels: int,
  laurelsIndividualIds: [
    int
  ],
  miaMaids: int,
  miaMaidsIndividualIds: [
    int
  ],
  beehive: int,
  beehiveIndividualIds: [
    int
  ],
  youngWomen16_17: int,
  youngWomen16_17IndividualIds: [
    int
  ],
  youngWomen14_15: int,
  youngWomen14_15IndividualIds: [
    int
  ],
  youngWomen12_13: int,
  youngWomen12_13IndividualIds: [
    int
  ],
  children: int,
  childrenIndividualIds: [
    int
  ],
  infants: int,
  infantsIndividualIds: [
    int
  ],
  invalidBirthdate: int,
  invalidBirthdateIndividualIds: list,
  baptizedNotConfirmed: int,
  baptizedNotConfirmedIndividualIds: list,
  membersOfRecordAge9OrOlder: int,
  membersOfRecordAge9OrOlderIndividualIds: [
    int
  ],
  households: int,
  householdsIndividualIds: [
    int
  ],
  householdsWithoutMelchizedekPriesthoodHolder: int,
  householdsWithoutMelchizedekPriesthoodHolderIndividualIds: [
    int
  ],
  householdsWithYouth: int,
  householdsWithYouthIndividualIds: [
    int
  ],
  householdsWithChildren: int,
  householdsWithChildrenIndividualIds: [
    int
  ],
  householdsWithSingleParentAndYouthOrChildren: int,
  householdsWithSingleParentAndYouthOrChildrenIndividualIds: [
    int
  ],
  marriedAdults: int,
  marriedAdultsIndividualIds: [
    int
  ],
  singleAdults: int,
  singleAdultsIndividualIds: [
    int
  ],
  youngSingleAdults: int,
  youngSingleAdultsIndividualIds: [
    int
  ],
  adultMaleRecentConverts: int,
  adultMaleRecentConvertsIndividualIds: list,
  adultFemaleRecentConverts: int,
  adultFemaleRecentConvertsIndividualIds: list,
  youngMenRecentConverts: int,
  youngMenRecentConvertsIndividualIds: list,
  youngWomenRecentConverts: int,
  youngWomenRecentConvertsIndividualIds: list,
  childrenAge8to11RecentConverts: int,
  childrenAge8to11RecentConvertsIndividualIds: [
    int
  ],
  ordainedRecentConverts: int,
  ordainedRecentConvertsIndividualIds: list,
  unordainedRecentConverts: int,
  unordainedRecentConvertsIndividualIds: list,
  endowedWithRecommend: int,
  endowedWithRecommendIndividualIds: list,
  endowedWithoutRecommend: int,
  endowedWithoutRecommendIndividualIds: list,
  men: int,
  menIndividualIds: [
    int
  ],
  youngMenIndividualIds: [
    int
  ],
  youngWomenIndividualIds: [
    int
  ],
  totalMembersIndividualIds: [
    int
  ],
  individualsNotIncludedIndividualIds: [
    int
  ],
  adults: int,
  adultsIndividualIds: [
    int
  ],
  youngMen: int,
  youngWomen: int,
  recentConvertsIndividualIds: [
    int
  ],
  recentConvertsEligibleForOrdination: int,
  recentConvertsEligibleForOrdinationIndividualIds: list,
  endowedAdultsIndividualIds: list,
  individualsNotIncluded: int,
  recentConverts: int,
  endowedAdults: int,
  totalMembers: int
}
property session

Returns the requests session being used by the API.

property user_details

Returns the details of the user logged into this session

Returns

{
  username: str,
  ldsAccountId: int,
  uuid: str,
  individualId: int,
  preferredName: str,
  preferredLanguage: str,
  country: str,
  member: bool,
  authorized: bool,
  homeUnits: [
    int
  ],
  parentUnits: [
    int
  ],
  templeUnits: [
    int
  ],
  templeNearest: [
    int
  ],
  proxyUser: bool,
  proxyUnit: bool,
  proxyEdit: bool,
  developer: bool
}