# Working with APIs

APIs provide a way to build JReport components and services into other applications, thus integrating JReport with existing platform infrastructure. This chapter is aimed at Java developers wanting to understand how JReport Server works, and how to write Java code that uses the API effectively.

The comprehensive Java doc matrix covering all the classes and methods of the API is available in `<install_root>\help\api`. This chapter of the user guide is an introduction and overview of the APIs so that the vastness of the Java docs will be easier to master.

The technical architecture section reviews specific implementation details about JReport Server. The technical view is different from the product architecture covered in another section of the user guide. This shows the programming elements and processes that exist, rather than the services they provide. The focus is on pointing out Java web application elements and Java servlets and Java programming in the JReport Server product. It introduces the various elements that make up the full JReport API.

The tour of the API section is a high level survey of the JReport Server API. The intent is to show boundaries of interest so that a developer can narrow down the set of APIs to look at when needing to use JReport Server for a particular task.

Beyond that are explanations of use cases, with examples of code.

- Technical architecture
- Tour of the Java API
- Java API for a servlet
- Java API for an application
- JReport Server API
- JReport Catalog API
- JReport Design API
- JReport Result Viewer Bean
- JReport Catalog Bean
- JReport Exit functions