About
What are APIs
View APIs
Products
Teams
Invite Team Members
Access APIs with an API Key
Request API Access
Create an App
Choose Products
For App Domain Owners
Contributing APIs
About
Welcome to the UCLA API Developer portal. The API Developer portal is the central hub for discovering campus APIs across many disciplines. Users are able to discover and learn about campus APIs published on the portal. Through the portal, Application Developers can request and gain access to APIs for use in their own applications.
The developer portal is the face of the UCLA API program. We welcome any feedback from you on making it the best it can be.
Contact for support and feedback: api-support@it.ucla.edu
What are APIs?
API stands for “Application Program Interface”. The current branding of the term API or Web API or RestFul API represents the broad exposure of services on the web, with well-defined and easy to use programming interfaces. APIs ensure that the data extracted from one software application is formatted and securely passed to the next application without change. APIs enable data integration and facilitate the building of loosely coupled enterprise applications greatly reducing the need for custom point-to-point solutions. API Management is the exposure of an organization's digital services and assets through APIs in a controlled way.
The UCLA API Program – A “Digital Ecosystem” for the campus.
View APIs
Most APIs, except those available for public consumption, are only visible after log on. You must have a UCLA logon to use this portal.
Products
API products are bundled APIs available to app developers for consumption. The API resources bundled in an API product can come from one or more APIs, so you can mix and match resources to create specialized feature sets.
Teams
Teams allow groups of developers to share responsibility for an app and access APIs. To create a team, please email api-support@it.ucla.edu with the name of your team.
Invite Team Members
Only Team Owners can invite members. Team Owners can also designate other members to be an Owner.
1. Team owner goes to the “My Teams” page and click on the name of the Team.
2. Team owner goes to the Members tab, and click on the “Add Members” button.
3. Team owner inputs one or more developer emails to send an invitation to join the team.
4. Developer will receive an invitation email.
5. Developer needs to login into Apigee Portal before accept/decline the invitation.
Access APIs with an API Key
Any team member can create a new Team App. Please take the following steps to start testing with a Team App:
1. Create a new team app: Team > My Teams > Add Team > Team Apps
2. Select the target product for this team app. Recommend to start with QA product for testing purpose
3. Under team app > product tab, the target product status shows as “pending”. After the respective API team approves the team app, the status will be updated as “enabled”
4. You can test with an API Key over a product within the portal if:
a. Product status shows as "enabled" for the application
b. Product owner has uploaded the Swagger document
c. Product owner "verify-api-key" as the only required proxy preflow request
5. To test API Key over a product within the portal, go to API Catalog, select the target Product, click on the view, then select the target endpoint. Recommend to select one which has no required parameters and with GET method. Copy/paste the API Key in the value box:
6. Successful testing response will display 200 as the response code.
Request API Access
To request API access, you must first create an App. Apps can be owned by an individual (My Apps) or a team (Team Apps).
Create an App
To create an App, go to My Teams, or My Apps and click on the “Create App” button. From My Teams, click on the team you want to add an app for.
Choose Products
When creating an App, you select which API products to add. The portal provides a single API key that the developer can use to access those API products. The app developer passes the API key in each call to the API proxies contained in the API products.
If the product is not public, an email will be sent to the API owner for approval. You can tell when a product has been approved by clicking on the app name, and then clicking on the "products" tab.
For App Domain Owners
Who can upload the swagger file for an API product?
Uploading a swagger file for a product is restricted feature for API app domain owners.
UCLA Campus API URL Convention
Please follow the recommendation standard for host name, app domain path, version and examples which are available at https://spaces.ais.ucla.edu/display/esb/UCLA+API+Address+Convention.
UCLA Apigee OAuth2 Client Flow
App Key/secrets are currently self-serviced in the Apigee Portal. You can find it under Apps tab > "My Apps"/"Team Apps" > (Application) Keys. Testing steps over Postman are provided in space document: https://spaces.ais.ucla.edu/display/esb/UCLA+API+OAuth2+Client+Flow
What attributes control the display of API products on the portal?
API products display on Developer Portal is based on the below custom attributes from the Apigee Edge. Product owner can control the display of a product on the portal side.
APP Domain – Based on this attribute value we are controlling product owners to edit API products. Also we are showing the App domain categories on home page, API catalog page and app creating page.
Portal Visibility – Based on this attribute value we are controlling the visibility in developer portal (Logged In, Not Logged In and Not visible).If no attribute value set we are not showing the API product in API catalog page and app creation pages.
Product Type – Based on this attribute value we are creating a SINGLE-APP or DUAL-APP.
User was supposed to assign API products to an app while creating or editing from Developer Portal only.
APPROVER-EMAIL - email for product approvers
Example of custom attribute of a product from the Apigee Edge:
"Try it out" doesn't work as expected.
After load the Swaggar API document, if the "Try it out" testing button doesn't work, please verify following Api doc attributes in your swagger doc file have been granted with the correct value:
Example:
"host":"api.ucla.edu"
“schemes":["https"]
“security":[{"application":[]}]}
Contributing APIs
Google Apigee SaaS is the UCLA API management platform. If you would like to contribute an API for others to consume, please email api-support@it.ucla.edu.
Who should request access to UCLA Apigee Edge?
Programmers who need to edit API Proxies and Products, and approve Apps for their Products could request access to UCLA Apigee Edge. UCLA Apigee Edge can be accessed from https://ucla.login.apigee.com/login