18.04.2013 Views

B2B Integration : A Practical Guide to Collaborative E-commerce

B2B Integration : A Practical Guide to Collaborative E-commerce

B2B Integration : A Practical Guide to Collaborative E-commerce

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Integration</strong> Patterns 81<br />

publish interfaces (i.e., they do not support program-level access <strong>to</strong><br />

internal business objects).<br />

Key requirements of an API<br />

There are several essential requirements of an API, which makes it<br />

usable for <strong>B2B</strong>i applications. Some of them are:<br />

Easy <strong>to</strong> Use — An API having even the most advanced functions will<br />

not be accepted well by the users, if its interface is not easy <strong>to</strong> use. The<br />

thumb rule in writing any API should be <strong>to</strong> make it as easy as possible<br />

for the users <strong>to</strong> use it. An API should be well supported through proper<br />

documentation and examples.<br />

Language and Platform Independent — The use of APIs in <strong>B2B</strong>i<br />

applications will be very limited if their use is bound <strong>to</strong> a specific<br />

programming language and platform. Two companies trying <strong>to</strong> integrate<br />

their internal applications using APIs may have the underlying<br />

applications running on different platforms and developed in different<br />

applications. Thus, APIs should be language and platform neutral.<br />

Protect the Underlying Data Sources — The API functions should be<br />

written in such a way so as <strong>to</strong> allow completely direct access <strong>to</strong> any<br />

underlying data sources. This requirement is especially important for<br />

<strong>B2B</strong> applications in which users of one company use APIs <strong>to</strong> access<br />

data from another company. If the APIs mistakenly provide access <strong>to</strong><br />

the data source, the users can maliciously change the data.<br />

Controlled Access — The APIs should provide controlled access <strong>to</strong><br />

each user set. Based on the entitlements of the users, the APIs should<br />

provide restricted functionality in terms of invoking functions.<br />

Support for Multiple Data Sources — APIs should provide support for<br />

different types of databases. The APIs should hide the details of each<br />

database format from the calling program.<br />

Limitations of APIs<br />

There are no industry standards for creating an API. Consequently,<br />

the structure and implementation of APIs can differ significantly

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!