Check out our upcoming webinars and client office hours calendar here!

How Can We Help?

Search icon

Search Results

Managing Faculty Profiles via the API

Managing Faculty Profiles via the API

Create a Profile with an Appointment

1. To create a faculty profile with an associated appointment, you will first need a PID for the faculty member -- a unique identifier generated for a given user account in Interfolio. You can retrieve a given user's PID in IAM API

2. Next, you will need the "unit_id" for the appointment object. You can retrieve a list of units for your tenant with the units#index endpoint:

Example:

GET => /10668/units

3. Next, you will need the "rank_id" to which you will associate the given faculty member's appointment. To find this, you will first need to fetch the "series_id" using the series#index endpoint. This endpoint uses the "unit_id" to return available series objects.

Example:

GET => /10668/series?unit_id=10669

4. Once you have the "series_id", you can retrieve the ranks for a given series using the ranks#index endpoint. This endpoint uses the "series_id" and returns the associated series objects.

Example:

GET => /10668/ranks?series_id=42

5. Once you have the required identifiers, use the profiles#with_appointment endpoint to create the profile with the associated appointment. This endpoint takes a JSON payload of parameters associated with the profile object and the appointment object and then returns the created profile with the associated appointment.

Example:

POST => /10668/profiles/with_appointment
{
 "profile":{
 "pid": 2413576,
 "institution_user_id": "test.user",
 "first_name": "Test",
 "last_name": "User",
 "email": "test.user@interfolio.com",
 "date_hired": "2021-01-01",
 "addresses":{
 "office":{
 "street_address_1": "1400 K St NW",
 "street_address_2": "Suite 1100",
 "city": "Washington",
 "state": "DC",
 "zip_code": "20010",
 "country": "USA"
 }
 }
 },
 "appointment":{
 "unit_id": 10669,
 "rank_id": 42,
 "title": "Professor of Testing",
 "start_date": "2021-01-01"
 }
}

6. You can alternatively create a basic profile with the profiles#create endpoint. This endpoint takes the same JSON payload without the included appointment object.

Example:

POST => /10668/profiles
BODY:
{
 "profile":{
 "pid": 2413576,
 "institution_user_id": "test.user",
 "first_name": "Test",
 "last_name": "User",
 "email": "test.user@interfolio.com",
 "date_hired": "2021-01-01",
 "addresses":{
 "office":{
 "street_address_1": "1400 K St NW",
 "street_address_2": "Suite 1100",
 "city": "Washington",
 "state": "DC",
 "zip_code": "20010",
 "country": "USA"
 }
 }
 }
}
 
 

Update Profile

1. To update a faculty profile, you will first need the "profile_id" -- a unique identifier generated when the profile is created. You can fetch this ID value from one of a few endpoints detailed here: View Single Profile.

2. Once you have the ID of the profile you wish to update, use the profiles#update endpoint. This endpoint takes a JSON payload of parameters associated with the profile object and returns the updated profile.

Example:

PUT => /10668/profiles/1432
BODY:
{
 "profile":{
 "last_name": "UpdateTest"
 }
}
 
 

Delete Profile

To delete a faculty profile, you will first need the "profile_id" -- a unique identifier generated when the profile is created. You can fetch this ID value from one of a few endpoints detailed here: View Single Profile. Once you have the ID of the profile you wish to delete, use the profiles#delete endpoint.

Example:

DELETE => /10668/profiles/1432
 
 
Was this article helpful?
Give feedback about this article