In open API projects, portals with social publishing features are increasingly being used for communication with the outside world. This includes communicating static content like API documentation and terms-of-use, as well as dynamic, community-contributed content like blogs and forums. Use of social publishing features like blogs and forums enables collaboration between the enterprise and the outside world.
The developer portal is a template portal provided by Apigee for content and community management. API providers can use this portal to quickly build and launch their own customized developer portal. The portal is based on the open source Drupal (http://www.drupal.org) project. The initial set up allows API providers to present and manage API documentation, forums, and blogs. A built-in test console allows API call tracing in real time from within the portal. In addition to content-related capabilities, the developer portal has various community management features, such as manual or automatic user registration, and moderating user comments. A Role Based Access Control (RBAC) model controls access to features on the portal. For example, an administrator can enable controls to allow a registered user to create forum posts or use test consoles.
You can customize the developer portal to meet your specific requirements. Your customized developer portal can meet that objective by providing:
- Easy access to the API
- Documentation, such as API-related how-to guides and reference documents
- Community-contributed content such as blogs and discussion forums
- Sample code
- An easy sign-up process in which new developers, apps, and APIs can be approved quickly
- Managed rights and credentials
- Tiered access control
Remember that the objective of a developer portal is to help developers succeed quickly in using your API, so make sure that your customized portal is easy to use.
As a base, the developer portal provides a starting point. For example, it's set up to allow anyone to register, and developers are automatically authorized after registration. After registration, the developer creates an app and uses it to access API resources. The steps in the process look like this:
- The developer registers through the developer portal. In response, Apigee creates and approves a user's account for the developer. No administrator action is needed.
- The developer creates an app and selects an API product (a collection of API resources) to use. In response, Apigee assigns a unique key to the app.
- The app accesses API resources by passing the key to Apigee.
You can override the default registration and authorization scheme so that an administrator manually performs registration or authorization.
You can also customize the content presented by the developer portal. Notice that the developer portal presents sample content such as API documentation, blog posts, and forum discussions. Each type of content is a placeholder for you to add actual content related to your API.
Learn more about customizing the developer portal in Set up your developer portal.
Developers use your developer portal to learn about and use your API. However, administrators also use the developer portal to perform various user account management tasks, such as:
- Adding a user: By default, any developer can register through the developer portal and is automatically approved. However, if your customized developer portal overrides automatic approval, you must approve the developer's user account. You need to register developers if your developer portal restricts registration in that way.
- Changing a user's account: For example, you can change the user's account status from active to blocked.
- Removing a user: You can disable or delete a user's account. You also have various options regarding the disposition of content that belongs to the user account.
- Assigning roles and permissions: You can assign a specific role to a user account. A role is associated with various permissions, such as permission to create books or other content. You can also change the permissions associated with a role.
Learn how to perform these user account management tasks in Manage Users and Roles.
Here is a summary of the developer portal features.
|User Registration||Manual or automatic approval
|My Profile Page||Custom reports for developers and applications|
|Portal Customizations||Via CSS and images or independent Drupal consultants or companies|
|Content and Community Management||Open source (Drupal) based
Template-based content creation
Content types available out-of-the-box for API documentation, blogs, forum, FAQ
Search specific content. For example Forum
Automated links for Del.icio.us, Digg, Twitter
Revision control for content
Tags, keywords, and archive for blogs
Integration with Google analytics
Customizable popularity criteria for content
Admin moderated forum posts and comments
Different access based on custom roles, signed-in, and anonymous user