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

# List promotions

> Get a list of all promotions

**Permission Required:** `promotions:read`



## OpenAPI

````yaml https://api.ofauth.com/openapi.json get /v2/access/promotions
openapi: 3.1.0
info:
  title: OFAuth API
  version: 1.0.0
  description: >-
    OFAuth API including Account, Connections, Link, Access, Dynamic Rules,
    Vault+, and Realtime webhook contracts
  contact:
    email: support@ofauth.com
    url: https://ofauth.com/
servers:
  - url: https://api.ofauth.com
security:
  - ApiKey: []
tags:
  - name: Account
    description: Account management endpoints.
  - name: Connections
    description: Connection management endpoints.
  - name: Link
    description: Link authentication and session endpoints.
  - name: Access
    description: All Access related endpoints.
  - name: Analytics
    description: 'Access: charts, tops, and performance metrics.'
  - name: Earnings
    description: 'Access: earnings charts, transactions, and chargebacks.'
  - name: Messages
    description: 'Access: messaging, chats, queue, and mass messaging.'
  - name: Posts
    description: 'Access: create, edit, list, and manage posts.'
  - name: Promotions
    description: 'Access: promotions, trials, and bundles.'
  - name: Users
    description: 'Access: user profiles, subscriptions, and actions.'
  - name: Vault
    description: 'Access: vault folders, media, and management.'
  - name: Upload
    description: 'Access: media upload and processing.'
  - name: Self
    description: 'Access: authenticated account details and settings.'
  - name: Stories
    description: 'Access: stories listing and management.'
  - name: Subscriptions
    description: 'Access: subscription offers, discounts, and management.'
  - name: Realtime
    description: >-
      Realtime webhook delivery contracts, including relayed OnlyFans websocket
      events.
  - name: Dynamic Rules
    description: Dynamic signing rules operations.
  - name: Vault+
    description: Vault+ caching and management.
externalDocs:
  description: OFAuth Developer Documentation
  url: https://docs.ofauth.com
paths:
  /v2/access/promotions:
    get:
      tags:
        - Promotions
      summary: List promotions
      description: |-
        Get a list of all promotions

        **Permission Required:** `promotions:read`
      parameters:
        - schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 20
            description: 'Number of items to return (1-100, default: 20)'
          required: false
          description: 'Number of items to return (1-100, default: 20)'
          name: limit
          in: query
        - schema:
            type: integer
            nullable: true
            minimum: 0
            default: 0
            description: 'Number of items to skip (default: 0)'
          required: false
          description: 'Number of items to skip (default: 0)'
          name: offset
          in: query
        - schema:
            type: string
            enum:
              - active
              - deleted
              - all
            default: active
            description: Which items to include
          required: false
          description: Which items to include
          name: status
          in: query
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                anyOf:
                  - type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: Promotion ID
                        message:
                          type: string
                          description: Rendered promotion message
                        rawMessage:
                          type: string
                          description: Original promotion message
                        hasRelatedPromo:
                          type: boolean
                          description: >-
                            True when OF created paired audience promotions from
                            one request
                        price:
                          type: number
                          description: Discounted subscription price in dollars
                        type:
                          type: string
                          enum:
                            - all
                            - expired
                          description: Promotion campaign audience returned by OnlyFans.
                        canClaim:
                          type: boolean
                          description: Whether the promotion can currently be claimed
                        claimsCount:
                          type: integer
                          minimum: 0
                          description: Number of claims so far
                        subscribeCounts:
                          type: integer
                          nullable: true
                          minimum: 0
                          description: Offer limit, or null for no limit
                        subscribeDays:
                          type: integer
                          minimum: 0
                          description: >-
                            Accepted promotion duration in days. OF can return 0
                            for first-month discounts.
                        createdAt:
                          type: string
                          description: Creation timestamp returned by OF
                        finishedAt:
                          type: string
                          nullable: true
                          description: >-
                            Finish timestamp, or null for promotions without an
                            explicit end date
                        isFinished:
                          type: boolean
                          description: Whether the promotion has ended
                      required:
                        - id
                        - message
                        - rawMessage
                        - hasRelatedPromo
                        - price
                        - type
                        - canClaim
                        - claimsCount
                        - subscribeCounts
                        - subscribeDays
                        - createdAt
                        - finishedAt
                        - isFinished
                  - type: object
                    properties:
                      list:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: integer
                              description: Promotion ID
                            message:
                              type: string
                              description: Rendered promotion message
                            rawMessage:
                              type: string
                              description: Original promotion message
                            hasRelatedPromo:
                              type: boolean
                              description: >-
                                True when OF created paired audience promotions
                                from one request
                            price:
                              type: number
                              description: Discounted subscription price in dollars
                            type:
                              type: string
                              enum:
                                - all
                                - expired
                              description: >-
                                Promotion campaign audience returned by
                                OnlyFans.
                            canClaim:
                              type: boolean
                              description: Whether the promotion can currently be claimed
                            claimsCount:
                              type: integer
                              minimum: 0
                              description: Number of claims so far
                            subscribeCounts:
                              type: integer
                              nullable: true
                              minimum: 0
                              description: Offer limit, or null for no limit
                            subscribeDays:
                              type: integer
                              minimum: 0
                              description: >-
                                Accepted promotion duration in days. OF can
                                return 0 for first-month discounts.
                            createdAt:
                              type: string
                              description: Creation timestamp returned by OF
                            finishedAt:
                              type: string
                              nullable: true
                              description: >-
                                Finish timestamp, or null for promotions without
                                an explicit end date
                            isFinished:
                              type: boolean
                              description: Whether the promotion has ended
                          required:
                            - id
                            - message
                            - rawMessage
                            - hasRelatedPromo
                            - price
                            - type
                            - canClaim
                            - claimsCount
                            - subscribeCounts
                            - subscribeDays
                            - createdAt
                            - finishedAt
                            - isFinished
                      hasMore:
                        type: boolean
                    required:
                      - list
                      - hasMore
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '429':
          description: Rate Limit Exceeded
        '500':
          description: Internal Server Error
        '502':
          description: Bad Gateway
      security:
        - ApiKey: []
          ConnectionId: []
components:
  securitySchemes:
    ApiKey:
      type: apiKey
      name: apiKey
      in: header
      description: >-
        Your OFAuth [API key](/quickstart#2-copy-your-api-key) for
        authenticating requests.
    ConnectionId:
      type: apiKey
      name: x-connection-id
      in: header
      description: >-
        Requires a [connection](/guides/connections) via the x-connection-id
        header.

````