Exploring the MAS Administration API

Nov 6, 2023 | Maximo Configuration, Resource Library, TRM Blog | 0 comments

John Q. Todd

Sr. Business Consultant/Product Researcher

Total Resource Management (TRM), Inc.

Maximo has had a published API for many years. Most often used for interfacing with external systems, the REST API continues to grow in its utility. Now, with all components of Maximo Application Suite (MAS) having their own APIs, it makes sense that the API specifically for administrative actions would be enhanced.

What does it enable?

As you would imagine, the API exposes a subset of activities the typical Administrator would perform on an instance of MAS. Not everything you can do as an Admin via the MAS user/admin interface can be accessed via the API, but the most common tasks are. Now you can develop your own applications, or even expose some Admin tasks to your Users!

It is rather a long list of “areas” the Administration API exposes (as of MAS 8.11), but it is worth a look so you can quickly find the few that may be of most use to you:

  • Get environment configuration
  • API Key management
  • Application management
  • AppConnect configuration
  • Licensing management
  • Business Analytics Service (BAS) integration
  • Suite Licensing Service (SLS) integration
  • External IDP integration
  • JDBC configuration
  • Kafka configuration
  • Mongo configuration
  • Object Storage configuration
  • Push Notification configuration
  • Message customization
  • User Management
  • User Registry sync
  • SMTP integration
  • SSO configuration
  • Idle Timeout configuration
  • Watson Studio configuration
  • Graphite Package configuration
  • Utilities
  • Workspace management

Whew… quite the list.

Where to begin?

If some of the terms used in the list above are new to you… like Mongo… then you might want to spend a little time learning more about the architecture of MAS. With MAS running on top of RHOS, there are many new things to learn about.

Start by getting yourself a copy of Postman or your favorite REST request tool, and then be sure to assign your User account an API Key to your MAS instance. (API Key app under Manage or via MAS Administration.)

For your first REST request, do this to get your environment configuration:

GET https://api.{your MAS instance id here}.{your MAS domain here} /about

What you get back (the response) is information about the MAS installation:

200 – A good response – no errors

On and on…

Once you understand the syntax of the Admin API REST request… https://api.xxxxxxxx, it is a simple matter of then understanding the syntax and commands for each of the API areas and actions.

Remember… a GET is asking for a read-only response, and a PUT is where you are attempting to write new information.

Make it do something – Add a New User

Ok, yes, it is an easy thing to add a new user to MAS via the MAS Administration site. But what if you wanted to provide some self-service or automation for that process? What if you wanted to collect a bunch of metadata about the new User first, and then create their record? What if you wanted to automate the forms/approval process for new hires onboarding?

Here is where the horizons are wide open for you to develop your own “User” app. Part of the app will most likely be a REST request… a POST… to create the new User record. What else your user app does is up to you.

If you open the API documentation into the User Management section, you can see there are many tasks that the API can be called upon to perform:

  • Add a new user
  • Get user information
  • Update users
  • Change user status
  • Change user password
  • Bulk load new users
  • Etc.

Warning!

Make sure you know which of your systems… Test, QA, Production… you are executing these commands upon! Nothing worse than thinking you are on Test when you are on Prod. We have all received those annoying phone calls just after we did that, “one more thing,” before shutting down for the weekend.

Consider too, specific to using the MAS Manage API… Manage provides interaction with the API and the underlying data via the MXAPIxxxx Object Structures. Just like an interface, the Mobile applications (and the Work Centers of the past) interact with these structures to pass data back and forth. Mobile users are granted the necessary access to these Object Structures via the Security Groups settings. (Mobile apps are just like any other interface using the API.) Your home-grown applications can interact with these structures via REST requests as well.

Wrap up

If you peruse sites such as the IBM TechXchange, you will find sample code that others have created to take advantage of the MAS Administration API. Before you spend hours of frustration, look to see what others have come up with.

TRM has been working with the Maximo API for many years and for many different purposes. Let us know how we might help you.

Share

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *