Configuring Web Services
BMC FootPrints Service Core Web Services provide a way for users to access the database over the Internet to retrieve information and to create or edit records. For example, users can search for tickets and they can create and edit tickets.
Records created or edited via Web Services are subject to the same business rules and validations as records created or edited via the web interface. However, required fields are not enforced when using Web Services to create or update a record, and you cannot alter the database structure.
First, you enable Web Services for your system and then enable access to the services for specific Agent and Customer roles. Only the FootPrints internal authentication method is supported.
Security and Web services
Web Services calls should be invoked over a secure channel, such as Secure Socket Layer (SSL). HTTP headers are used for authentication.
You can perform the following tasks via Web Services:
- Search the database (using queries for ticket, address book, history data, and so on).
- List containers, item and field definitions, and Quick Templates.
- Retrieve the details of an item.
- Retrieve a list of items, containers, templates, and so on.
- Create an item (tickets, solutions, contacts, and so on).
- Edit an item.
- Link items.
Each request sent through the API must have a new session.
Users must be authorized Service Core users and be assigned the Web Services permission. Authorized users can view their open issues, use Web Services while logged into the web interface, and run multiple Web Services at the same time.
When you need to identify the container and item type in the service’s arguments list, use the ItemDefinition Id as this ID is unique within the system and the container. You can also identify a Quick Template to be assigned to the affected ticket.
For example, to create workspace records using Quick ticket templates, include the template ID in the XML message. A list of container IDs, their items, and items’ Quick Templates can be obtained via the ListContainerDefinitions, ListItemDefinitions and ListQuickTemplates Web Services.
For editing most record types via Web Services, both the Item Definition ID and Item ID are required as the Item ID is repeated across Item Definitions. You cannot use Record Number, User ID or any other field to identify records.
The exception is editing contact records, where only the Contact Definition ID is required. Also, if the primary key field (such as email) is submitted in the edit request, and a contact with a matching primary key value already exists, that contact will be updated. If no matching contact is found, a new contact is created.
To successfully execute Microsoft’s wsdl.exe program to generate C# Web Services’ proxy classes, both the FootPrints External API WSDL and XSD schema files must be specified in the command line. For example:
wsdl.exe [path]externalapiservices.wsdl [path]externalapiservices_schema.xsd
For detailed information about the SOAP request and response message structure, see the API Web Services definitions attached to this topic.
The WSDL_and_XSD file (also attached to this topic) contains the WSDL and schema for configuring Web Services.
To enable Web Services support
- Click the Administration tab.
- In the System Management section, click Integration > Web Services.
The External API page appears.
- Select Enable availability of external API.
- Click Save.
Web Services are now configured for your system. Internal system-level roles (such as Agents) will automatically have access. You cannot assign Web Services access to Customer roles.