@connectedxm/admin-sdk 11.9.1 → 11.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1120,6 +1120,7 @@ docs/ImageWCopyUri.md
1120
1120
  docs/Import.md
1121
1121
  docs/ImportAllOfCount.md
1122
1122
  docs/ImportCreateInputs.md
1123
+ docs/ImportEventPassAttributes200Response.md
1123
1124
  docs/ImportItem.md
1124
1125
  docs/ImportItemStatus.md
1125
1126
  docs/ImportRooms200Response.md
@@ -1284,6 +1285,10 @@ docs/OrganizationWebhooksApi.md
1284
1285
  docs/PageType.md
1285
1286
  docs/PassAddOn.md
1286
1287
  docs/PassAttribute.md
1288
+ docs/PassAttributeImportResult.md
1289
+ docs/PassAttributeImportSummary.md
1290
+ docs/PassAttributesImportInputs.md
1291
+ docs/PassAttributesImportInputsRowsInner.md
1287
1292
  docs/PassAttributesUpdateInputs.md
1288
1293
  docs/PassAttributesUpdateInputsValuesInner.md
1289
1294
  docs/PassChange.md
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- ## @connectedxm/admin-sdk@11.9.1
1
+ ## @connectedxm/admin-sdk@11.11.0
2
2
 
3
3
  This generator creates TypeScript/JavaScript client that utilizes [axios](https://github.com/axios/axios). The generated Node module can be used in the following environments:
4
4
 
@@ -36,7 +36,7 @@ navigate to the folder of your consuming project and run one of the following co
36
36
  _published:_
37
37
 
38
38
  ```
39
- npm install @connectedxm/admin-sdk@11.9.1 --save
39
+ npm install @connectedxm/admin-sdk@11.11.0 --save
40
40
  ```
41
41
 
42
42
  _unPublished (not recommended):_
package/api.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * Connected Admin API
5
5
  * The Admin API allows you to manage your Connected community programmatically.
6
6
  *
7
- * The version of the OpenAPI document: 11.9.1
7
+ * The version of the OpenAPI document: 11.11.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -10831,6 +10831,16 @@ export interface ImportCreateInputs {
10831
10831
  }
10832
10832
 
10833
10833
 
10834
+ export interface ImportEventPassAttributes200Response {
10835
+ 'status': ImportEventPassAttributes200ResponseStatusEnum;
10836
+ 'message': string;
10837
+ 'data': PassAttributeImportSummary;
10838
+ }
10839
+
10840
+ export enum ImportEventPassAttributes200ResponseStatusEnum {
10841
+ Ok = 'ok'
10842
+ }
10843
+
10834
10844
  export interface ImportItem {
10835
10845
  'id': string;
10836
10846
  'importId': string;
@@ -12383,6 +12393,32 @@ export interface PassAttribute {
12383
12393
  'createdAt': string;
12384
12394
  'updatedAt': string;
12385
12395
  }
12396
+ export interface PassAttributeImportResult {
12397
+ 'index': number;
12398
+ 'passId': string;
12399
+ 'status': PassAttributeImportResultStatusEnum;
12400
+ 'message': string | null;
12401
+ }
12402
+
12403
+ export enum PassAttributeImportResultStatusEnum {
12404
+ Resolved = 'resolved',
12405
+ Invalid = 'invalid'
12406
+ }
12407
+
12408
+ export interface PassAttributeImportSummary {
12409
+ 'created': number;
12410
+ 'updated': number;
12411
+ 'unchanged': number;
12412
+ 'conflicted': number;
12413
+ 'results': Array<PassAttributeImportResult>;
12414
+ }
12415
+ export interface PassAttributesImportInputs {
12416
+ 'rows': Array<PassAttributesImportInputsRowsInner>;
12417
+ }
12418
+ export interface PassAttributesImportInputsRowsInner {
12419
+ 'passId': string;
12420
+ 'values': Array<PassAttributesUpdateInputsValuesInner>;
12421
+ }
12386
12422
  export interface PassAttributesUpdateInputs {
12387
12423
  'values': Array<PassAttributesUpdateInputsValuesInner>;
12388
12424
  }
@@ -67262,6 +67298,51 @@ export const EventsPassesAttributesApiAxiosParamCreator = function (configuratio
67262
67298
  options: localVarRequestOptions,
67263
67299
  };
67264
67300
  },
67301
+ /**
67302
+ * Creates or updates attribute values on up to 500 passes in one call, the write half of a CSV import. Each row\'s passId may be a pass id or the pass\'s alternateId, and each attributeId may be an attribute id or its name. Rows whose pass or attribute cannot be resolved are reported back as invalid and skipped rather than failing the batch. Requires read permission on events and read/update permission on attendees.
67303
+ * @summary Bulk set custom attribute values across many passes
67304
+ * @param {string} eventId The event identifier
67305
+ * @param {PassAttributesImportInputs} passAttributesImportInputs
67306
+ * @param {*} [options] Override http request option.
67307
+ * @throws {RequiredError}
67308
+ */
67309
+ importEventPassAttributes: async (eventId: string, passAttributesImportInputs: PassAttributesImportInputs, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
67310
+ // verify required parameter 'eventId' is not null or undefined
67311
+ assertParamExists('importEventPassAttributes', 'eventId', eventId)
67312
+ // verify required parameter 'passAttributesImportInputs' is not null or undefined
67313
+ assertParamExists('importEventPassAttributes', 'passAttributesImportInputs', passAttributesImportInputs)
67314
+ const localVarPath = `/events/{eventId}/passes/attributes/import`
67315
+ .replace('{eventId}', encodeURIComponent(String(eventId)));
67316
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
67317
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
67318
+ let baseOptions;
67319
+ if (configuration) {
67320
+ baseOptions = configuration.baseOptions;
67321
+ }
67322
+
67323
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
67324
+ const localVarHeaderParameter = {} as any;
67325
+ const localVarQueryParameter = {} as any;
67326
+
67327
+ // authentication ApiKeyAuth required
67328
+ await setApiKeyToObject(localVarHeaderParameter, "api-key", configuration)
67329
+
67330
+ // authentication OrganizationId required
67331
+ await setApiKeyToObject(localVarHeaderParameter, "organization", configuration)
67332
+
67333
+ localVarHeaderParameter['Content-Type'] = 'application/json';
67334
+ localVarHeaderParameter['Accept'] = 'application/json';
67335
+
67336
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
67337
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
67338
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
67339
+ localVarRequestOptions.data = serializeDataIfNeeded(passAttributesImportInputs, localVarRequestOptions, configuration)
67340
+
67341
+ return {
67342
+ url: toPathString(localVarUrlObj),
67343
+ options: localVarRequestOptions,
67344
+ };
67345
+ },
67265
67346
  /**
67266
67347
  * Deletes a single custom attribute value that had been set on the specified event pass, requires read permission on events and read/update permission on attendees.
67267
67348
  * @summary Remove a custom attribute from a pass
@@ -67386,6 +67467,20 @@ export const EventsPassesAttributesApiFp = function(configuration?: Configuratio
67386
67467
  const localVarOperationServerBasePath = operationServerMap['EventsPassesAttributesApi.getEventPassAttributes']?.[localVarOperationServerIndex]?.url;
67387
67468
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
67388
67469
  },
67470
+ /**
67471
+ * Creates or updates attribute values on up to 500 passes in one call, the write half of a CSV import. Each row\'s passId may be a pass id or the pass\'s alternateId, and each attributeId may be an attribute id or its name. Rows whose pass or attribute cannot be resolved are reported back as invalid and skipped rather than failing the batch. Requires read permission on events and read/update permission on attendees.
67472
+ * @summary Bulk set custom attribute values across many passes
67473
+ * @param {string} eventId The event identifier
67474
+ * @param {PassAttributesImportInputs} passAttributesImportInputs
67475
+ * @param {*} [options] Override http request option.
67476
+ * @throws {RequiredError}
67477
+ */
67478
+ async importEventPassAttributes(eventId: string, passAttributesImportInputs: PassAttributesImportInputs, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ImportEventPassAttributes200Response>> {
67479
+ const localVarAxiosArgs = await localVarAxiosParamCreator.importEventPassAttributes(eventId, passAttributesImportInputs, options);
67480
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
67481
+ const localVarOperationServerBasePath = operationServerMap['EventsPassesAttributesApi.importEventPassAttributes']?.[localVarOperationServerIndex]?.url;
67482
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
67483
+ },
67389
67484
  /**
67390
67485
  * Deletes a single custom attribute value that had been set on the specified event pass, requires read permission on events and read/update permission on attendees.
67391
67486
  * @summary Remove a custom attribute from a pass
@@ -67435,6 +67530,16 @@ export const EventsPassesAttributesApiFactory = function (configuration?: Config
67435
67530
  getEventPassAttributes(requestParameters: EventsPassesAttributesApiGetEventPassAttributesRequest, options?: RawAxiosRequestConfig): AxiosPromise<GetEventPassAttributes200Response> {
67436
67531
  return localVarFp.getEventPassAttributes(requestParameters.eventId, requestParameters.passId, requestParameters.page, requestParameters.pageSize, requestParameters.orderBy, requestParameters.search, options).then((request) => request(axios, basePath));
67437
67532
  },
67533
+ /**
67534
+ * Creates or updates attribute values on up to 500 passes in one call, the write half of a CSV import. Each row\'s passId may be a pass id or the pass\'s alternateId, and each attributeId may be an attribute id or its name. Rows whose pass or attribute cannot be resolved are reported back as invalid and skipped rather than failing the batch. Requires read permission on events and read/update permission on attendees.
67535
+ * @summary Bulk set custom attribute values across many passes
67536
+ * @param {EventsPassesAttributesApiImportEventPassAttributesRequest} requestParameters Request parameters.
67537
+ * @param {*} [options] Override http request option.
67538
+ * @throws {RequiredError}
67539
+ */
67540
+ importEventPassAttributes(requestParameters: EventsPassesAttributesApiImportEventPassAttributesRequest, options?: RawAxiosRequestConfig): AxiosPromise<ImportEventPassAttributes200Response> {
67541
+ return localVarFp.importEventPassAttributes(requestParameters.eventId, requestParameters.passAttributesImportInputs, options).then((request) => request(axios, basePath));
67542
+ },
67438
67543
  /**
67439
67544
  * Deletes a single custom attribute value that had been set on the specified event pass, requires read permission on events and read/update permission on attendees.
67440
67545
  * @summary Remove a custom attribute from a pass
@@ -67493,6 +67598,18 @@ export interface EventsPassesAttributesApiGetEventPassAttributesRequest {
67493
67598
  readonly search?: string
67494
67599
  }
67495
67600
 
67601
+ /**
67602
+ * Request parameters for importEventPassAttributes operation in EventsPassesAttributesApi.
67603
+ */
67604
+ export interface EventsPassesAttributesApiImportEventPassAttributesRequest {
67605
+ /**
67606
+ * The event identifier
67607
+ */
67608
+ readonly eventId: string
67609
+
67610
+ readonly passAttributesImportInputs: PassAttributesImportInputs
67611
+ }
67612
+
67496
67613
  /**
67497
67614
  * Request parameters for removeEventPassAttribute operation in EventsPassesAttributesApi.
67498
67615
  */
@@ -67545,6 +67662,17 @@ export class EventsPassesAttributesApi extends BaseAPI {
67545
67662
  return EventsPassesAttributesApiFp(this.configuration).getEventPassAttributes(requestParameters.eventId, requestParameters.passId, requestParameters.page, requestParameters.pageSize, requestParameters.orderBy, requestParameters.search, options).then((request) => request(this.axios, this.basePath));
67546
67663
  }
67547
67664
 
67665
+ /**
67666
+ * Creates or updates attribute values on up to 500 passes in one call, the write half of a CSV import. Each row\'s passId may be a pass id or the pass\'s alternateId, and each attributeId may be an attribute id or its name. Rows whose pass or attribute cannot be resolved are reported back as invalid and skipped rather than failing the batch. Requires read permission on events and read/update permission on attendees.
67667
+ * @summary Bulk set custom attribute values across many passes
67668
+ * @param {EventsPassesAttributesApiImportEventPassAttributesRequest} requestParameters Request parameters.
67669
+ * @param {*} [options] Override http request option.
67670
+ * @throws {RequiredError}
67671
+ */
67672
+ public importEventPassAttributes(requestParameters: EventsPassesAttributesApiImportEventPassAttributesRequest, options?: RawAxiosRequestConfig) {
67673
+ return EventsPassesAttributesApiFp(this.configuration).importEventPassAttributes(requestParameters.eventId, requestParameters.passAttributesImportInputs, options).then((request) => request(this.axios, this.basePath));
67674
+ }
67675
+
67548
67676
  /**
67549
67677
  * Deletes a single custom attribute value that had been set on the specified event pass, requires read permission on events and read/update permission on attendees.
67550
67678
  * @summary Remove a custom attribute from a pass
package/base.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * Connected Admin API
5
5
  * The Admin API allows you to manage your Connected community programmatically.
6
6
  *
7
- * The version of the OpenAPI document: 11.9.1
7
+ * The version of the OpenAPI document: 11.11.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/common.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * Connected Admin API
5
5
  * The Admin API allows you to manage your Connected community programmatically.
6
6
  *
7
- * The version of the OpenAPI document: 11.9.1
7
+ * The version of the OpenAPI document: 11.11.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/configuration.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  * Connected Admin API
4
4
  * The Admin API allows you to manage your Connected community programmatically.
5
5
  *
6
- * The version of the OpenAPI document: 11.9.1
6
+ * The version of the OpenAPI document: 11.11.0
7
7
  *
8
8
  *
9
9
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/api.d.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * Connected Admin API
3
3
  * The Admin API allows you to manage your Connected community programmatically.
4
4
  *
5
- * The version of the OpenAPI document: 11.9.1
5
+ * The version of the OpenAPI document: 11.11.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -9561,6 +9561,14 @@ export interface ImportCreateInputs {
9561
9561
  'values'?: Array<AddEventAccessUserRequest> | null;
9562
9562
  'type'?: ImportType | null;
9563
9563
  }
9564
+ export interface ImportEventPassAttributes200Response {
9565
+ 'status': ImportEventPassAttributes200ResponseStatusEnum;
9566
+ 'message': string;
9567
+ 'data': PassAttributeImportSummary;
9568
+ }
9569
+ export declare enum ImportEventPassAttributes200ResponseStatusEnum {
9570
+ Ok = "ok"
9571
+ }
9564
9572
  export interface ImportItem {
9565
9573
  'id': string;
9566
9574
  'importId': string;
@@ -10999,6 +11007,30 @@ export interface PassAttribute {
10999
11007
  'createdAt': string;
11000
11008
  'updatedAt': string;
11001
11009
  }
11010
+ export interface PassAttributeImportResult {
11011
+ 'index': number;
11012
+ 'passId': string;
11013
+ 'status': PassAttributeImportResultStatusEnum;
11014
+ 'message': string | null;
11015
+ }
11016
+ export declare enum PassAttributeImportResultStatusEnum {
11017
+ Resolved = "resolved",
11018
+ Invalid = "invalid"
11019
+ }
11020
+ export interface PassAttributeImportSummary {
11021
+ 'created': number;
11022
+ 'updated': number;
11023
+ 'unchanged': number;
11024
+ 'conflicted': number;
11025
+ 'results': Array<PassAttributeImportResult>;
11026
+ }
11027
+ export interface PassAttributesImportInputs {
11028
+ 'rows': Array<PassAttributesImportInputsRowsInner>;
11029
+ }
11030
+ export interface PassAttributesImportInputsRowsInner {
11031
+ 'passId': string;
11032
+ 'values': Array<PassAttributesUpdateInputsValuesInner>;
11033
+ }
11002
11034
  export interface PassAttributesUpdateInputs {
11003
11035
  'values': Array<PassAttributesUpdateInputsValuesInner>;
11004
11036
  }
@@ -39951,6 +39983,15 @@ export declare const EventsPassesAttributesApiAxiosParamCreator: (configuration?
39951
39983
  * @throws {RequiredError}
39952
39984
  */
39953
39985
  getEventPassAttributes: (eventId: string, passId: string, page?: number, pageSize?: number, orderBy?: string, search?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
39986
+ /**
39987
+ * Creates or updates attribute values on up to 500 passes in one call, the write half of a CSV import. Each row\'s passId may be a pass id or the pass\'s alternateId, and each attributeId may be an attribute id or its name. Rows whose pass or attribute cannot be resolved are reported back as invalid and skipped rather than failing the batch. Requires read permission on events and read/update permission on attendees.
39988
+ * @summary Bulk set custom attribute values across many passes
39989
+ * @param {string} eventId The event identifier
39990
+ * @param {PassAttributesImportInputs} passAttributesImportInputs
39991
+ * @param {*} [options] Override http request option.
39992
+ * @throws {RequiredError}
39993
+ */
39994
+ importEventPassAttributes: (eventId: string, passAttributesImportInputs: PassAttributesImportInputs, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
39954
39995
  /**
39955
39996
  * Deletes a single custom attribute value that had been set on the specified event pass, requires read permission on events and read/update permission on attendees.
39956
39997
  * @summary Remove a custom attribute from a pass
@@ -39989,6 +40030,15 @@ export declare const EventsPassesAttributesApiFp: (configuration?: Configuration
39989
40030
  * @throws {RequiredError}
39990
40031
  */
39991
40032
  getEventPassAttributes(eventId: string, passId: string, page?: number, pageSize?: number, orderBy?: string, search?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetEventPassAttributes200Response>>;
40033
+ /**
40034
+ * Creates or updates attribute values on up to 500 passes in one call, the write half of a CSV import. Each row\'s passId may be a pass id or the pass\'s alternateId, and each attributeId may be an attribute id or its name. Rows whose pass or attribute cannot be resolved are reported back as invalid and skipped rather than failing the batch. Requires read permission on events and read/update permission on attendees.
40035
+ * @summary Bulk set custom attribute values across many passes
40036
+ * @param {string} eventId The event identifier
40037
+ * @param {PassAttributesImportInputs} passAttributesImportInputs
40038
+ * @param {*} [options] Override http request option.
40039
+ * @throws {RequiredError}
40040
+ */
40041
+ importEventPassAttributes(eventId: string, passAttributesImportInputs: PassAttributesImportInputs, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ImportEventPassAttributes200Response>>;
39992
40042
  /**
39993
40043
  * Deletes a single custom attribute value that had been set on the specified event pass, requires read permission on events and read/update permission on attendees.
39994
40044
  * @summary Remove a custom attribute from a pass
@@ -40022,6 +40072,14 @@ export declare const EventsPassesAttributesApiFactory: (configuration?: Configur
40022
40072
  * @throws {RequiredError}
40023
40073
  */
40024
40074
  getEventPassAttributes(requestParameters: EventsPassesAttributesApiGetEventPassAttributesRequest, options?: RawAxiosRequestConfig): AxiosPromise<GetEventPassAttributes200Response>;
40075
+ /**
40076
+ * Creates or updates attribute values on up to 500 passes in one call, the write half of a CSV import. Each row\'s passId may be a pass id or the pass\'s alternateId, and each attributeId may be an attribute id or its name. Rows whose pass or attribute cannot be resolved are reported back as invalid and skipped rather than failing the batch. Requires read permission on events and read/update permission on attendees.
40077
+ * @summary Bulk set custom attribute values across many passes
40078
+ * @param {EventsPassesAttributesApiImportEventPassAttributesRequest} requestParameters Request parameters.
40079
+ * @param {*} [options] Override http request option.
40080
+ * @throws {RequiredError}
40081
+ */
40082
+ importEventPassAttributes(requestParameters: EventsPassesAttributesApiImportEventPassAttributesRequest, options?: RawAxiosRequestConfig): AxiosPromise<ImportEventPassAttributes200Response>;
40025
40083
  /**
40026
40084
  * Deletes a single custom attribute value that had been set on the specified event pass, requires read permission on events and read/update permission on attendees.
40027
40085
  * @summary Remove a custom attribute from a pass
@@ -40068,6 +40126,16 @@ export interface EventsPassesAttributesApiGetEventPassAttributesRequest {
40068
40126
  */
40069
40127
  readonly search?: string;
40070
40128
  }
40129
+ /**
40130
+ * Request parameters for importEventPassAttributes operation in EventsPassesAttributesApi.
40131
+ */
40132
+ export interface EventsPassesAttributesApiImportEventPassAttributesRequest {
40133
+ /**
40134
+ * The event identifier
40135
+ */
40136
+ readonly eventId: string;
40137
+ readonly passAttributesImportInputs: PassAttributesImportInputs;
40138
+ }
40071
40139
  /**
40072
40140
  * Request parameters for removeEventPassAttribute operation in EventsPassesAttributesApi.
40073
40141
  */
@@ -40111,6 +40179,14 @@ export declare class EventsPassesAttributesApi extends BaseAPI {
40111
40179
  * @throws {RequiredError}
40112
40180
  */
40113
40181
  getEventPassAttributes(requestParameters: EventsPassesAttributesApiGetEventPassAttributesRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<GetEventPassAttributes200Response, any, {}, any>>;
40182
+ /**
40183
+ * Creates or updates attribute values on up to 500 passes in one call, the write half of a CSV import. Each row\'s passId may be a pass id or the pass\'s alternateId, and each attributeId may be an attribute id or its name. Rows whose pass or attribute cannot be resolved are reported back as invalid and skipped rather than failing the batch. Requires read permission on events and read/update permission on attendees.
40184
+ * @summary Bulk set custom attribute values across many passes
40185
+ * @param {EventsPassesAttributesApiImportEventPassAttributesRequest} requestParameters Request parameters.
40186
+ * @param {*} [options] Override http request option.
40187
+ * @throws {RequiredError}
40188
+ */
40189
+ importEventPassAttributes(requestParameters: EventsPassesAttributesApiImportEventPassAttributesRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<ImportEventPassAttributes200Response, any, {}, any>>;
40114
40190
  /**
40115
40191
  * Deletes a single custom attribute value that had been set on the specified event pass, requires read permission on events and read/update permission on attendees.
40116
40192
  * @summary Remove a custom attribute from a pass