Support Gifting to a User

The Support Gifting API enables administrators (such as restaurant managers, support staff, or corporate team members) to grant users different types of rewards (e.g., redeemables, points, etc.). It is particularly valuable in customer support, operational adjustments, or exception-handling scenarios where manual gifting is required.

Caution: It must not be used for bulk or large-scale gifting and is not a substitute for marketing or promotional campaigns.

Maximum allowed usage: The API enforces a rate limit of 1,250 requests per minute (RPM).

Recommendation: For bulk gifting use cases (points or rewards), we recommend using Asynchronous Support Gifting API, which supports up to 4,000 RPM and is optimized for high-volume gifting scenarios.

Headers
  • Content-Type
    Type: string
    required

    The media type of the request body. Must be application/json.

  • Accept
    Type: string
    required

    The media type the client expects in the response. Must be application/json.

  • Authorization
    Type: string
    required

    Bearer token for admin authorization. Send the API key in the following format: "Authorization: Bearer BUSINESS_ADMIN_KEY_GOES_HERE".

Body
application/json
  • challenge_campaign_id
    Type: integer

    Unique ID of the challenge in a campaign for which progress will be gifted

  • end_date
    Type: stringFormat: date

    The date on which you want the gifted redeemable to expire. If this date is provided and there is an expiry configured on the redeemable, it will expire on the earlier date.

  • fuel_amount
    Type: number

    Fuel amount that you want to gift to the user

  • gift_count
    Type: integer

    In a points-based business, the gift count is the number of points that will be gifted to guests. In a visit-based business, it is the number of visits that will be gifted. Gifting is optional. You can send either a message only or a gift only. However, at least one of the two should be sent.

  • gift_reason
    Type: string

    The reason these points, visits, or rewards are being gifted to the user. If no value is provided, the default system value of "Support Activity" will be provided.

  • location_id
    Type: integer

    Unique ID of the location associated with the gift. This is for reference purposes. If no location ID is provided, the ID of the headquarters location will be used.

  • message
    Type: string

    The message that will be sent to the user. Messaging is optional. You can send either a message only or a gift only. However, at least one of the two should be sent.

  • progress_count
    Type: integer

    Number of steps that will be gifted to the user for the challenge ID specified in challenge_campaign_id. If the API call is successful, the progress made in the challenge is shown in the Challenges tab on the user timeline in the Punchh platform. Challenges must be enabled for the business in the Punchh platform, and the bearer token for admin authorization passed in the Authorization header must have the Dashboard API Access and Gift or Force Redeem permissions for the API to gift the user the progress for a challenge successfully. Contact your Punchh representative to update this Punchh platform configuration.

  • redeemable_id
    Type: integer

    Unique ID of the redeemable that you want to gift to the user. Gifting is optional. You can send either a message only or a gift only. However, at least one of the two should be sent.

  • reset_guest_last_activity
    Type: boolean

    Resets the guest's last activity which is the expiry date to the current time

  • reward_amount
    Type: integer

    Currency amount that will be gifted to the user. Gifting is optional. You can send either a message only or a gift only. However, at least one of the two should be sent.

  • subject
    Type: string

    Subject of the message that you want to send to the user. If no value is provided, the default system value will be picked.

Responses
  • application/json
  • application/json
  • application/json
Request Example for post/api2/dashboard/users/support
curl https://SERVER_NAME_GOES_HERE.punchh.com/api2/dashboard/users/support \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json' \
  --header 'Authorization: ' \
  --data '{
  "user_id": 111111111,
  "subject": "Gifts from us.",
  "message": "Thank you for contacting us. Here are 50 extra points to make your day.",
  "gift_reason": "Admin Generosity",
  "gift_count": 50,
  "location_id": 310969,
  "challenge_campaign_id": 48770,
  "progress_count": 1
}'
{}