swagger: '2.0'
info:
  title: Installment Rule Admin REST APIs
  version: '2.0'
paths:
  /installment-rules:
    get:
      produces:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the store.
          format: int32
          in: query
          name: storeId
          required: true
          type: integer
          x-context-data: storeId
        - description: >-
            The integer ID for identifying the data language. For a list of
            integer language identifiers, refer to the Knowledge Center.
          in: query
          name: dataLanguageIds
          required: false
          type: string
        - description: The maximum number of records to return.
          format: int32
          in: query
          name: limit
          required: false
          type: integer
          x-entity-path: dataArea/get/maxItems
        - description: >-
            The position within the resulting dataset where the query begins
            returning item records. If the offset is "5", the records that
            returned begin with the sixth record that matches the query
            parameters. If the offset is "0", the records that are returned
            begin with the first record that matches the query parameters.
          format: int32
          in: query
          name: offset
          required: false
          type: integer
          x-entity-path: dataArea/get/recordSetStartNumber
      responses:
        '200':
          description: The operation is successful.
          schema:
            $ref: '#/definitions/InstallmentRuleCollection'
          x-entity-path: dataArea/installmentRule
      summary: Get all the installment rule under a particular store.
      x-expression-template: >-
        {_wcf.ap='{accessProfile}';_wcf.dataLanguageIds='{dataLanguageIds}'}/InstallmentRule
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: getInstallmentRule
      x-parameters:
        accessProfile: IBM_Admin_Summary
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.GetInstallmentRuleType
    post:
      consumes:
        - application/json
      parameters:
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRule'
          x-entity-path: 'dataArea/installmentRule[1]'
      responses:
        '201':
          description: The operation is successful.
          headers:
            Location:
              description: The URI of the installment rule.
              type: string
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
      summary: Create an installment rule.
      x-action-code: Add
      x-expression-template: '/InstallmentRule[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: processInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ProcessInstallmentRuleType
  /installment-rules/by-name-or-description:
    get:
      produces:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the store.
          format: int32
          in: query
          name: storeId
          required: true
          type: integer
          x-context-data: storeId
        - description: >-
            The integer ID for identifying the data language. For a list of
            integer language identifiers, refer to the Knowledge Center.
          in: query
          name: dataLanguageIds
          required: false
          type: string
        - description: The text used to search the rule names and descritpions.
          in: query
          name: searchText
          required: true
          type: string
        - description: The maximum number of records to return.
          format: int32
          in: query
          name: limit
          required: false
          type: integer
          x-entity-path: dataArea/get/maxItems
        - description: >-
            The position within the resulting dataset where the query begins
            returning item records. If the offset is "5", the records that
            returned begin with the sixth record that matches the query
            parameters. If the offset is "0", the records that are returned
            begin with the first record that matches the query parameters.
          format: int32
          in: query
          name: offset
          required: false
          type: integer
          x-entity-path: dataArea/get/recordSetStartNumber
      responses:
        '200':
          description: The operation is successful.
          schema:
            $ref: '#/definitions/InstallmentRuleCollection'
          x-entity-path: dataArea/installmentRule
      summary: Get installment rules by name or description.
      x-expression-builder-class: >-
        com.ibm.commerce.foundation.internal.client.taglib.util.SearchExpressionBuilder
      x-expression-builder-method: formatExpression
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: getInstallmentRule
      x-parameters:
        accessProfile: IBM_Admin_Summary
        template: >-
          /InstallmentRule[search(InstallmentRuleIdentifier/ExternalIdentifier/Name='$searchText$'
          or Description='$searchText$')]
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.GetInstallmentRuleType
  '/installment-rules/{id}':
    delete:
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
      responses:
        '204':
          description: The operation is successful.
      summary: Delete an installment rule.
      x-action-code: Delete
      x-expression-template: '/InstallmentRule[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: processInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ProcessInstallmentRuleType
    get:
      produces:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
        - description: >-
            The integer ID for identifying the data language. For a list of
            integer language identifiers, refer to the Knowledge Center.
          in: query
          name: dataLanguageIds
          required: false
          type: string
      responses:
        '200':
          description: The operation is successful.
          schema:
            $ref: '#/definitions/InstallmentRule'
          x-entity-path: 'dataArea/installmentRule[1]'
      summary: Get an installment rule by using the installment rule ID.
      x-expression-template: >-
        {_wcf.ap='{accessProfile}';_wcf.dataLanguageIds='{dataLanguageIds}'}/InstallmentRule[InstallmentRuleIdentifier[(UniqueID='{id}')]]
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: getInstallmentRule
      x-parameters:
        accessProfile: IBM_Admin_All
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.GetInstallmentRuleType
    patch:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRule'
          x-entity-path: 'dataArea/installmentRule[1]'
      responses:
        '200':
          description: The operation is successful.
      summary: Update an installment rule.
      x-action-code: Change
      x-expression-template: '/InstallmentRule[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
  '/installment-rules/{id}/activate':
    post:
      parameters:
        - description: TThe unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
      responses:
        '200':
          description: The operation is successful.
      summary: Activate an installment rule.
      x-action-code: Activate
      x-expression-template: '/InstallmentRule[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: processInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ProcessInstallmentRuleType
  '/installment-rules/{id}/catalog-entry-associations':
    get:
      produces:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
        - description: >-
            The integer ID for identifying the data language. For a list of
            integer language identifiers, refer to the Knowledge Center.
          in: query
          name: dataLanguageIds
          required: false
          type: string
      responses:
        '200':
          description: The operation is successful.
          schema:
            $ref: '#/definitions/InstallmentRuleCatalogEntryAssociationCollection'
          x-entity-path: 'dataArea/installmentRule[1]/catalogEntryAssociation'
      summary: >-
        Get the collection of catalog entry associations by using the
        installment rule ID.
      x-expression-template: >-
        {_wcf.ap='{accessProfile}';_wcf.dataLanguageIds='{dataLanguageIds}'}/InstallmentRule[InstallmentRuleIdentifier[(UniqueID='{id}')]]
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: getInstallmentRule
      x-parameters:
        accessProfile: IBM_Admin_All
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.GetInstallmentRuleType
    post:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRuleCatalogEntryAssociation'
          x-entity-path: 'dataArea/installmentRule[1]/catalogEntryAssociation[1]'
      responses:
        '201':
          description: The operation is successful.
          headers:
            Location:
              description: >-
                The URI of the catalog entry association of the installment
                rule.
              type: string
          x-entity-path: >-
            dataArea/installmentRule[1]/catalogEntryAssociation[1]/installmentRuleCatalogEntryAssociationIdentifier/uniqueID
      summary: Create a catalog entry association for the installment rule.
      x-action-code: Add
      x-expression-template: '/InstallmentRule[1]/CatalogEntryAssociation[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
      x-request-verb: change
      x-response-verb: respond
  '/installment-rules/{id}/catalog-entry-associations/{catalogEntryAssociationId}':
    delete:
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: >-
            The unique numeric ID for identifying the catalog entry that is
            associated with the installment rule.
          format: int64
          in: path
          name: catalogEntryAssociationId
          required: true
          type: integer
          x-entity-path: >-
            dataArea/installmentRule[1]/catalogEntryAssociation[1]/installmentRuleCatalogEntryAssociationIdentifier/uniqueID
      responses:
        '204':
          description: The operation is successful.
      summary: Delete a catalog entry association for the installment rule.
      x-action-code: Delete
      x-expression-template: '/InstallmentRule[1]/CatalogEntryAssociation[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
      x-request-verb: change
      x-response-verb: respond
    patch:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: >-
            The unique numeric ID for identifying the catalog entry that is
            associated with the installment rule.
          format: int64
          in: path
          name: catalogEntryAssociationId
          required: true
          type: integer
          x-entity-path: >-
            dataArea/installmentRule[1]/catalogEntryAssociation[1]/installmentRuleCatalogEntryAssociationIdentifier/uniqueID
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRuleCatalogEntryAssociation'
          x-entity-path: 'dataArea/installmentRule[1]/catalogEntryAssociation[1]'
      responses:
        '200':
          description: The operation is successful.
      summary: Change the catalog entry association.
      x-action-code: Change
      x-expression-template: '/InstallmentRule[1]/CatalogEntryAssociation[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
  '/installment-rules/{id}/catalog-group-associations':
    get:
      produces:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
        - description: >-
            The integer ID for identifying the data language. For a list of
            integer language identifiers, refer to the Knowledge Center.
          in: query
          name: dataLanguageIds
          required: false
          type: string
      responses:
        '200':
          description: The operation is successful.
          schema:
            $ref: '#/definitions/InstallmentRuleCatalogGroupAssociationCollection'
          x-entity-path: 'dataArea/installmentRule[1]/catalogGroupAssociation'
      summary: >-
        Get the collection of category associations by using the installment
        rule ID.
      x-expression-template: >-
        {_wcf.ap='{accessProfile}';_wcf.dataLanguageIds='{dataLanguageIds}'}/InstallmentRule[InstallmentRuleIdentifier[(UniqueID='{id}')]]
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: getInstallmentRule
      x-parameters:
        accessProfile: IBM_Admin_All
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.GetInstallmentRuleType
    post:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRuleCatalogGroupAssociation'
          x-entity-path: 'dataArea/installmentRule[1]/catalogGroupAssociation[1]'
      responses:
        '201':
          description: The operation is successful.
          headers:
            Location:
              description: >-
                The URI of the category that is associated with the installment
                rule.
              type: string
          x-entity-path: >-
            dataArea/installmentRule[1]/catalogGroupAssociation[1]/installmentRuleCatalogGroupAssociationIdentifier/uniqueID
      summary: Create a category association for the installment rule.
      x-action-code: Add
      x-expression-template: '/InstallmentRule[1]/CatalogGroupAssociation[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
      x-request-verb: change
      x-response-verb: respond
  '/installment-rules/{id}/catalog-group-associations/{catalogGroupAssociationId}':
    delete:
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: >-
            The unique numeric ID for identifying the category that is
            associated with the installment rule.
          format: int64
          in: path
          name: catalogGroupAssociationId
          required: true
          type: integer
          x-entity-path: >-
            dataArea/installmentRule[1]/catalogGroupAssociation[1]/installmentRuleCatalogGroupAssociationIdentifier/uniqueID
      responses:
        '204':
          description: The operation is successful.
      summary: Delete a category association for the installment rule.
      x-action-code: Delete
      x-expression-template: '/InstallmentRule[1]/CatalogGroupAssociation[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
      x-request-verb: change
      x-response-verb: respond
    patch:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: >-
            The unique numeric ID for identifying the category that is
            associated with the installment rule.
          format: int64
          in: path
          name: catalogGroupAssociationId
          required: true
          type: integer
          x-entity-path: >-
            dataArea/installmentRule[1]/catalogGroupAssociation[1]/installmentRuleCatalogGroupAssociationIdentifier/uniqueID
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRuleCatalogGroupAssociation'
          x-entity-path: 'dataArea/installmentRule[1]/catalogGroupAssociation[1]'
      responses:
        '200':
          description: The operation is successful.
      summary: Change the category association.
      x-action-code: Change
      x-expression-template: '/InstallmentRule[1]/CatalogGroupAssociation[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
  '/installment-rules/{id}/conditions':
    get:
      produces:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
        - description: >-
            The integer ID for identifying the data language. For a list of
            integer language identifiers, refer to the Knowledge Center.
          in: query
          name: dataLanguageIds
          required: false
          type: string
      responses:
        '200':
          description: The operation is successful.
          schema:
            $ref: '#/definitions/InstallmentRuleConditionCollection'
          x-entity-path: 'dataArea/installmentRule[1]/condition'
      summary: Get the collection of conditions by installment rule ID.
      x-expression-template: >-
        {_wcf.ap='{accessProfile}';_wcf.dataLanguageIds='{dataLanguageIds}'}/InstallmentRule[InstallmentRuleIdentifier[(UniqueID='{id}')]]
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: getInstallmentRule
      x-parameters:
        accessProfile: IBM_Admin_All
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.GetInstallmentRuleType
    post:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRuleCondition'
          x-entity-path: 'dataArea/installmentRule[1]/condition[1]'
      responses:
        '201':
          description: The operation is successful.
          headers:
            Location:
              description: The URI of the condition of the installment rule.
              type: string
          x-entity-path: >-
            dataArea/installmentRule[1]/condition[1]/installmentRuleConditionIdentifier/uniqueID
      summary: Create a condition for the installment rule.
      x-action-code: Add
      x-expression-template: '/InstallmentRule[1]/Condition[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
      x-request-verb: change
      x-response-verb: respond
  '/installment-rules/{id}/conditions/{conditionId}':
    delete:
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: >-
            The unique numeric ID for identifying the condition that is
            associated with the installment rule.
          format: int64
          in: path
          name: conditionId
          required: true
          type: integer
          x-entity-path: >-
            dataArea/installmentRule[1]/condition[1]/installmentRuleConditionIdentifier/uniqueID
      responses:
        '204':
          description: The operation is successful.
      summary: Delete a condition for the installment rule.
      x-action-code: Delete
      x-expression-template: '/InstallmentRule[1]/Condition[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
      x-request-verb: change
      x-response-verb: respond
    patch:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: >-
            The unique numeric ID for identifying the condition that is
            associated with the installment rule.
          format: int64
          in: path
          name: conditionId
          required: true
          type: integer
          x-entity-path: >-
            dataArea/installmentRule[1]/condition[1]/installmentRuleConditionIdentifier/uniqueID
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRuleCondition'
          x-entity-path: 'dataArea/installmentRule[1]/condition[1]'
      responses:
        '200':
          description: The operation is successful.
      summary: Change the condition.
      x-action-code: Change
      x-expression-template: '/InstallmentRule[1]/Condition[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
  '/installment-rules/{id}/deactivate':
    post:
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
      responses:
        '200':
          description: The operation is successful.
      summary: Deactivate an installment rule.
      x-action-code: Deactivate
      x-expression-template: '/InstallmentRule[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: processInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ProcessInstallmentRuleType
  '/installment-rules/{id}/options':
    get:
      produces:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
        - description: >-
            The integer ID for identifying the data language. For a list of
            integer language identifiers, refer to the Knowledge Center.
          in: query
          name: dataLanguageIds
          required: false
          type: string
      responses:
        '200':
          description: The operation is successful.
          schema:
            $ref: '#/definitions/InstallmentRuleInstallmentOptionCollection'
          x-entity-path: 'dataArea/installmentRule[1]/installmentOption'
      summary: Get the collection of installment options by installment rule ID.
      x-expression-template: >-
        {_wcf.ap='{accessProfile}';_wcf.dataLanguageIds='{dataLanguageIds}'}/InstallmentRule[InstallmentRuleIdentifier[(UniqueID='{id}')]]
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: getInstallmentRule
      x-parameters:
        accessProfile: IBM_Admin_All
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.GetInstallmentRuleType
    post:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRuleInstallmentOption'
          x-entity-path: 'dataArea/installmentRule[1]/installmentOption[1]'
      responses:
        '201':
          description: The operation is successful.
          headers:
            Location:
              description: The URI of the installment option of the installment rule.
              type: string
          x-entity-path: >-
            dataArea/installmentRule[1]/installmentOption[1]/installmentOptionIdentifier/uniqueID
      summary: Create an intallment option for the installment rule.
      x-action-code: Add
      x-expression-template: '/InstallmentRule[1]/InstallmentOption[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
      x-request-verb: change
      x-response-verb: respond
  '/installment-rules/{id}/options/{installmentOptionId}':
    delete:
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: >-
            The unique numeric ID for identifying the installment option of the
            installment rule.
          format: int64
          in: path
          name: installmentOptionId
          required: true
          type: integer
          x-entity-path: >-
            dataArea/installmentRule[1]/installmentOption[1]/installmentOptionIdentifier/uniqueID
      responses:
        '204':
          description: The operation is successful.
      summary: Delete an installment option for the installment rule.
      x-action-code: Delete
      x-expression-template: '/InstallmentRule[1]/InstallmentOption[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
      x-request-verb: change
      x-response-verb: respond
    patch:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: >-
            The unique numeric ID for identifying the installment option of the
            installment rule.
          format: int64
          in: path
          name: installmentOptionId
          required: true
          type: integer
          x-entity-path: >-
            dataArea/installmentRule[1]/installmentOption[1]/installmentOptionIdentifier/uniqueID
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRuleInstallmentOption'
          x-entity-path: 'dataArea/installmentRule[1]/installmentOption[1]'
      responses:
        '200':
          description: The operation is successful.
      summary: Change the installment option.
      x-action-code: Change
      x-expression-template: '/InstallmentRule[1]/InstallmentOption[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
  '/installment-rules/{id}/payment-method-associations':
    get:
      produces:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
        - description: >-
            The integer ID for identifying the data language. For a list of
            integer language identifiers, refer to the Knowledge Center.
          in: query
          name: dataLanguageIds
          required: false
          type: string
      responses:
        '200':
          description: The operation is successful.
          schema:
            $ref: '#/definitions/InstallmentRulePaymentMethodAssociationCollection'
          x-entity-path: 'dataArea/installmentRule[1]/paymentMethodAssociation'
      summary: >-
        Get the collection of payment method associations by installment rule
        ID.
      x-expression-template: >-
        {_wcf.ap='{accessProfile}';_wcf.dataLanguageIds='{dataLanguageIds}'}/InstallmentRule[InstallmentRuleIdentifier[(UniqueID='{id}')]]
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: getInstallmentRule
      x-parameters:
        accessProfile: IBM_Admin_All
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.GetInstallmentRuleType
    post:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRulePaymentMethodAssociation'
          x-entity-path: 'dataArea/installmentRule[1]/paymentMethodAssociation[1]'
      responses:
        '201':
          description: The operation is successful.
          headers:
            Location:
              description: >-
                The URI of the payment method association of the installment
                rule.
              type: string
          x-entity-path: >-
            dataArea/installmentRule[1]/paymentMethodAssociation[1]/installmentRulePaymentMethodAssociationIdentifier/uniqueID
      summary: Create a payment method association for the installment rule.
      x-action-code: Add
      x-expression-template: '/InstallmentRule[1]/PaymentMethodAssociation[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
      x-request-verb: change
      x-response-verb: respond
  '/installment-rules/{id}/payment-method-associations/{paymentMethodId}':
    delete:
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: >-
            The unique numeric ID for identifying the payment method association
            that is associated with the installment rule.
          format: int64
          in: path
          name: paymentMethodId
          required: true
          type: integer
          x-entity-path: >-
            dataArea/installmentRule[1]/paymentMethodAssociation[1]/installmentRulePaymentMethodAssociationIdentifier/uniqueID
      responses:
        '204':
          description: The operation is successful.
      summary: Delete a payment method association for the installment rule.
      x-action-code: Delete
      x-expression-template: '/InstallmentRule[1]/PaymentMethodAssociation[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
      x-request-verb: change
      x-response-verb: respond
    patch:
      consumes:
        - application/json
      parameters:
        - description: The unique numeric ID for identifying the installment rule.
          format: int64
          in: path
          name: id
          required: true
          type: integer
          x-entity-path: 'dataArea/installmentRule[1]/installmentRuleIdentifier/uniqueID'
        - description: >-
            The unique numeric ID for identifying the payment method association
            that is associated with the installment rule.
          format: int64
          in: path
          name: paymentMethodId
          required: true
          type: integer
          x-entity-path: >-
            dataArea/installmentRule[1]/paymentMethodAssociation[1]/installmentRulePaymentMethodAssociationIdentifier/uniqueID
        - description: The request body.
          in: body
          name: body
          required: true
          schema:
            $ref: '#/definitions/InstallmentRulePaymentMethodAssociation'
          x-entity-path: 'dataArea/installmentRule[1]/paymentMethodAssociation[1]'
      responses:
        '200':
          description: The operation is successful.
      summary: Change the payment method assoication.
      x-action-code: Change
      x-expression-template: '/InstallmentRule[1]/PaymentMethodAssociation[1]'
      x-facade-client-class: com.ibm.commerce.installment.facade.client.InstallmentFacadeClient
      x-facade-client-method: changeInstallmentRule
      x-request-bod-class: com.ibm.commerce.installment.facade.datatypes.ChangeInstallmentRuleType
