Best endpoint(s) for faculty data?
I have a few use cases that I'm having trouble discerning the best way to retrieve this data as there seems to be little connection between navigating the blackbaud dashboard and the API structure, any help would be great!
- GET all faculty, ideally with these fields: basic details (first name, last name, etc), education information, email/phone, job title, departments (which seems like its buried in something called access > employment?), public bio
- GET all faculty filtered by “department” with the above fields
- GET a single faculty by id with the above fields
Comments
-
GET all faculty, ideally with these fields: basic details (first name, last name, etc), education information, email/phone, job title, departments (which seems like its buried in something called access > employment?), public bio
The endpoints Users extended by role(s) endpoint has most of this information. Users extended by role(s) takes an argument that is a string of comma-separated BASE role IDs. The base role ID for Teacher is 15.
- the public bio field is caller Personal Bio
- the job title is in the Occupation section
- I don’t see any access to department assignments in any API calls. You can create an Advanced List to extract that info, and read the list with the List Single endpoint.
GET all faculty filtered by “department” with the above fields
I don’t see any option to filter any API call by department. The best way to do that is to use the Advanced List to get the user and department info that you want, and then get the rest of the info from the User Extended data.
GET a single faculty by id with the above fields
The Users extended by user endpoint takes a User ID to return most of the info you’re looking for.
In many of my programs, I first make a call to User Extended by role(s) and read all of the data into a hashmap (key = User ID, data = the User record). Then, when I get the other info I need (via other calls to the API or by reading the advanced list, I can access the User Extended data by lookup in the hashmap.
1 -
@Brian Gray thank you! We came to a similar conclusion that there's no way to do with without multiple API calls per user (yuck!)
For anyone else that ends up here we found department buried under employment in our case (not sure if that's setup specific): GET users/{user_id}/employment
We actually want all faculty and staff and that spans multiple and changing role ids, so doing that via role id is not really feasible (GET users/extended?base_role_ids={role_id}). Instead we're using the directory endpoint which is in beta and might be deprecated: GET directories/{directory_id}
0 -
@Typecode LLC - For Get Directories, what is the directory ID? Where do you find the correct ID value?
0 -
@Brian Gray I think this is configuration dependent, but our client has created Directories and manually added various users to them. You can do a manual/postman GET on directories to get the list and IDs and then we hardcode those IDs to constants and use them dynamically as needed.
0 -
@Typecode LLC - Got it. Thanks.
0
Categories
- All Categories
- 6 Blackbaud Community Help
- 211 bbcon®
- 1.4K Blackbaud Altru®
- 396 Blackbaud Award Management™ and Blackbaud Stewardship Management™
- 1.1K Blackbaud CRM™ and Blackbaud Internet Solutions™
- 15 donorCentrics®
- 360 Blackbaud eTapestry®
- 2.5K Blackbaud Financial Edge NXT®
- 649 Blackbaud Grantmaking™
- 568 Blackbaud Education Management Solutions for Higher Education
- 3.2K Blackbaud Education Management Solutions for K-12 Schools
- 937 Blackbaud Luminate Online® and Blackbaud TeamRaiser®
- 84 JustGiving® from Blackbaud®
- 6.5K Blackbaud Raiser's Edge NXT®
- 3.7K SKY Developer
- 247 ResearchPoint™
- 119 Blackbaud Tuition Management™
- 165 Organizational Best Practices
- 239 The Tap (Just for Fun)
- 34 Blackbaud Community Challenges
- 31 PowerUp Challenges
- 3 (Open) PowerUp Challenge: Data Health
- 3 (Closed) Raiser's Edge NXT PowerUp Challenge: Product Update Briefing
- 3 (Closed) Raiser's Edge NXT PowerUp Challenge: Standard Reports+
- 3 (Closed) Raiser's Edge NXT PowerUp Challenge: Email Marketing
- 3 (Closed) Raiser's Edge NXT PowerUp Challenge: Gift Management
- 4 (Closed) Raiser's Edge NXT PowerUp Challenge: Event Management
- 3 (Closed) Raiser's Edge NXT PowerUp Challenge: Home Page
- 4 (Closed) Raiser's Edge NXT PowerUp Challenge: Standard Reports
- 4 (Closed) Raiser's Edge NXT PowerUp Challenge: Query
- 785 Community News
- 2.9K Jobs Board
- 53 Blackbaud SKY® Reporting Announcements
- 47 Blackbaud CRM Higher Ed Product Advisory Group (HE PAG)
- 19 Blackbaud CRM Product Advisory Group (BBCRM PAG)
