For all APIs, other than the Pricing and Committing APIs, Developers must create an App and associate chosen APIs to conveniently create and manage security credentials for APIs which will be used to generate OAuth (Open Authorization) tokens. Tokens are required to authenticate and authorize when calling an API. Pricing & Committing APIs use a basic authorization so do not require a token to call the API.
Upon logging in to the Developer Portal, the My Apps page can be found by clicking on "My Apps" available in the navigation bar, see picture below. The My Apps page contains all Apps that your organization has created, not just one individual user's Apps.
Note: The My Apps tab is only available to users with the Developer or Developer Administrator role.
To learn more about your Organization's Apps, select from the topics at right.
Selecting an App will reveal three tabs: the TEST, LIVE, and APIs tabs.
Note: APIs in a PENDING status mean that the App has not been approved for TEST Keys. When requesting to promote the App, the TEST Keys will not work for the API until the status is APPROVED.
Creating an App alerts the Freddie Mac Integration Support team who will review and approve the newly created App and may reach out with questions or provide support you may need. After your App is approved, the status for the App will change from Pending to Approved in your My Organization's Apps page.
Once an App is approved you will be able to view the TEST Client ID and Secret that is available for use to authenticate to the associated API Products.
Form Item | Description |
App Name | The display name for your App. Freddie Mac requires using the following naming convention: FreddieProduct_OrganizationName_OrganizationSoftwareName. Your App can be rejected if the naming convention is not used when creating the App and you may be asked to create a new App. |
Products | Select the API Products you wish to associate with this App. |
OAuth |
Select "OAuth" which is required for building to any API and must be associated to your App. Optionally, you may also select “OAuth_Test” (a version of OAuth lasting only five minutes for testing token expiration and refresh). |
Note: If you try calling the OAuth Test API with the Client IDand Secret from an App that only has the OAuth API Product added to it, you will not be able to get a valid token from the OAuth Test API call since you did not add OAuth Test to your App.
There are two ways to generate OAuth within the Developer Portal:
|
From the API Catalog, click the “API Details” link (bottom right of card) on the OAuth or OAuth Test product card to visit the OAuth API's Details page. Click “Post” to expand the dropdown, click “Try it Out” to unlock the form, then fill out the form and click “Execute” to receive the response and token. |
|
Navigate to the API Details page of the desired API and click on the Generate OAuth icon found in Actions. Fill out the form and choose the App (from a drop down). Note: This method only connects to the regular OAuth version not the OAuth test version. |
Note: Use of either environment - TEST or LIVE - requires its own token obtained with credentials specific to that environment.
In your App you can access the TEST and LIVE Keys for the associated APIs. Your App will initially receive a "PENDING" status for most APIs when created. TEST Keys are not usable for an API until the API has an "APPROVED" status next to it (viewable in the APIs tag of the App).
When an App has been requested for promotion, it will say "Requested for Promotion" and the App will not be editable during this time. Once the promotion request is Approved, the App will again be editable and the APIs within the App will have a "PROMOTED" tag next to each one that was approved for promotion. Live Keys are not usable for the Production (LIVE) environment until an API has the PROMOTED tag next to it.
Once you submit a request to create an App your App will show up on your My Apps page with the status Approved/Pending.
The App status displayed in the blue bar and in the status column on the APIs tab refers to the TEST environment. APIs that are in Pending status or Unapproved status will not be able to use the TEST Keys available for the App.
Note: OAuth and OAuth Test APIs are automatically approved all other APIs will be in Pending status once the App is created or when an App is edited to add a new API.
Approved
One or more API(s) associated to your App has been approved, and TEST Keys are now available to use for the approved API(s). TEST Keys are only available for the test environment and should be used with your test system to system credentials provided by your Freddie Mac representative.
Note: You can view which APIs associated to your App have been approved by navigating to the APIs tab within your App.
Pending
One or more API(s) associated to your App are in PENDING status waiting approval from the Freddie Mac Integration team who will review and approve the App request and may reach out with questions or provide support you may need. As each API in the request is approved, the status for the API will change from PENDING to APPROVED. If all APIs associated to the App are approved, then the status of your App will change from APPROVED/PENDING to APPROVED.
Unapproved
The Freddie Mac Integration Support team may have questions and not approve your request during their two-business-day review. If your request is not approved, an UNAPPROVED status will display, and the App edit icon will be enabled as well as a resubmit icon allowing for edit and re-submission actions. Additionally, if your App request includes multiple APIs in the App, and only one needs editing or additional conversation, Freddie Mac can "approve" some APIs and "Unapprove" only the API needing follow up.
When you are ready to go live with your integration you will need to promote your App and associated APIs to create and use LIVE Keys for the Live environment.
You must have the Developer Admin role in order to perform a promotion request.
To Promote your App to Production click on the megaphone action icon. “Request to promote”. You will receive a confirmation pop up, click “Promote” to continue the action or “Cancel” to cancel the action.
Note: Only APIs that are in APPROVED status and have the Live tag will be included in the Promotion request. The Live tag can be viewed for each API on the APIs tab of your App. The Live tag indicates that the API is available in Production.
Note: If all APIs associated to your App are in Promoted status the megaphone icon to Request to Promote will no longer appear.
Requested for Promotion
Once you request to promote an App to production your App will show the status “Requested to Promote” next to the action icons and the Promote icon and Edit icon will be disabled.
The Freddie Mac Integration team will review and approve the Promotion request and may reach out with questions or request additional information from you to determine if you are ready to go Live with your integration. If your App request includes multiple APIs in the App, and only one needs editing or additional conversation, Freddie Mac can "approve" some APIs and "Unapprove" only the API needing follow up.
Promoted
One or more APIs in your App have been approved for Production Promotion and LIVE Keys are now available to use in the Production environment. LIVE Keys are only available for APIs with the Promoted tag. LIVE Keys are only for use in the Live Production environment and should be used with your Production system to system credentials provided by Freddie Mac.
Promoted APIs will now have a PROMOTED tag next to each one that was approved for Promotion, you can view this status in the APIs tab of your App.
TEST and LIVE Client ID & Secret Keys are all located in the MY APPS page, in each App under the associated tab.
This information is not a replacement or substitute for the requirements in the Freddie Mac Single-Family Seller/Servicer Guide or any other contractual agreements. This information does not constitute an agreement between Freddie Mac and any other party. © 2024 Freddie Mac. |
|
Terms of Use | Freddie Mac Learning |