openapi: 3.2.0 info: title: Administration Product Attribute Rules API version: 1.0.0 servers: - url: https://rls.congacloud.com/api/revenue-admin/v1 security: - Bearer: [] tags: - name: Product Attribute Rules paths: /attribute-rules: delete: tags: - Product Attribute Rules summary: Delete product attribute rules description: Deletes one or more attribute rules based on the input in request body. requestBody: description: The list of Product Attribute Rules to delete content: application/json: schema: type: array items: $ref: '#/components/schemas/ProductAttributeRule' example: - Id: Id of the record to delete text/json: schema: type: array items: $ref: '#/components/schemas/ProductAttributeRule' application/*+json: schema: type: array items: $ref: '#/components/schemas/ProductAttributeRule' responses: '200': description: OK get: tags: - Product Attribute Rules summary: Retrieve product attribute rules description: Retrieves all attributes rules in the system. parameters: - name: filter in: query description: An array of filter conditions schema: type: array items: type: string - name: sort in: query description: The sort condition schema: type: string - name: page in: query description: The page number schema: type: integer format: int32 default: 1 - name: limit in: query description: The maximum number of records per page schema: type: integer format: int32 default: 50 - name: includes in: query description: An array of entities to include schema: type: array items: type: string - name: field in: query description: Pass Comma separated mulitple fields schema: type: array items: type: string - name: filterExpression in: query description: '' schema: type: string responses: '200': description: OK '204': description: No Content patch: tags: - Product Attribute Rules summary: Update product attribute rules description: Updates one or more attribute rules the attribute rule conditions based on the details. requestBody: description: The list of records to be updated content: application/json: schema: type: array items: type: object additionalProperties: {} example: - Name: Name of the record Description: Description AccountScope: - Account1 AccountScopeOper: The account scope operator ConditionCriteria: The rule criteria specification ConditionCriteriaExpression: The rule criteria expression IsActive: true ProductFamilyScope: - ProductFamily-1 ProductFamilyScopeOper: The product family scope operator ProductGroupScope: - ProductGroup-1 ProductGroupScopeOper: The product group scope operator ProductScope: - Product-1 ProductScopeOper: The product scope operator Id: Id of the record text/json: schema: type: array items: type: object additionalProperties: {} application/*+json: schema: type: array items: type: object additionalProperties: {} responses: '200': description: OK post: tags: - Product Attribute Rules summary: Create product attribute rules description: 'Creates one or more attribute rules along with attribute rule condition for each attribute rule, based on the details provided in the request body. Each attribute rule can have only one attribute rule condition. The attribute rule condition can be defined using product scope or condition criteria. When executed, the API returns the structure of the attribute rule.' requestBody: description: The list of Product Attribute Rules to add to the collection content: application/json: schema: type: array items: $ref: '#/components/schemas/ProductAttributeRule' text/json: schema: type: array items: $ref: '#/components/schemas/ProductAttributeRule' application/*+json: schema: type: array items: $ref: '#/components/schemas/ProductAttributeRule' responses: '200': description: OK /attribute-rules/{Id}: delete: tags: - Product Attribute Rules summary: Delete a product attribute rule description: Deletes a single product attribute rule. parameters: - name: Id in: path description: The identifier of the Product Attribute Rule to delete required: true schema: type: string responses: '200': description: OK get: tags: - Product Attribute Rules summary: Retrieve a product attribute rule description: Retrieves a single product attribute rule based on the identifier. parameters: - name: Id in: path description: The identifier of the Product Attribute Rule to retrieve required: true schema: type: string - name: includes in: query description: To include child records schema: type: array items: type: string responses: '200': description: OK '204': description: No Content patch: tags: - Product Attribute Rules summary: Update a product attribute rule description: Updates a single product attribute rule based on the identifier. parameters: - name: Id in: path description: The identifier of the Product Attribute Rule to update required: true schema: type: string requestBody: description: The updated state of the Product Attribute Rule content: application/json: schema: type: object additionalProperties: {} example: Name: Name of the record Description: Description AccountScope: - Account1 AccountScopeOper: The account scope operator ConditionCriteria: The rule criteria specification ConditionCriteriaExpression: The rule criteria expression IsActive: true ProductFamilyScope: - ProductFamily-1 ProductFamilyScopeOper: The product family scope operator ProductGroupScope: - ProductGroup-1 ProductGroupScopeOper: The product group scope operator ProductScope: - Product-1 ProductScopeOper: The product scope operator text/json: schema: type: object additionalProperties: {} application/*+json: schema: type: object additionalProperties: {} responses: '200': description: OK components: schemas: ProductAttributeRule: type: object properties: Id: type: - string - 'null' Name: type: - string - 'null' CreatedBy: $ref: '#/components/schemas/LookupObject' CreatedDate: type: string format: date-time ModifiedBy: $ref: '#/components/schemas/LookupObject' ModifiedDate: type: string format: date-time ExternalId: type: - string - 'null' ETag: type: - string - 'null' AccountScope: type: - array - 'null' items: type: string AccountScopeOper: type: - string - 'null' IsActive: type: - boolean - 'null' ConditionCriteria: type: - string - 'null' ConditionCriteriaExpression: type: - string - 'null' Description: type: - string - 'null' EffectiveDate: type: - string - 'null' format: date-time ExpirationDate: type: - string - 'null' format: date-time ProductFamilyScope: type: - array - 'null' items: type: string ProductFamilyScopeOper: type: - string - 'null' ProductGroupScope: type: - array - 'null' items: type: string ProductGroupScopeOper: type: - string - 'null' ProductScope: type: - array - 'null' items: type: string ProductScopeOper: type: - string - 'null' additionalProperties: {} example: Name: Name of the record Description: Description AccountScope: - Account1 AccountScopeOper: The account scope operator ConditionCriteria: The rule criteria specification ConditionCriteriaExpression: The rule criteria expression IsActive: true ProductFamilyScope: - ProductFamily-1 ProductFamilyScopeOper: The product family scope operator ProductGroupScope: - ProductGroup-1 ProductGroupScopeOper: The product group scope operator ProductScope: - Product-1 ProductScopeOper: The product scope operator LookupObject: type: object properties: Id: type: - string - 'null' Name: type: - string - 'null' additionalProperties: false securitySchemes: Bearer: type: apiKey description: Please insert JWT with Bearer into field name: Authorization in: header