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

# Redeem

> Redeem winning Polymarket position for USDC.e on Polygon.

Requires API key in Authorization header.
Rate limited: 10/minute per API key.

For managed wallets: signs and submits server-side, returns tx_hash.
For external wallets: returns unsigned_tx for client-side signing
(sign locally, then broadcast via POST /api/sdk/wallet/broadcast-tx).

**Managed wallet:** Server signs and submits, returns `tx_hash`.

**External wallet:** Server returns `unsigned_tx` for you to sign. The Python SDK handles this automatically with `client.redeem()`.

<Tip>Use `GET /api/sdk/positions` and look for `"redeemable": true` to find positions ready to redeem.</Tip>


## OpenAPI

````yaml /openapi.json post /api/sdk/redeem
openapi: 3.1.0
info:
  title: Simmer API
  description: Agent-native trading infrastructure for prediction markets.
  version: 1.0.0
servers:
  - url: https://api.simmer.markets
security: []
paths:
  /api/sdk/redeem:
    post:
      tags:
        - sdk-redeem
      summary: Redeem
      description: |-
        Redeem winning Polymarket position for USDC.e on Polygon.

        Requires API key in Authorization header.
        Rate limited: 10/minute per API key.

        For managed wallets: signs and submits server-side, returns tx_hash.
        For external wallets: returns unsigned_tx for client-side signing
        (sign locally, then broadcast via POST /api/sdk/wallet/broadcast-tx).
      operationId: api_sdk_redeem_api_sdk_redeem_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SDKRedeemRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SDKRedeemResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    SDKRedeemRequest:
      properties:
        market_id:
          type: string
          title: Market Id
        side:
          type: string
          enum:
            - 'yes'
            - 'no'
          title: Side
      type: object
      required:
        - market_id
        - side
      title: SDKRedeemRequest
      description: Request to redeem a winning Polymarket position via SDK.
    SDKRedeemResponse:
      properties:
        success:
          type: boolean
          title: Success
        tx_hash:
          anyOf:
            - type: string
            - type: 'null'
          title: Tx Hash
        unsigned_tx:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Unsigned Tx
        error:
          anyOf:
            - type: string
            - type: 'null'
          title: Error
      type: object
      required:
        - success
      title: SDKRedeemResponse
      description: Response from SDK redemption.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError

````