{"id":2727082,"date":"2025-03-10T22:32:46","date_gmt":"2025-03-11T05:32:46","guid":{"rendered":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=2727082"},"modified":"2026-03-14T10:38:20","modified_gmt":"2026-03-14T17:38:20","slug":"extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors","title":{"rendered":"Extend hosted feature services in ArcGIS Enterprise through service interceptors"},"author":207622,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[738191],"tags":[],"industry":[],"product":[36571],"class_list":["post-2727082","blog","type-blog","status-publish","format-standard","hentry","category-developers","product-arcgis-enterprise"],"acf":{"authors":[{"ID":207622,"user_firstname":"Aawaj","user_lastname":"Joshi","nickname":"Aawaj Joshi","user_nicename":"ajoshi","display_name":"Aawaj Joshi","user_email":"ajoshi@esri.com","user_url":"","user_registered":"2021-03-25 20:59:02","user_description":"Aawaj is a Product Engineer on the ArcGIS Enterprise team.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/IMG_6218-1-1-465x465.png' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"},{"ID":394231,"user_firstname":"Pankaj","user_lastname":"Chaudhari","nickname":"Pankaj Chaudhari","user_nicename":"pchaudhari","display_name":"Pankaj Chaudhari","user_email":"PChaudhari@esri.com","user_url":"","user_registered":"2025-08-15 16:39:29","user_description":"Pankaj is a Product Engineer on the ArcGIS Enterprise team. He works on extensibility patterns that help developers extend ArcGIS Enterprise, and on deploying ArcGIS Enterprise on AWS. Outside of work, he enjoys umpiring cricket matches.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/PankajChaudhari-1-1-scaled-e1773509196769-213x200.jpg' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"}],"short_description":"Pankaj Chaudhari offers a glimpse of what can be accomplished with service interceptors in ArcGIS Enterprise.","flexible_content":[{"acf_fc_layout":"content","content":"<p>Have you grown frustrated that you can&#8217;t intercept and modify requests and responses in hosted feature services to automate data filtering, enrichment, and validation? If so, you&#8217;re in luck because you&#8217;ll soon be able to do just that and more through service interceptors.<\/p>\n<p>At this year&#8217;s Developer and Technology Summit plenary, Pankaj Chaudhari offers a glimpse of what can be accomplished with service interceptors.<\/p>\n"},{"acf_fc_layout":"kaltura","video_id":"1_ak8j83yj","time":true,"start":"57","stop":""},{"acf_fc_layout":"content","content":"<p>For his demonstration, Pankaj has built an incident reporting app where users can report non-emergency issues such as noise or sanitation problems and infrastructure damage. The data submitted by users are stored in a hosted feature service.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2727092,"id":2727092,"title":"Pankaj's incident reporting app for reporting non-emergency issues.","filename":"Snag_1bd53141.png","filesize":832208,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd53141.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\/snag_1bd53141","alt":"Pankaj's incident reporting app for reporting non-emergency issues.","author":"207622","description":"","caption":"Pankaj's incident reporting app for reporting non-emergency issues.","name":"snag_1bd53141","status":"inherit","uploaded_to":2727082,"date":"2025-03-11 04:50:04","modified":"2025-03-11 04:51:07","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1827,"height":850,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd53141-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd53141.png","medium-width":464,"medium-height":216,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd53141.png","medium_large-width":768,"medium_large-height":357,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd53141.png","large-width":1827,"large-height":850,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd53141-1536x715.png","1536x1536-width":1536,"1536x1536-height":715,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd53141.png","2048x2048-width":1827,"2048x2048-height":850,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd53141-826x384.png","card_image-width":826,"card_image-height":384,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd53141.png","wide_image-width":1827,"wide_image-height":850}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>As is, the app stores data without any backend validation or enrichment when he creates a new incident report by defining only the incident and location types.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2727102,"id":2727102,"title":"A new incident report containing very little information.","filename":"Snag_1bd73ba7.png","filesize":1079303,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd73ba7.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\/snag_1bd73ba7","alt":"A new incident report containing very little information.","author":"207622","description":"","caption":"A new incident report containing very little information.","name":"snag_1bd73ba7","status":"inherit","uploaded_to":2727082,"date":"2025-03-11 04:52:18","modified":"2025-03-11 04:53:48","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1841,"height":860,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd73ba7-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd73ba7.png","medium-width":464,"medium-height":217,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd73ba7.png","medium_large-width":768,"medium_large-height":359,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd73ba7.png","large-width":1841,"large-height":860,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd73ba7-1536x718.png","1536x1536-width":1536,"1536x1536-height":718,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd73ba7.png","2048x2048-width":1841,"2048x2048-height":860,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd73ba7-826x386.png","card_image-width":826,"card_image-height":386,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bd73ba7.png","wide_image-width":1841,"wide_image-height":860}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>To extend the app with automatic data validation and incident assignment capabilities, Pankaj has created a service interceptor using the <a href=\"https:\/\/developers.arcgis.com\/enterprise-sdk\/\">ArcGIS Enterprise SDK<\/a>.<\/p>\n<p>The program, which is written in Java, begins with an <strong>Interceptor<\/strong> annotation that provides data about the interceptor, including its name, description, and the URL pattern of the associated hosted feature service.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2727112,"id":2727112,"title":"The Interceptor annotation that provides data about the interceptor.","filename":"Snag_1bdca2d5.png","filesize":836705,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bdca2d5.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\/snag_1bdca2d5","alt":"The Interceptor annotation that provides data about the interceptor.","author":"207622","description":"","caption":"The Interceptor annotation that provides data about the interceptor.","name":"snag_1bdca2d5","status":"inherit","uploaded_to":2727082,"date":"2025-03-11 04:58:12","modified":"2025-03-11 04:59:01","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1822,"height":920,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bdca2d5-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bdca2d5.png","medium-width":464,"medium-height":234,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bdca2d5.png","medium_large-width":768,"medium_large-height":388,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bdca2d5.png","large-width":1822,"large-height":920,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bdca2d5-1536x776.png","1536x1536-width":1536,"1536x1536-height":776,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bdca2d5.png","2048x2048-width":1822,"2048x2048-height":920,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bdca2d5-826x417.png","card_image-width":826,"card_image-height":417,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bdca2d5.png","wide_image-width":1822,"wide_image-height":920}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>The key method in his program is the <strong>intercept<\/strong> method, which is executed each time a new report is submitted or a response is sent back to the client.<\/p>\n<p>The method contains custom logic to intercept each incoming request and perform the following tasks:<\/p>\n<ul>\n<li>If the report provides a location, check if it is within city boundaries.<\/li>\n<li>If address details are missing, use reverse geocoding to determine the details and add them to the report.<\/li>\n<li>Based on the type of incident, create a ticket containing the incident ID in the appropriate agency&#8217;s ServiceNow system.<\/li>\n<\/ul>\n<p>Additionally, the method contains the logic to intercept each outgoing response and attach the most recent incident status to it before it&#8217;s sent back to the client.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2727132,"id":2727132,"title":"The intercept method contains custom logic to intercept and modify each incoming request and outgoing response.","filename":"Snag_1be3c5cc.png","filesize":825046,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be3c5cc.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\/snag_1be3c5cc","alt":"The intercept method contains custom logic to intercept and modify each incoming request and outgoing response.","author":"207622","description":"","caption":"The intercept method contains custom logic to intercept and modify each incoming request and outgoing response.","name":"snag_1be3c5cc","status":"inherit","uploaded_to":2727082,"date":"2025-03-11 05:06:00","modified":"2025-03-11 05:08:42","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1824,"height":924,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be3c5cc-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be3c5cc.png","medium-width":464,"medium-height":235,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be3c5cc.png","medium_large-width":768,"medium_large-height":389,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be3c5cc.png","large-width":1824,"large-height":924,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be3c5cc-1536x778.png","1536x1536-width":1536,"1536x1536-height":778,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be3c5cc.png","2048x2048-width":1824,"2048x2048-height":924,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be3c5cc-826x418.png","card_image-width":826,"card_image-height":418,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be3c5cc.png","wide_image-width":1824,"wide_image-height":924}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Pankaj has packaged the project into a <strong>.interceptor<\/strong> file, which needs to be deployed to ArcGIS Server. To do so, he uploads the file and registers it with ArcGIS Server using ArcGIS Server Administrator Directory, and within seconds, the service interceptor is ready for use.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2727142,"id":2727142,"title":"The service interceptor is deployed to ArcGIS Server.","filename":"Snag_1be9ecdf.png","filesize":255187,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be9ecdf.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\/snag_1be9ecdf","alt":"The service interceptor is deployed to ArcGIS Server.","author":"207622","description":"","caption":"The service interceptor is deployed to ArcGIS Server.","name":"snag_1be9ecdf","status":"inherit","uploaded_to":2727082,"date":"2025-03-11 05:12:42","modified":"2025-03-11 05:13:24","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1831,"height":857,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be9ecdf-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be9ecdf.png","medium-width":464,"medium-height":217,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be9ecdf.png","medium_large-width":768,"medium_large-height":359,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be9ecdf.png","large-width":1831,"large-height":857,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be9ecdf-1536x719.png","1536x1536-width":1536,"1536x1536-height":719,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be9ecdf.png","2048x2048-width":1831,"2048x2048-height":857,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be9ecdf-826x387.png","card_image-width":826,"card_image-height":387,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1be9ecdf.png","wide_image-width":1831,"wide_image-height":857}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>To show the service interceptor in action, he reopens the incident reporting app and submits a new report by defining only the incident and location types. He clicks the incident feature on the map to view its details, which the service interceptor has automatically populated to include the address, a unique incident ID, the agency assigned to it, and status.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2727172,"id":2727172,"title":"The service interceptor intercepts and populates the missing data in the incident report.","filename":"Snag_1bf7cd5c.png","filesize":1155506,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf7cd5c.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\/snag_1bf7cd5c","alt":"The service interceptor intercepts and populates the missing data in the incident report.","author":"207622","description":"","caption":"The service interceptor intercepts and populates the missing data in the incident report.","name":"snag_1bf7cd5c","status":"inherit","uploaded_to":2727082,"date":"2025-03-11 05:27:53","modified":"2025-03-11 05:28:08","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1241,"height":1155,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf7cd5c-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf7cd5c.png","medium-width":280,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf7cd5c.png","medium_large-width":768,"medium_large-height":715,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf7cd5c.png","large-width":1160,"large-height":1080,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf7cd5c.png","1536x1536-width":1241,"1536x1536-height":1155,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf7cd5c.png","2048x2048-width":1241,"2048x2048-height":1155,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf7cd5c-500x465.png","card_image-width":500,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf7cd5c-1160x1080.png","wide_image-width":1160,"wide_image-height":1080}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Next, he updates the incident&#8217;s status on the agency&#8217;s ServiceNow system, which triggers the service interceptor to update its status on the app.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2727162,"id":2727162,"title":"The service interceptor intercepts the outgoing response and updates the incident's status on the app.","filename":"Snag_1bf323f1.png","filesize":708183,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf323f1.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\/snag_1bf323f1","alt":"The service interceptor intercepts the outgoing response and updates the incident's status on the app.","author":"207622","description":"","caption":"The service interceptor intercepts the outgoing response and updates the incident's status on the app.","name":"snag_1bf323f1","status":"inherit","uploaded_to":2727082,"date":"2025-03-11 05:22:47","modified":"2025-03-11 05:24:10","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1221,"height":1153,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf323f1-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf323f1.png","medium-width":276,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf323f1.png","medium_large-width":768,"medium_large-height":725,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf323f1.png","large-width":1144,"large-height":1080,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf323f1.png","1536x1536-width":1221,"1536x1536-height":1153,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf323f1.png","2048x2048-width":1221,"2048x2048-height":1153,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf323f1-492x465.png","card_image-width":492,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1bf323f1-1144x1080.png","wide_image-width":1144,"wide_image-height":1080}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>While Pankaj worked with a hosted feature service in his demonstration, service interceptors can be used to intercept and modify requests and responses in any type of service published to ArcGIS Enterprise. It&#8217;s what makes service interceptors a truly powerful tool for automating workflows, enforcing business rules, and enriching responses in real time. Stay tuned for more information and communication about this ongoing project.<\/p>\n"}],"related_articles":"","show_article_image":false,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1d9dca4b.png","wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1d9cbd11.png"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Extend hosted feature services in ArcGIS Enterprise through service interceptors<\/title>\n<meta name=\"description\" content=\"Pankaj Chaudhari offers a glimpse of what can be accomplished with service interceptors in ArcGIS Enterprise.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Extend hosted feature services in ArcGIS Enterprise through service interceptors\" \/>\n<meta property=\"og:description\" content=\"Pankaj Chaudhari offers a glimpse of what can be accomplished with service interceptors in ArcGIS Enterprise.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-14T17:38:20+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\"},\"author\":{\"name\":\"Aawaj Joshi\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/1a05fe13e7f3a2c7350529406f1ad821\"},\"headline\":\"Extend hosted feature services in ArcGIS Enterprise through service interceptors\",\"datePublished\":\"2025-03-11T05:32:46+00:00\",\"dateModified\":\"2026-03-14T17:38:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\"},\"wordCount\":10,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"articleSection\":[\"Developers\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\",\"name\":\"Extend hosted feature services in ArcGIS Enterprise through service interceptors\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2025-03-11T05:32:46+00:00\",\"dateModified\":\"2026-03-14T17:38:20+00:00\",\"description\":\"Pankaj Chaudhari offers a glimpse of what can be accomplished with service interceptors in ArcGIS Enterprise.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Extend hosted feature services in ArcGIS Enterprise through service interceptors\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"name\":\"ArcGIS Blog\",\"description\":\"Get insider info from Esri product teams\",\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\",\"name\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"width\":400,\"height\":400,\"caption\":\"Esri\"},\"image\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/esrigis\/\",\"https:\/\/x.com\/ESRI\",\"https:\/\/www.linkedin.com\/company\/5311\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/1a05fe13e7f3a2c7350529406f1ad821\",\"name\":\"Aawaj Joshi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/IMG_6218-1-1-465x465.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/IMG_6218-1-1-465x465.png\",\"caption\":\"Aawaj Joshi\"},\"description\":\"Aawaj is a Product Engineer on the ArcGIS Enterprise team.\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/ajoshi\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Extend hosted feature services in ArcGIS Enterprise through service interceptors","description":"Pankaj Chaudhari offers a glimpse of what can be accomplished with service interceptors in ArcGIS Enterprise.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors","og_locale":"en_US","og_type":"article","og_title":"Extend hosted feature services in ArcGIS Enterprise through service interceptors","og_description":"Pankaj Chaudhari offers a glimpse of what can be accomplished with service interceptors in ArcGIS Enterprise.","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2026-03-14T17:38:20+00:00","twitter_card":"summary_large_image","twitter_site":"@ESRI","twitter_misc":{"Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors"},"author":{"name":"Aawaj Joshi","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/1a05fe13e7f3a2c7350529406f1ad821"},"headline":"Extend hosted feature services in ArcGIS Enterprise through service interceptors","datePublished":"2025-03-11T05:32:46+00:00","dateModified":"2026-03-14T17:38:20+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors"},"wordCount":10,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"articleSection":["Developers"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors","name":"Extend hosted feature services in ArcGIS Enterprise through service interceptors","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2025-03-11T05:32:46+00:00","dateModified":"2026-03-14T17:38:20+00:00","description":"Pankaj Chaudhari offers a glimpse of what can be accomplished with service interceptors in ArcGIS Enterprise.","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"Extend hosted feature services in ArcGIS Enterprise through service interceptors"}]},{"@type":"WebSite","@id":"https:\/\/www.esri.com\/arcgis-blog\/#website","url":"https:\/\/www.esri.com\/arcgis-blog\/","name":"ArcGIS Blog","description":"Get insider info from Esri product teams","publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization","name":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","width":400,"height":400,"caption":"Esri"},"image":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/esrigis\/","https:\/\/x.com\/ESRI","https:\/\/www.linkedin.com\/company\/5311\/"]},{"@type":"Person","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/1a05fe13e7f3a2c7350529406f1ad821","name":"Aawaj Joshi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/IMG_6218-1-1-465x465.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/IMG_6218-1-1-465x465.png","caption":"Aawaj Joshi"},"description":"Aawaj is a Product Engineer on the ArcGIS Enterprise team.","url":"https:\/\/www.esri.com\/arcgis-blog\/author\/ajoshi"}]}},"text_date":"March 10, 2025","author_name":"Multiple Authors","author_page":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-enterprise\/developers\/extend-hosted-feature-services-in-arcgis-enterprise-through-service-interceptors","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/03\/Snag_1d9cbd11.png","primary_product":"ArcGIS Enterprise","tag_data":[],"category_data":[{"term_id":738191,"name":"Developers","slug":"developers","term_group":0,"term_taxonomy_id":738191,"taxonomy":"category","description":"","parent":0,"count":423,"filter":"raw"}],"product_data":[{"term_id":36571,"name":"ArcGIS Enterprise","slug":"arcgis-enterprise","term_group":0,"term_taxonomy_id":36571,"taxonomy":"product","description":"","parent":0,"count":976,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=arcgis-enterprise","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/2727082","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/users\/207622"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=2727082"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/2727082\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=2727082"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=2727082"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=2727082"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=2727082"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=2727082"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}