- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-08-2024 09:38 PM
Hi,
In ServiceNow, are there any ways to monitor API requests? Example: I have given our clients 3 table APIs, and I will call them APIs A, B, and C. Now the clients will make requests from those 3 APIs with the GET method, but in the 3 table APIs, the user calls API A, and its table contains a lot of records, and that table also contains many fields, so eventually it makes the other two APIs slow. How can I monitor processes like these that happen in my instance? To know which API is called and takes the most time to process, which can cause slow performance to other APIs being requested at the moment.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-09-2024 09:33 AM
Hi @hacktd,
As @Ravi Gaurav and @DaveMerrett, transaction logs can be used to monitor API's at a granular level. You can see exactly what API has been called, by who, etc. However there are a couple of other area's of the platform I'd recommend you review (Especially the 'Rate Limit' and 'Transaction quota' rules as outlined below)
From a monitoring perspective, take a look at the 'Dashboards' and in particular the 'Web API Usage Overview' for a holistic view.
Importantly however, when exposing API's to client I's strongly recommend implement 'Rate Limit Rules' (Avaialble by typing 'Rate Limits' into the Navigation menu - this will allow you to control the frequesncy of API calls etc and have control over these as well as 'Transaction Quota Rules' which again can help contain overall limits and API call duration so as to protect the core platform.
To help others (or for me to help you more directly), please mark this response correct by clicking on Accept as Solution and/or Kudos.
Thanks, Robbie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-08-2024 11:50 PM
Hi HackTD,
you should be able to view user rest transactions via System Logs > Transactions (all users).
Rest API queries will show with a type of 'Rest' with the actual API\query visible in the URL field.
I hope this information is helpful, there are a few different ways to do things thou so it really depends on your requirements
Cheers
David Merrett
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-09-2024 12:34 AM
Hi @hacktd
The Transaction Log (/syslog_transaction.list) allows you to monitor the API request details such as response times, URLs called, users who made the requests, and the processing time for each request. To access and filter this data:
- Filter by the API endpoint URL or user calling the API.
- Look at the Response Time and Processing Time fields to identify slow APIs
If you found my response helpful, I would greatly appreciate it if you could mark it as "Accepted Solution" and "Helpful."
Your support not only benefits the community but also encourages me to continue assisting. Thank you so much!
Thanks and Regards
Ravi Gaurav | ServiceNow MVP 2025,2024 | ServiceNow Practice Lead | Solution Architect
CGI
M.Tech in Data Science & AI
YouTube: https://www.youtube.com/@learnservicenowwithravi
LinkedIn: https://www.linkedin.com/in/ravi-gaurav-a67542aa/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-09-2024 09:33 AM
Hi @hacktd,
As @Ravi Gaurav and @DaveMerrett, transaction logs can be used to monitor API's at a granular level. You can see exactly what API has been called, by who, etc. However there are a couple of other area's of the platform I'd recommend you review (Especially the 'Rate Limit' and 'Transaction quota' rules as outlined below)
From a monitoring perspective, take a look at the 'Dashboards' and in particular the 'Web API Usage Overview' for a holistic view.
Importantly however, when exposing API's to client I's strongly recommend implement 'Rate Limit Rules' (Avaialble by typing 'Rate Limits' into the Navigation menu - this will allow you to control the frequesncy of API calls etc and have control over these as well as 'Transaction Quota Rules' which again can help contain overall limits and API call duration so as to protect the core platform.
To help others (or for me to help you more directly), please mark this response correct by clicking on Accept as Solution and/or Kudos.
Thanks, Robbie