Skip to main content

A Python client for Interfolio

Project description

Interfolio API

A lightweight Python library for Interfolio.

Note: Interfolio API is still in beta. It currently only supports the GET methods in the Faculty Activity Reporting application.

Installation

pip install interfolio_api

Quick Start

Faculty Activity Reporting

The Faculty Activity Reporting API requires a public/private key pair and a database ID. These can either be passed in directly as strings or set as environment variables.

  • INTERFOLIO_PUBLIC_KEY
  • INTERFOLIO_PRIVATE_KEY
  • FAR_DATABASE_ID

If not passed in directly, these values are assumed to come from the environment.

If these values are not passed directly or found in the environment, an error will be raised.

from interfolio_api import InterfolioFAR

# Passed directly
far = InterfolioFAR(
    public_key="<your_public_key>",
    private_key="<your_private_key>",
    database_id="<your_database_ID>"
)

# From environment
far = InterfolioFAR()

Documentation

Faculty Activity Reporting

Details on the parameters for each API method can be found in Interfolio's documentation. Required parameters are passed as positional arguments; optional parameters are passed as keyword args (**kwargs).

Units

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Retrieve a listing of academic units
far.get_units()

# Retrieve details on a specific unit
far.get_unit(unit_id="<id>")

Terms

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Retrieve the 'term' periods that a school has set up
far.get_terms()

Users

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Retrieve basic identifying information for a listing of users
far.get_users()

# Retrieve a full profile for the specified user
far.get_user(user_id="<id>")

# Retrieve activity and section data for a listing of users
far.get_user_data()

# Retrieve a list of Tenant ID's for the current user
far.get_tenant_ids()

Permissions

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Retrieve permission information for a listing of users
far.get_permissions()

# Retrieve permission information for a specified user
far.get_permission(user_id="<id>")

Faculty Classifications

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Retrieve details on the available faculty classifications
far.get_faculty_classifications()

# Retrieve details on a specific faculty classification
far.get_faculty_classification(faculty_classification_id="<id>")

# Retrieve faculty classification data for a listing of users
far.get_faculty_classification_data()

Sections

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Retrieve details on sections
far.get_sections()

# Retrieve details for a specific section
far.get_section(section_id="<id>")

Activities

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Retrieve faculty activity IDs in sections
far.get_activities_ids_in_sections()

# Retrieve faculty activity IDs for a specific section
far.get_activities_ids_for_section(section_id="<id>")

# Retrieve faculty activity details for a specific section
far.get_activities_details_for_section(section_id="<id>")

# Retrieve details for a specific activity ID
far.get_activity_details(
    section_id="<id>",
    activity_id="<id>"
)

# Retrieve details for a given activity attachment
far.get_activity_attachments(
    section_id="<id>",
    activity_id="<id>"
)

# Retrieve activity classification data
far.get_activity_classifications()

# Retrieve details for a specific activity classification 
far.get_activity_classification(
    activity_classification_id="<id>"
)

Courses

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Retrieve course prefixes
far.get_course_prefixes()

# Retrieve details for multiple courses
far.get_courses()

# Retrieve details for courses taught during one or more terms
far.get_courses_taught()

# Retrieve details for a specific course taught during a specific term
far.get_course_taught(course_taught_id="<id>")

# Retrieve attachment details for a specific course taught during specific term
far.get_course_taught_attachments(
    course_taught_id="<id>"
)

Evaluations

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Retrieve evaluation details for multiple users
far.get_evaluations()

Vitae

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Retrieve details on all vitae
far.get_vitae()

# Retrieve details on a specific user's specific vita
far.get_vita(user_id="<id>", vita_id="<id>")

# Retrieve a list of vitae that the user is permissioned to select
far.get_paginated_vitae(tenant_id="<id>")

Attachments

from interfolio_api import InterfolioFAR
far = InterfolioFAR()

# Download an attachment
far.download_attachment(attachment_id="<id>")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

interfolio_api-0.93.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

interfolio_api-0.93-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file interfolio_api-0.93.tar.gz.

File metadata

  • Download URL: interfolio_api-0.93.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for interfolio_api-0.93.tar.gz
Algorithm Hash digest
SHA256 59a48e35fe23b49b42a6de00011faad29f7d00841d816bffe6860e595e3413db
MD5 2f7e2626196996d3b023cac1d08e49cd
BLAKE2b-256 6b513059ad71d311db73fc80a6cfc248b68627c1f56a76515d625cbc2012e2d3

See more details on using hashes here.

File details

Details for the file interfolio_api-0.93-py3-none-any.whl.

File metadata

  • Download URL: interfolio_api-0.93-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for interfolio_api-0.93-py3-none-any.whl
Algorithm Hash digest
SHA256 b67d9558f2b6f693f0e907fdfcc7d7ed3543db281865754a3d35e03931fd0f57
MD5 3de41da8f60b1cb6dabbd65c4006983e
BLAKE2b-256 373b8c2708d4367d6bfa8239b8099fe4ea03b99ce6a2086c9cafe3b8e539d12b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page