> ## Documentation Index
> Fetch the complete documentation index at: https://api.skycoach.gg/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Set or remove discount on offer

> Sets a seller discount on the offer. If the offer and its price are older than 14 days, the discount is applied immediately. Otherwise it goes into pending state and will be applied automatically by cron once eligible.
     *
     * Passing `discount_percent = 0` removes both pending and applied (seller_lk) discounts. Admin-set discounts are not affected.



## OpenAPI

````yaml /api-docs.json put /api/shop/marketplace/offers/{offer}/discount
openapi: 3.0.0
info:
  title: Currency Marketplace API
  description: API documentation for Currency Marketplace
  version: 1.0.0
servers:
  - url: https://skycoach.gg/
    description: API Server
security: []
tags:
  - name: Currency Marketplace
    description: Currency Marketplace
  - name: Offers
    description: Offers
  - name: Offer Credentials
    description: Offer Credentials
  - name: Offer Discount
    description: Offer Discount
paths:
  /api/shop/marketplace/offers/{offer}/discount:
    put:
      tags:
        - Offer Discount
      summary: Set or remove discount on offer
      description: >-
        Sets a seller discount on the offer. If the offer and its price are
        older than 14 days, the discount is applied immediately. Otherwise it
        goes into pending state and will be applied automatically by cron once
        eligible.
             *
             * Passing `discount_percent = 0` removes both pending and applied (seller_lk) discounts. Admin-set discounts are not affected.
      operationId: 4774fea3b16ab71720a7e7b93d99549c
      parameters:
        - name: Accept
          in: header
          description: API response format
          required: true
          schema:
            type: string
            default: application/json
            enum:
              - application/json
        - name: offer
          in: path
          required: true
          schema:
            type: integer
            example: 123
      requestBody:
        required: true
        content:
          application/json:
            schema:
              required:
                - discount_percent
              properties:
                discount_percent:
                  description: Discount percentage. 0 = remove discount.
                  type: integer
                  maximum: 40
                  minimum: 0
                  example: 20
              type: object
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                properties:
                  applied:
                    description: >-
                      true if discount was applied immediately, false if pending
                      or removed
                    type: boolean
                    example: false
                  discount_eligible_at:
                    description: >-
                      When pending discount will be applied. null if applied
                      immediately or no pending discount.
                    type: string
                    format: date-time
                    example: '2026-08-04T00:00:00+00:00'
                    nullable: true
                type: object
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                    example: Unauthenticated.
                type: object
        '404':
          description: Offer not found or does not belong to authenticated user
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                    example: Not found.
                type: object
        '422':
          description: Validation error
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                    example: The discount percent field must be between 0 and 90.
                type: object
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.