> ## Documentation Index
> Fetch the complete documentation index at: https://developer.fabric.inc/llms.txt
> Use this file to discover all available pages before exploring further.

# Get ruleset details

> When sending proposals to a retailer partner, rulesets define the required conditions for your product attributes. Failing to meet even one of these conditions will prevent your proposal from being submitted. Use this endpoint to review the specific details of a chosen ruleset, which will guide you in preparing your data file correctly and ensuring a successful proposal submission.



## OpenAPI

````yaml dropship_proposals.openapi get /v1/rule-groups/?ruleset_id={ruleset_id}
openapi: 3.0.0
info:
  title: Proposals API
  version: 1.0.0
  description: |
    Endpoints for managing product proposals and their statuses.
servers:
  - url: https://marketplace-api.fabric.inc
    description: Production server
security:
  - Bearer: []
tags:
  - name: Proposals
    description: Proposal operations
paths:
  /v1/rule-groups/?ruleset_id={ruleset_id}:
    get:
      tags:
        - Proposals
      summary: Get ruleset details
      description: >-
        When sending proposals to a retailer partner, rulesets define the
        required conditions for your product attributes. Failing to meet even
        one of these conditions will prevent your proposal from being submitted.
        Use this endpoint to review the specific details of a chosen ruleset,
        which will guide you in preparing your data file correctly and ensuring
        a successful proposal submission.
      parameters:
        - name: ruleset_id
          in: path
          required: true
          description: >-
            The unique ruleset id. The ruleset’s ID can be retrieved from the
            response provided by the proposal department details endpoint.
          schema:
            type: integer
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                required:
                  - count
                  - results
                type: object
                properties:
                  count:
                    description: The total number of records
                    example: 100
                    type: integer
                  next:
                    description: Next page (applicable in a paginated response)
                    example: https://api.example.org/demo/{retailer_id}/?page=5
                    type: string
                    format: uri
                    nullable: true
                  previous:
                    description: Previous page (applicable in a paginated response)
                    example: https://api.example.org/demo/{retailer_id}/?page=3
                    type: string
                    format: uri
                    nullable: true
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/RulesetResults'
components:
  schemas:
    RulesetResults:
      type: object
      description: Defines a specific validation or processing rule within a ruleset.
      properties:
        id:
          type: integer
          format: int64
          description: The unique identifier of the rule.
          example: 574
        name:
          type: string
          description: The name of the rule.
          example: SKU
        ruleset:
          $ref: '#/components/schemas/Ruleset'
        description:
          type: string
          description: A brief description of what the rule does.
          example: ''
        target:
          type: object
          nullable: true
          description: Specifies the target of the rule, if any.
          example: null
        is_required:
          type: boolean
          description: Indicates if this rule is mandatory.
          example: true
        position:
          type: integer
          description: The order or priority of the rule within its group.
          example: 0
        rules:
          $ref: '#/components/schemas/Rule'
        created_at:
          type: string
          format: date-time
          description: The timestamp when the ruleset was created.
          example: '2022-06-16T18:08:42.000Z'
        updated_at:
          type: string
          format: date-time
          description: The timestamp when the ruleset was last updated.
          example: '2022-06-16T18:08:42.000Z'
    Ruleset:
      type: object
      description: >-
        Details about a specific ruleset, including its name, description, and
        timestamps.
      properties:
        id:
          type: integer
          format: int64
          description: The unique identifier of the ruleset.
          example: 36
        name:
          type: string
          description: The name of the ruleset.
          example: fabric Merchant Ruleset
        description:
          type: string
          description: A brief description of the ruleset.
          example: the default fabric merchant ruleset
        created_at:
          type: string
          format: date-time
          description: The timestamp when the ruleset was created.
          example: '2022-06-16T18:08:08.000Z'
        updated_at:
          type: string
          format: date-time
          description: The timestamp when the ruleset was last updated.
          example: '2022-08-24T05:38:42.000Z'
    Rule:
      type: object
      description: Defines a specific validation or processing rule within a ruleset.
      properties:
        id:
          type: integer
          format: int64
          description: The unique identifier of the rule.
          example: 574
        name:
          type: string
          description: The name of the rule.
          example: SKU
        description:
          type: string
          description: A brief description of what the rule does.
          example: ''
        attribute:
          $ref: '#/components/schemas/RulesetAttribute'
        target:
          type: object
          nullable: true
          description: Specifies the target of the rule, if any.
          example: null
        is_required:
          type: boolean
          description: Indicates if this rule is mandatory.
          example: true
        position:
          type: integer
          description: The order or priority of the rule within its group.
          example: 0
        rule_group_id:
          type: integer
          format: int64
          description: The ID of the rule group this rule belongs to.
          example: 124
        rule_validators:
          type: array
          description: A list of validators associated with this rule.
          items:
            type: object
          example: []
        rule_conditions:
          type: array
          description: A list of conditions that trigger or modify this rule.
          items:
            type: object
          example: []
        created_at:
          type: string
          format: date-time
          description: The timestamp when the rule was created.
          example: '2022-06-16T18:08:42.000Z'
        updated_at:
          type: string
          format: date-time
          description: The timestamp when the rule was last updated.
          example: '2022-06-16T18:08:42.000Z'
    RulesetAttribute:
      type: object
      description: >-
        Represents a product attribute, detailing its properties, type, and
        editing capabilities.
      properties:
        id:
          type: integer
          format: int64
          description: The unique identifier of the attribute.
          example: 2
        code:
          type: string
          description: A unique code for the attribute.
          example: identifier
        name:
          type: string
          description: The display name of the attribute.
          example: SKU
        grouping:
          type: string
          description: The category or grouping the attribute belongs to.
          example: identifiers
        priority:
          type: integer
          description: The priority order of the attribute.
          example: 100
        description:
          type: string
          description: A detailed description of the attribute.
          example: Product SKU or Identifier
        editable_by:
          type: string
          description: Specifies who can edit the attribute (e.g., 'any', 'admin').
          example: any
        type:
          type: string
          description: >-
            The data type of the attribute (e.g., 'string', 'integer',
            'boolean').
          example: string
        units:
          type: string
          description: The unit of measurement for the attribute, if applicable.
          example: ''
        default_unit:
          type: string
          nullable: true
          description: The default unit of measurement, if any.
          example: null
        available_units:
          type: array
          description: A list of available units for the attribute.
          items:
            type: string
          example: []
        is_bulk_editable:
          type: boolean
          description: Indicates if the attribute can be edited in bulk.
          example: false
  securitySchemes:
    Bearer:
      type: http
      scheme: bearer

````