fix(sap-concur): drop SCIM list_users filter param (not supported on v4.1 GET)

SCIM Identity v4.1 GET /Users does not accept a filter query parameter — filtering
is only supported via POST /Users/.search (already exposed by sap_concur_search_users).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Waleed Latif
2026-05-06 19:23:58 -07:00
co-authored by Claude Opus 4.7
parent 6f8b574af0
commit 6cc326b487
6 changed files with 6 additions and 44 deletions
+2 -22
View File
@@ -44,8 +44,6 @@ const EXPENSE_READ_CONTEXT_TYPE_OPS = [
'sap_concur_list_expenses',
'sap_concur_get_expense',
'sap_concur_get_itemizations',
'sap_concur_create_report_comment',
'sap_concur_list_report_comments',
'sap_concur_list_exceptions',
]
@@ -60,6 +58,8 @@ const ATTENDEE_CONTEXT_TYPE_OPS = [
'sap_concur_list_attendee_associations',
'sap_concur_associate_attendees',
'sap_concur_remove_all_attendees',
'sap_concur_create_report_comment',
'sap_concur_list_report_comments',
]
const ALLOCATION_CONTEXT_TYPE_OPS = [
@@ -1104,18 +1104,6 @@ export const SapConcurBlock: BlockConfig<SapConcurProxyResponse> = {
placeholder: '200',
condition: { field: 'operation', value: 'sap_concur_list_travel_profiles_summary' },
},
{
id: 'travelProfileActive',
title: 'Active Filter',
type: 'dropdown',
options: [
{ label: 'Any', id: '' },
{ label: 'Active', id: '1' },
{ label: 'Inactive', id: '0' },
],
value: () => '',
condition: { field: 'operation', value: 'sap_concur_list_travel_profiles_summary' },
},
{
id: 'travelConfigs',
title: 'Travel Config IDs',
@@ -1721,10 +1709,6 @@ export const SapConcurBlock: BlockConfig<SapConcurProxyResponse> = {
lastModifiedDate: params.lastModifiedDate,
page: params.travelProfilePage ? Number(params.travelProfilePage) : undefined,
itemsPerPage: params.itemsPerPage ? Number(params.itemsPerPage) : undefined,
active:
params.travelProfileActive === '1' || params.travelProfileActive === '0'
? params.travelProfileActive
: undefined,
travelConfigs: params.travelConfigs || undefined,
}
case 'sap_concur_search_locations':
@@ -1885,10 +1869,6 @@ export const SapConcurBlock: BlockConfig<SapConcurProxyResponse> = {
page: { type: 'number', description: 'Page number (lists/list_items)' },
travelProfilePage: { type: 'number', description: 'Profile summary page number' },
itemsPerPage: { type: 'number', description: 'Profile summary items per page' },
travelProfileActive: {
type: 'string',
description: 'Active filter ("1" for active, "0" for inactive)',
},
travelConfigs: { type: 'string', description: 'Comma-separated travel config ids' },
searchText: { type: 'string', description: 'Locations v5 free-text search' },
locCode: { type: 'string', description: 'Locations v5 location code' },
@@ -69,7 +69,7 @@ export const createReportCommentTool: ToolConfig<
type: 'string',
required: true,
visibility: 'user-or-llm',
description: 'Access context: TRAVELER, MANAGER, or PROXY',
description: 'Access context: TRAVELER or PROXY',
},
reportId: {
type: 'string',
@@ -68,7 +68,7 @@ export const listReportCommentsTool: ToolConfig<ListReportCommentsParams, SapCon
type: 'string',
required: true,
visibility: 'user-or-llm',
description: 'Access context: TRAVELER, MANAGER, or PROXY',
description: 'Access context: TRAVELER or PROXY',
},
reportId: {
type: 'string',
@@ -81,13 +81,6 @@ export const listTravelProfilesSummaryTool: ToolConfig<
visibility: 'user-or-llm',
description: 'Items per page (max 200)',
},
active: {
type: 'string',
required: false,
visibility: 'user-or-llm',
description:
'Active filter (sent as Active query param): "1" (active) or "0" (inactive). Omit for all.',
},
travelConfigs: {
type: 'string',
required: false,
@@ -105,7 +98,6 @@ export const listTravelProfilesSummaryTool: ToolConfig<
LastModifiedDate: lastModifiedDate,
Page: params.page,
ItemsPerPage: params.itemsPerPage,
Active: params.active,
travelConfigs: params.travelConfigs,
})
return {
-8
View File
@@ -68,13 +68,6 @@ export const listUsersTool: ToolConfig<ListUsersParams, SapConcurProxyResponse>
visibility: 'user-or-llm',
description: 'SCIM v4.1 pagination cursor returned by a prior call',
},
filter: {
type: 'string',
required: false,
visibility: 'user-or-llm',
description:
'SCIM filter expression. Supported attributes: userName, employeeNumber, externalId.',
},
attributes: {
type: 'string',
required: false,
@@ -99,7 +92,6 @@ export const listUsersTool: ToolConfig<ListUsersParams, SapConcurProxyResponse>
query: buildListQuery({
count: params.count,
cursor: params.cursor,
filter: params.filter,
attributes: params.attributes,
excludedAttributes: params.excludedAttributes,
}),
+2 -4
View File
@@ -178,14 +178,14 @@ export interface RemoveAllAttendeesParams extends SapConcurBaseParams {
export interface ListReportCommentsParams extends SapConcurBaseParams {
userId: string
contextType: 'TRAVELER' | 'MANAGER' | 'PROXY'
contextType: 'TRAVELER' | 'PROXY'
reportId: string
includeAllComments?: boolean
}
export interface CreateReportCommentParams extends SapConcurBaseParams {
userId: string
contextType: 'TRAVELER' | 'MANAGER' | 'PROXY'
contextType: 'TRAVELER' | 'PROXY'
reportId: string
comment: string
}
@@ -327,7 +327,6 @@ export interface GetItineraryParams extends SapConcurBaseParams {
export interface ListUsersParams extends SapConcurBaseParams {
count?: number
cursor?: string
filter?: string
attributes?: string
excludedAttributes?: string
}
@@ -366,7 +365,6 @@ export interface ListTravelProfilesSummaryParams extends SapConcurBaseParams {
lastModifiedDate: string
page?: number
itemsPerPage?: number
active?: 'Active' | 'Inactive'
travelConfigs?: string
}