
SAP Field Service Management exposes multiple Application Programming Interfaces (APIs) that offer many ways to access the data and functionalities of Field Service Management from external systems. These APIs are used by Field Service Management itself, or can be leveraged to support custom integrations and enhancements.
Provided FSM APIs include the following:
- Query API: to query data stored in the SAP Field Service Management Cloud.
- Data API: provides full access to the data stored on the SAP Field Service Management Cloud.
- Bulk API: an extension of the Data API v4 used to create/update and delete resources in bulk.
- Service API: to create, maintain, and process service calls and activities in FSM.
- Reporting API: provides reporting capabilities exposed as a set of web services, based on a Jasper Reports engine.
- Best Matching Technician API: to automatically find the best matching technician for an activity.
- Appointment Booking API: to help find appropriate technicians and appointment times for activities.
- Re-Optimization API: to asynchronously reschedule assigned jobs in an autonomous and optimized manner.
- Crowd Partner API: to invite subcontractors to join the SAP Field Service Management Crowd platform.
- Crowd Technician API: to create and manage the Crowd technicians who accept assignments and complete work as part of the SAP Field Service Management Crowd platform.
- Crowd Partner Dispatching API: to make requests from a third-party application to SAP Field Service Management, to manage activities assigned to a crowd partner.
- Access API: for enabling applications to obtain limited access to SAP Field Service Management.
- User API: to create and manage user records and user access rights for SAP Field Service Management applications.
- SCIM API: based on the System for Cross-domain Identity Management (SCIM), which is an open standard for automating the exchange of user data between different user identity domains.
All FSM APIs use the HTTP protocol and apply the Representational State Transfer (REST) paradigm. A basic understanding of these concepts is necessary to use them.
To consume the APIs, it's recommended to use a specialized tool that provides assistance for API testing, like Postman or Insomnia. Alternatively, a command line tool could be used.
All interactions are based on requests sent from the client system which are then processed by the server system (FSM in this case). After processing the request, the server sends a response with the result, for example the content of the resource that was queried.
Requests and responses contain resources that are exchanged between server and client. A resource is a piece of information that represents an entity in the context of the specific API. The client can query the server for a resource, but also send resources in order to create or update them on server side. In both cases, the server will include the processed resources in its response.
The key to properly interacting with the FSM Cloud APIs lies in the composition of valid HTTP requests that can be processed by the specific API. The structure of an HTTP request consists of three distinct parts:
- Request line
- Header fields
- Message body
While the message body is specific to each API, both request line and header fields share a number of common characteristics in most FSM APIs.