Hi All,

When we create and publish a WSDL-based API in Store, we need to expose the
WSDL so that the users of the API can create clients using the WSDL and use
the API easily. But before doing that, we need to re-write the endpoint
URLs in the WSDL with APIM Gateway endpoint URLs.

With the gateway labeling feature, APIs can be labeled with
multiple labels where each label can be associated with a gateway. So when
we re-writing endpoints, based on the label we have multiple options.

Me, Harsha, Pubudu and Tharindu had a discussion about this so we thought
of exposing an API in Store like below. This is similar to what we were
going to expose the /swagger based on the label.

GET /apis/{apiId}/wsdl[?labelName=abc]

When we save the API in publisher, the raw WSDL will be saved in the
database. Unlike in C4, *we will have to dynamically generate the WSDL
based on the label name* we are providing. However, it will not be a
mandatory parameter.

When someone did not specify the labelName, we can remove the <service>
sections of the WSDL and expose the rest of the WSDL.

*Publisher*

When exposing the WSDL in Publisher, we can use below without using any
labeling and we can expose the original WSDL:

GET /apis/{apiId}/wsdl

Please let me know if you have any ideas/concerns on this.

Thanks!
Malintha

-- 
Malintha Amarasinghe
Software Engineer
*WSO2, Inc. - lean | enterprise | middleware*
http://wso2.com/

Mobile : +94 712383306
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to