Skip to main content
PUT
/
v2
/
access
/
promotions
/
:promotionId
Update promotion
curl --request PUT \
  --url https://api.ofauth.com/v2/access/promotions/:promotionId \
  --header 'Content-Type: application/json' \
  --header 'apiKey: <api-key>' \
  --header 'x-connection-id: <api-key>' \
  --data '
{
  "targetAudience": "all_subscribers",
  "discount": {
    "type": "free_trial",
    "durationDays": 15
  },
  "offer": {
    "limit": 50,
    "expirationDays": 15
  },
  "message": "<string>"
}
'
{
  "id": 123,
  "message": "<string>",
  "rawMessage": "<string>",
  "hasRelatedPromo": true,
  "price": 123,
  "type": "all",
  "canClaim": true,
  "claimsCount": 1,
  "subscribeCounts": 1,
  "subscribeDays": 1,
  "createdAt": "<string>",
  "finishedAt": "<string>",
  "isFinished": true
}

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.

Authorizations

apiKey
string
header
required

Your OFAuth API key for authenticating requests.

x-connection-id
string
header
required

Requires a connection via the x-connection-id header.

Path Parameters

promotionId
string | null

Promotion ID

Minimum string length: 1

Body

application/json
targetAudience
enum<string>

Audience that can claim the promotion. all_subscribers targets new and expired subscribers; new_subscribers targets only new subscribers; expired_subscribers targets only expired subscribers.

Available options:
all_subscribers,
new_subscribers,
expired_subscribers
discount
object

Promotion discount configuration.

offer
object

Offer limits and expiration.

message
string

Optional promotion message.

Maximum string length: 1000

Response

Successful response

id
integer
required

Promotion ID

message
string
required

Rendered promotion message

rawMessage
string
required

Original promotion message

True when OF created paired audience promotions from one request

price
number
required

Discounted subscription price in dollars

type
enum<string>
required

Promotion campaign audience returned by OnlyFans.

Available options:
all,
expired
canClaim
boolean
required

Whether the promotion can currently be claimed

claimsCount
integer
required

Number of claims so far

Required range: x >= 0
subscribeCounts
integer | null
required

Offer limit, or null for no limit

Required range: x >= 0
subscribeDays
integer
required

Accepted promotion duration in days. OF can return 0 for first-month discounts.

Required range: x >= 0
createdAt
string
required

Creation timestamp returned by OF

finishedAt
string | null
required

Finish timestamp, or null for promotions without an explicit end date

isFinished
boolean
required

Whether the promotion has ended