Skip to content

Adding campusgroup api integration#1755

Open
sheggen wants to merge 4 commits into
developmentfrom
add_campusgroups_api
Open

Adding campusgroup api integration#1755
sheggen wants to merge 4 commits into
developmentfrom
add_campusgroups_api

Conversation

@sheggen

@sheggen sheggen commented Jul 6, 2026

Copy link
Copy Markdown
Collaborator

Issue Description

This PR does not tie to an issue yet. It is related to the integration of campusgroups API to our application so that we can push and/or pull data from CampusGroups.

Changes

  • Creates a new route for CELTS-Link which retrieves API data from CampusGroups and returns it to CELTS-Link as JSON data. Currently, it retrieves all event data in CampusGroups.
  • Creates a new route for CELTS-Link to push events to CampusGroups.
    • Creates new events
    • Updates existing events, including the ability to delete events
  • Added xmltodict to requirements.txt.
  • Added fields to default.yml for connecting to CampusGroups.
  • Created a new class in app/logic for handling all CampusGroup interaction.

Testing

  • Prior to the route working the following must be set up:
    1. The public API key for campusGroups must be included in local-overrides.yml. An administrator for CampusGroups can share that key with you (currently, Brian and Scott have access to get you this).
    2. An API secret key must be generated from inside CampusGroups admin interface also. This must be done by an administrator for that application. Developers should use the sandbox site; production should use the production site.
    3. The IP address of your server where you are running CELTS-Link must be in the valid range inside the CampusGroups admin interface as well. This is configured on the same UI inside CampusGroups as step 2 above.
    4. The above three fields are in stored in default.yml config file, and local-override.yml should be used to keep the secrets secret by copying the fields from default.yml to local-overrides.yml.
    5. Run the CELTS-Link app and navigate to:
      a. /retrieveEvents: Retrieves a JSON representation of all events in CampusGroups.
      b. /addEventToCampusGroups/<eventid>: Pushes event to CampusGroups.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant