As an API provider, it is important to understand the features that the API portal should have. The portal should attract app developers and provide all the necessary information that they might be looking for to get started with using the API. The following are some of the features to consider while building or customizing a developer portal.
• User registration and login: The app developer should be able to easily sign up for the API program and start using the APIs. The registration process should be simple and easy. Requiring a lot of information to register or a complicated registration process may annoy developers and hold them back from signing up for the API program. Hence, the developer registration form should be simple and easy. A minimalistic approach for user registration is recommended. When a developer registers, the approval process can be automatic or manual. In either case, an email should be sent to the developers that confirms registration. The administrator should also be notified of developer registration and be provided with a link to approve, if so required. In a manual approval process, an email should be sent to the developer once their registration request is approved. The login process after the registration should be easy but secure.
• User management: A developer portal administrator should be able to create and edit users. Administrators may directly create developer accounts through the portal. Upon successful registration, the portal should send an email to the developer informing her that the account is created. The administrator should be able to modify the status of the developer from active to blocked if so required, or update a developer’s profile information. Role assignment is yet another aspect of user management. Admins should be able to assign roles to registered users to control the privileges and access rights of the user based on custom roles, and signed-in and anonymous users.
• API documentation: The portal should be the source of all information about the APIs. It should provide all documentation for the API, such as interface specifications, FAQs, tutorials, examples, and sample code. Getting started and how-to guides on using the APIs help accelerate API adoption. Including request and response messages using real-world examples helps developers easily understand the API interface. The API documentation can also include a reference guide that explains common vocabulary, data formats, best practices, common HTTP response codes, and error messages.
• API test console: A console for developers to test an API helps them explore and play around with it without writing any code. Developers can use the console to submit a request to the API and view the response. A smart doc for an API also helps developers easily learn how to use the API.
• Forums and blogs: Community-contributed content, such as threaded discussion forums and blogs that describe the developers’ experiences, help build an engaged developer community.
• App registration and key management: When an app developer wants to create an app using the API, he needs to get an API key. For this, developers need to register their apps with the API provider in the portal. The portal should allow developers to register their apps. The approval for the app registration can be automatic or manual. In an automatic approval, the API key is generated immediately upon registration. The approval process can be manual if any background verification needs to be performed before approval. In a manual approval, the API key is generated only after the app registration has been reviewed and approved by the administrator. An administrator may also revoke keys or regenerate new ones.
• Email configuration: The API portal should send email notifications when developers sign up for the API program or register their apps. The API portal administration should provide the facility to configure the email templates with the content and format of the emails to be sent. The admin should also be able to configure when emails should be sent to developers.
• Dashboard: App developers like to view statistical information about their apps and the APIs used by their apps. They like to know the number of users using their apps, the number of calls made by their apps, and the various APIs and methods used by the apps. The developer portal should provide a dashboard for app developers to view all of this information and much more. • Support information: The API support information in the portal
should provide the developers’ contact information so as to reach in case of any queries or issues with using the API. The contact information can be a phone number or an email address. The support page in the portal can include quick API status information. The status could be active, under maintenance, deprecated, or retired. The support page can also include FAQs, notices, or coming soon information of interest to the developer community. Notices could cover latest updates or activities related to the API. Coming-soon information provides a list of upcoming API features. • Search: A search facility within the developer portal is very useful
feature. It helps developers quickly search for information. They can search for APIs of interest, or for specific information within the API catalog, or specific content within the forums or blogs.