definitions:
  InstallmentRule:
    description: An installment rule.
    properties:
      catalog-entry-associations:
        description: The collection of catalog entry associations.
        items:
          $ref: '#/definitions/InstallmentRuleCatalogEntryAssociation'
        type: array
        x-entity-path: catalogEntryAssociation
      catalog-group-associations:
        description: The collection of category associations.
        items:
          $ref: '#/definitions/InstallmentRuleCatalogGroupAssociation'
        type: array
        x-entity-path: catalogGroupAssociation
      conditions:
        description: The collection of installment rule conditions.
        items:
          $ref: '#/definitions/InstallmentRuleCondition'
        type: array
        x-entity-path: condition
      description:
        description: The administrative description of the installment rule.
        type: string
      endDateTime:
        description: The end date and time of this rule.
        format: date-time
        type: string
      id:
        description: The unique numeric ID for identifying the installment rule.
        format: int64
        readOnly: true
        type: integer
        x-entity-path: installmentRuleIdentifier/uniqueID
      name:
        description: The name of the installment rule.
        type: string
        x-entity-path: installmentRuleIdentifier/externalIdentifier/name
      options:
        description: The collection of installment options.
        items:
          $ref: '#/definitions/InstallmentRuleInstallmentOption'
        type: array
        x-entity-path: installmentOption
      payment-method-associations:
        description: The collection of payment method associations.
        items:
          $ref: '#/definitions/InstallmentRulePaymentMethodAssociation'
        type: array
        x-entity-path: paymentMethodAssociation
      priority:
        description: The priority of the rule. A larger value represents a higher priority.
        format: double
        type: number
      startDateTime:
        description: Start date and time of this rule.
        format: date-time
        type: string
      status:
        description: >-
          The status of the rule. This value can only be changed by the
          activate/deactivate APIs.
        readOnly: true
        type: string
      storeId:
        description: The unique numeric ID for identifying the store.
        format: int32
        type: integer
        x-entity-path: installmentRuleIdentifier/externalIdentifier/storeIdentifier/uniqueID
      updatedDateTime:
        description: >-
          The date and time at which this rule was updated. This value cannot be
          edited.
        format: date-time
        readOnly: true
        type: string
        x-entity-path: lastUpdateDateTime
    type: object
    x-entity-class: com.ibm.commerce.installment.facade.datatypes.InstallmentRuleType
  InstallmentRuleCatalogEntryAssociation:
    description: The catalog entry association of an installment rule.
    properties:
      associationType:
        description: 'The catalog entry association type, either "Inclusion" or "Exclusion".'
        type: string
      catalogEntryId:
        description: >-
          The unique numeric ID of the catalog entry that is associated with the
          installment rule.
        format: int64
        type: integer
        x-entity-path: catalogEntryIdentifier/uniqueID
      id:
        description: The unique numeric ID for identifying the catalog entry association.
        format: int64
        type: integer
        x-entity-path: installmentRuleCatalogEntryAssociationIdentifier/uniqueID
    type: object
    x-entity-class: >-
      com.ibm.commerce.installment.facade.datatypes.InstallmentRuleCatalogEntryAssociationType
  InstallmentRuleCatalogEntryAssociationCollection:
    description: A collection of catalog entry associations of an installment rule.
    properties:
      count:
        description: The total number of item records that match the query parameters.
        format: int64
        type: integer
      items:
        description: The data objects or resources that that match the query parameters.
        items:
          $ref: '#/definitions/InstallmentRuleCatalogEntryAssociation'
        type: array
    type: object
  InstallmentRuleCatalogGroupAssociation:
    description: The category association of an installment rule.
    properties:
      associationType:
        description: 'The category association type, either "Inclusion" or "Exclusion".'
        type: string
      catalogGroupId:
        description: >-
          The unique numeric ID of the category that is associated with the
          installment rule.
        format: int64
        type: integer
        x-entity-path: catalogGroupIdentifier/uniqueID
      id:
        description: The unique numeric ID for identifying the installment rule.
        format: int64
        readOnly: true
        type: integer
        x-entity-path: installmentRuleCatalogGroupAssociationIdentifier/uniqueID
    type: object
    x-entity-class: >-
      com.ibm.commerce.installment.facade.datatypes.InstallmentRuleCatalogGroupAssociationType
  InstallmentRuleCatalogGroupAssociationCollection:
    description: A collection of category associations of an installment rule.
    properties:
      count:
        description: The total number of item records that match the query parameters.
        format: int64
        type: integer
      items:
        description: The data objects or resources that that match the query parameters.
        items:
          $ref: '#/definitions/InstallmentRuleCatalogGroupAssociation'
        type: array
    type: object
  InstallmentRuleCollection:
    description: A collection of installment rules.
    properties:
      count:
        description: The total number of item records that match the query parameters.
        format: int64
        type: integer
      items:
        description: The data objects or resources that that match the query parameters.
        items:
          $ref: '#/definitions/InstallmentRule'
        type: array
      limit:
        description: The maximum number of records to return.
        format: int32
        type: integer
      offset:
        description: >-
          The position within the resulting dataset where the query begins
          returning item records. If the offset is "5", the records that
          returned begin with the sixth record that matches the query
          parameters. If the offset is "0", the records that are returned begin
          with the first record that matches the query parameters.
        format: int32
        type: integer
    type: object
  InstallmentRuleCondition:
    description: The condition of an installment rule.
    properties:
      conditionType:
        description: The condition type
        type: string
      id:
        description: The unique numeric ID for identifying the condition.
        format: int64
        type: integer
        x-entity-path: installmentRuleConditionIdentifier/uniqueID
      userData:
        additionalProperties:
          type: string
        type: object
        x-entity-path: userData/userDataField
    type: object
    x-entity-class: com.ibm.commerce.installment.facade.datatypes.InstallmentRuleConditionType
  InstallmentRuleConditionCollection:
    description: A collection of conditions of an installment rule.
    properties:
      count:
        description: The total number of item records that match the query parameters.
        format: int64
        type: integer
      items:
        description: The data objects or resources that that match the query parameters.
        items:
          $ref: '#/definitions/InstallmentRuleCondition'
        type: array
    type: object
  InstallmentRuleInstallmentOption:
    description: The installment option of an installment rule.
    properties:
      id:
        description: The unique numeric ID for identifying the installment option.
        format: int64
        readOnly: true
        type: integer
        x-entity-path: installmentOptionIdentifier/uniqueID
      interestRate:
        description: The interest rate of the installment rule.
        type: number
        x-entity-path: interestRate
      minimumInstallmentAmount:
        $ref: '#/definitions/MonetaryAmount'
        x-entity-path: minimumInstallmentAmount
      numberOfInstallments:
        description: The number of installments required for the installment rule.
        format: int32
        type: integer
        x-entity-path: numberOfInstallments
    type: object
    x-entity-class: com.ibm.commerce.installment.facade.datatypes.InstallmentOptionType
  InstallmentRuleInstallmentOptionCollection:
    description: A collection of installment options of an installment rule.
    properties:
      count:
        description: The total number of item records that match the query parameters.
        format: int64
        type: integer
      items:
        description: The data objects or resources that that match the query parameters.
        items:
          $ref: '#/definitions/InstallmentRuleInstallmentOption'
        type: array
    type: object
  InstallmentRulePaymentMethodAssociation:
    description: The payment method association of an installment rule.
    properties:
      associationType:
        description: >-
          The payment method association type, either "Inclusion" or
          "Exclusion".
        type: string
      id:
        description: >-
          The unique numeric ID for identifying the payment method association
          that is associated with the installment rule.
        format: int64
        readOnly: true
        type: integer
        x-entity-path: installmentRulePaymentMethodAssociationIdentifier/uniqueID
      name:
        description: The name of the payment method for the installment rule.
        type: string
        x-entity-path: paymentMethodName
    type: object
    x-entity-class: >-
      com.ibm.commerce.installment.facade.datatypes.InstallmentRulePaymentMethodAssociationType
  InstallmentRulePaymentMethodAssociationCollection:
    description: A collection of payment method associations of an installment rule.
    properties:
      count:
        description: The total number of item records that match the query parameters.
        format: int64
        type: integer
      items:
        description: The data objects or resources that that match the query parameters.
        items:
          $ref: '#/definitions/InstallmentRulePaymentMethodAssociation'
        type: array
    type: object
  MonetaryAmount:
    description: The monetary value of the constant entry.
    properties:
      currency:
        description: The currency of the monetary amount.
        type: string
        x-entity-path: currency
      value:
        description: The value of the monetary amount.
        format: double
        type: number
        x-entity-path: value
    type: object
    x-entity-class: com.ibm.commerce.foundation.common.datatypes.MonetaryAmountType
x-components: {}
