Harsha,
If we take a vanilla API manager distribution and deploy an API there can
we call it an API product?

On Aug 24, 2016 9:27 AM, "Harsha Kumara" <hars...@wso2.com> wrote:

>
>
> On Tue, Aug 23, 2016 at 3:07 PM, Sanjeewa Malalgoda <sanje...@wso2.com>
> wrote:
>
>> Hi All
>>
>> Intention of this mail is to discuss about API product concept and try to
>> evaluate how we can apply this for API Manager. As of now we can bundle
>> APIs together into application at API store and use them. But in this
>> feature we are mainly focus on API publisher side aspect of it(how
>> publishers can bundle set of APIs and present it to application creator).
>> Please find the details below and share your thoughts about them.
>>
>>
>> *Requirement*
>>
>> As an API provider(creator or publisher), you need to create an API
>> product. The API product is the mechanism through which your APIs are
>> bundled and published so that developers can consume them. An API product
>> is a collection of APIs combined with a predefined policy set presented to
>> developers as a bundle(in a way they can subscribe to product and use it).
>>
>> *Proposed Solution*
>>
>> The API product can also include some information specific to your
>> business/product for monitoring or analytics. You can create different
>> products to provide features for different use cases. So instead of just
>> giving developers a list of APIs, you can bundle specific resources
>> together to create a product that solves a specific user need. As example
>> we can consider following use case.
>>
>> Example:
>> Let say we have user information API, credit service API, leasing API.
>> And let say we need to have 2 mobile applications for credit and leasing.
>> Then we can create 2 API products named credit API product and leasing API
>> product(both will share user information API). API products are also a good
>> way to control access to a specific bundle of APIs. For example, you can
>> bundle APIs that can only be accessed by internal developers, or bundle
>> APIs that can only be accessed by paying customers. Please see following
>> diagram to understand this scenario.
>>
>>
>>
>> ​
>>
>>
>>
>>
>> *Implementation Details.**From Publisher's side.*
>> From publisher side we need to let users to create API products like we
>> do for APIs. To do that we may need to provide user interface similar to
>> API create. In this API product creation process we collect following
>> information from product creator.
>>
>>    - Product Name and product specific meta-data.
>>    - List of APIs belong to that product and their tiers used for
>>    product.
>>    - Visibility and subscription availability.
>>    - Tiers and access control related information.
>>    - Life-cycle management for API product.
>>
>> *From store side.*
>> List products same way we list APIs and then let users to subscribe for
>> API Products. Once we go to subscription users should be able to see apis
>> and api products belong to application. Also when we go to specific API
>> product then we should be able to see all APIs belong to that API and
>> selectively go through them. We will not be able to have single swagger
>> file or wadl for complete API product as it shares multiple APIs.
>>
>> *Gateway Side.*
>> For the throttling we need to do some improvements to throttle API
>> product level requests. While doing throttling we need to consider number
>> of requests allocated for API product as well and then consider that for
>> throttling.
>>
> I think we need to introduce new throttling scheme for API products when
> someone going to subscribe to a API product. In default scenario, we show
> what are the available subscription tiers for API when user going to
> subscribe to a API. But for a API product, it will contains multiple APIs.
> Hence we need to have a way to define allowed throttling tiers for API
> product. Which will be show when user going to subscribe to API product.
> But I think, we also need to think, what are the available subscription
> level throttling tiers defined by underline APIs.
>
> *Key Manager side.*
>> While validating subscription we can check API level subscription and API
>> product level subscription both.
>>
>> Please share your thoughts on this.
>>
>> Thanks,
>> sanjeewa.
>>
>> --
>>
>> *Sanjeewa Malalgoda*
>> WSO2 Inc.
>> Mobile : +94713068779
>>
>> <http://sanjeewamalalgoda.blogspot.com/>blog
>> :http://sanjeewamalalgoda.blogspot.com/
>> <http://sanjeewamalalgoda.blogspot.com/>
>>
>>
>>
>> _______________________________________________
>> Architecture mailing list
>> Architecture@wso2.org
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
> Harsha Kumara
> Software Engineer, WSO2 Inc.
> Mobile: +94775505618
> Blog:harshcreationz.blogspot.com
>
> _______________________________________________
> Architecture mailing list
> Architecture@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>
_______________________________________________
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to