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

# Create Promotion (/api-reference/promotions/create-promotion)

Create a new promotion for the account.

## OpenAPI

````yaml https://app.onlyfansapi.com/scribe-docs/openapi.yaml post /api/{account}/promotions
openapi: 3.0.3
info:
  title: OnlyFans API
  description: ""
  version: 1.0.0
servers:
  - url: https://app.onlyfansapi.com
security:
  - default: []
tags:
  - name: API Keys
    description: ""
  - name: Account
    description: Endpoints for your linked accounts
  - name: Analytics - Financial
    description: APIs for retrieving financial analytics data
  - name: Analytics - Summary
    description: APIs for retrieving summary analytics data
  - name: Banking
    description: Operations related to user banking details, payout methods, legal
      and tax information, and account country settings.
  - name: Chargebacks
    description: ""
  - name: Chat Messages
    description: ""
  - name: Chats
    description: ""
  - name: Client Sessions
    description: ""
  - name: Connect OnlyFans Account
    description: ""
  - name: Data Exports
    description: APIs for managing data exports
  - name: Engagement / Messages
    description: ""
  - name: Fans
    description: APIs for managing OnlyFans fans (subscribers)
  - name: Fans - AI Summary
    description: APIs for generating and retrieving AI-powered fan profile summaries
  - name: Following
    description: APIs for managing OnlyFans followings (people you're subscribed to)
  - name: Free Trial Links
    description: APIs for managing Free Trial Links
  - name: Giphy
    description: ""
  - name: Link Tags
    description: APIs for managing tags on free trial links and tracking links
  - name: Mass Messaging
    description: ""
  - name: Media
    description: ""
  - name: Media Vault
    description: ""
  - name: Media Vault Lists
    description: ""
  - name: Notifications
    description: Endpoints for managingr account notifications
  - name: Payouts
    description: ""
  - name: Post Comments
    description: ""
  - name: Post Labels
    description: APIs for managing your post labels
  - name: Posts
    description: APIs for managing OnlyFans posts
  - name: Promotions
    description: ""
  - name: Public Profiles
    description: ""
  - name: Queue
    description: ""
  - name: Release Forms
    description: APIs for managing OnlyFans release forms
  - name: Saved For Later (Messages)
    description: ""
  - name: Saved For Later (Posts)
    description: ""
  - name: Settings
    description: ""
  - name: Shared Free Trial Links
    description: APIs for Free Trial Links that other OF creators have shared with
      this account. Revenue, cost, and spender data are not available for shared
      links.
  - name: Shared Tracking Links
    description: APIs for Tracking Links (campaigns) that other OF creators have
      shared with this account. Revenue, cost, and spender data are not
      available for shared campaigns.
  - name: Smart Link Postbacks
    description: APIs for managing Smart Link postback destinations
  - name: Smart Links
    description: APIs for managing Smart Links (Free Trial Links and Tracking Links
      with pooled inventory)
  - name: Statistics
    description: ""
  - name: Stored Free Trial Links
    description: Instant APIs for retrieving stored free trial links from the
      OnlyFansAPI Cache (free, no credits used)
  - name: Stored Shared Free Trial Links
    description: Instant APIs for retrieving stored shared Free Trial Links from the
      OnlyFansAPI Cache (free, no credits used)
  - name: Stored Shared Tracking Links
    description: Instant APIs for retrieving stored shared Tracking Links
      (campaigns) from the OnlyFansAPI Cache (free, no credits used)
  - name: Stored Tracking Links
    description: Instant APIs for retrieving stored tracking links from the
      OnlyFansAPI Cache (free, no credits used)
  - name: Stories
    description: APIs for managing OnlyFans stories
  - name: Story Highlights
    description: APIs for managing OnlyFans story highlights
  - name: Subscription Bundles
    description: ""
  - name: Tracking Links
    description: APIs for managing tracking links
  - name: Transactions
    description: APIs for managing OnlyFans transactions
  - name: User List Collections
    description: ""
  - name: Users
    description: APIs for fetching OnlyFans users
  - name: Webhooks
    description: ""
paths:
  /api/{account}/promotions:
    parameters:
      - in: path
        name: account
        description: The Account ID
        example: acct_XXXXXXXXXXXXXXX
        required: true
        schema:
          type: string
    post:
      summary: Create Promotion
      operationId: createPromotion
      description: Create a new promotion for the account.
      parameters: []
      responses:
        "200":
          description: ""
          content:
            application/json:
              schema:
                type: object
                example:
                  data:
                    - id: 123
                      message: Example promotion message
                      rawMessage: Example promotion message
                      hasRelatedPromo: false
                      price: 0
                      type: all
                      canClaim: true
                      claimsCount: 0
                      subscribeCounts: 10
                      subscribeDays: 7
                      createdAt: 2025-01-01T00:00:00+00:00
                      finishedAt: 2025-01-02T00:00:00+00:00
                      isFinished: false
                  _meta:
                    _credits:
                      used: 1
                      balance: 999999816
                      note: Always
                    _cache:
                      is_cached: false
                      note: Cache disabled for this endpoint
                    _rate_limits:
                      limit_minute: 1000
                      limit_day: null
                      remaining_minute: 998
                      remaining_day: null
                      notice: We have decided to remove our daily rate limits. Please remove any
                        references to these in your integrations.
                properties:
                  data:
                    type: array
                    example:
                      - id: 123
                        message: Example promotion message
                        rawMessage: Example promotion message
                        hasRelatedPromo: false
                        price: 0
                        type: all
                        canClaim: true
                        claimsCount: 0
                        subscribeCounts: 10
                        subscribeDays: 7
                        createdAt: 2025-01-01T00:00:00+00:00
                        finishedAt: 2025-01-02T00:00:00+00:00
                        isFinished: false
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          example: 123
                        message:
                          type: string
                          example: Example promotion message
                        rawMessage:
                          type: string
                          example: Example promotion message
                        hasRelatedPromo:
                          type: boolean
                          example: false
                        price:
                          type: integer
                          example: 0
                        type:
                          type: string
                          example: all
                        canClaim:
                          type: boolean
                          example: true
                        claimsCount:
                          type: integer
                          example: 0
                        subscribeCounts:
                          type: integer
                          example: 10
                        subscribeDays:
                          type: integer
                          example: 7
                        createdAt:
                          type: string
                          example: 2025-01-01T00:00:00+00:00
                        finishedAt:
                          type: string
                          example: 2025-01-02T00:00:00+00:00
                        isFinished:
                          type: boolean
                          example: false
                  _meta:
                    type: object
                    properties:
                      _credits:
                        type: object
                        properties:
                          used:
                            type: integer
                            example: 1
                          balance:
                            type: integer
                            example: 999999816
                          note:
                            type: string
                            example: Always
                      _cache:
                        type: object
                        properties:
                          is_cached:
                            type: boolean
                            example: false
                          note:
                            type: string
                            example: Cache disabled for this endpoint
                      _rate_limits:
                        type: object
                        properties:
                          limit_minute:
                            type: integer
                            example: 1000
                          limit_day:
                            type: string
                            example: null
                            nullable: true
                          remaining_minute:
                            type: integer
                            example: 998
                          remaining_day:
                            type: string
                            example: null
                            nullable: true
                          notice:
                            type: string
                            example: We have decided to remove our daily rate limits. Please remove any
                              references to these in your integrations.
      tags:
        - Promotions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                type:
                  type: string
                  description: "Whether this promotion should apply to new subscribers, expired
                    subscribers, or both. **IMPORTANT: when set to
                    new_and_expired, the OF will create two separate
                    promotions.**"
                  example: new
                  enum:
                    - new
                    - expired
                    - new_and_expired
                discount:
                  type: integer
                  description: The discount percentage for the promotion's first month. Set to 100
                    to make this promotion a Free Trial.
                  example: 10
                offerLimit:
                  type: integer
                  description: Limit how many people can claim this offer. Set to 0 for no limits.
                  example: 10
                expirationDays:
                  type: integer
                  description: In how many days this offer will expire. Set to 0 to make this
                    promotion infinite.
                  example: 7
                freeTrialDays:
                  type: integer
                  description: Required only when discount is 100. Sets the duration (in days) of
                    the free trial. Accepted 1-30
                  example: 10
                message:
                  type: string
                  description: Optionally, provide a message for this promotion.
                  example: Enjoy this special offer!
              required:
                - type
                - discount
                - offerLimit
                - expirationDays
components:
  securitySchemes:
    default:
      type: http
      scheme: bearer
      description: Get your API Key from OnlyFansAPI Console -
        https://app.onlyfansapi.com/api-keys
````