Punchh Users API

The Users API from Punchh — 35 operation(s) for users.

Operations 43

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /api2/mobile/users/login Sign a guest in to the loyalty app · Sign in #
Ask an LLM
“How do I log a guest into a restaurant's loyalty app with their email and password?”
“What user details come back when a guest signs in to the mobile app?”
Tell an agent
Sign in guest {user} to the mobile loyalty app.
Log guest {user} in from device {device} and return their profile.
POST /api2/mobile/users/connect_with_facebook Register or log in a guest with Facebook · Log in With Facebook #
Ask an LLM
“Can guests register on the loyalty app using their Facebook account?”
“Which Facebook details are passed when a guest connects with Facebook?”
Tell an agent
Connect guest {user} to the app using their Facebook ID.
Register a new app guest through Facebook login with details {user}.
POST /api2/mobile/apple_registrations Sign a guest in with Apple · Log in With Apple #
Ask an LLM
“Does the loyalty app support Sign in with Apple using Apple's private relay email?”
“What happens to a guest's session if they revoke app access from their Apple ID?”
Tell an agent
Sign guest {user} in with their Apple ID.
Register guest {user} through Apple sign-in for app client {client}.
DELETE /api2/mobile/users/logout Log a guest out of the mobile app · Log out #
Ask an LLM
“How do I end a guest's session in the mobile loyalty app?”
“Can I clear the push token when a guest logs out of the app?”
Tell an agent destructive · confirm first
Log out the guest on device {device}.
End app session {access_token} and drop push token {gcm_token}.
GET /api2/mobile/users/profile Get the signed-in guest's profile · Fetch User Information #
Ask an LLM
“What profile details can the app show for the guest who is signed in?”
“Where do I read a logged-in app user's name, email and other details?”
Tell an agent
Fetch the profile of the guest signed in on device {device}.
Show my loyalty app profile details.
PUT /api2/mobile/users Update the signed-in guest's profile · Update User Profile #
Ask an LLM
“Can a guest change their own name or phone number from the mobile app?”
“Why does a guest's birthday not change after the second update even though I get a 200?”
Tell an agent
Update my app profile with {user}.
Change the signed-in guest's profile on device {device} to {user} right away.
POST /api2/mobile/users Register a new guest in the mobile app · Sign up / Register #
Ask an LLM
“How do I sign up a new guest on a business's loyalty app?”
“Why must I pass a real first and last name when the business uses referral codes?”
Tell an agent
Register new app guest {user}.
Sign up {user} for the loyalty program from device {device}.
DELETE /api2/mobile/users Request deletion of the guest's own account · Request for Account Deletion #
Ask an LLM
“Can a guest ask to have their loyalty account deleted from inside the app?”
“How long until a guest's account is actually deleted after they request it?”
Tell an agent destructive · confirm first
Mark the account signed in on device {device} for deletion.
Submit my own account deletion request from the app.
POST /api2/mobile/users/forgot_password Email a guest a password reset link · Forgot Password #
Ask an LLM
“How does a guest who forgot their app password get a reset link?”
“Can the mobile app trigger a password reset email for a guest?”
Tell an agent
Send a password reset email to app guest {user}.
Start the forgot-password flow for {user} in the mobile app.
GET /api2/mobile/users/account_history Show a guest's loyalty account history · User Account History #
Ask an LLM
“Where can a guest see their past check-ins and redemptions in the app?”
“Does the app's account history include gift card transactions?”
Tell an agent
Show my loyalty account history in the app.
List my account history filtered to {event_filter} events.
PUT /api2/mobile/user_relations/{id} Update a guest's spouse or kid entry · Update User Relation #
Ask an LLM
“Can a guest fix the birthday of a child they already added to their profile?”
“Is it possible to rename a spouse saved on a loyalty account?”
Tell an agent
Change the birthday on relation {id} to {birthday}.
Rename existing family relation {id} to {name}.
DELETE /api2/mobile/user_relations/{id} Remove a spouse or kid from a guest's profile · Delete User Relation #
Ask an LLM
“How do I remove a child or spouse a guest previously added to their account?”
“Can a family relation be deleted from the loyalty profile?”
Tell an agent destructive · confirm first
Delete family relation {id} from my profile.
Remove the spouse or kid saved as relation {id}.
POST /api2/mobile/user_relations Add a spouse or kid to a guest's profile · Create User Relation #
Ask an LLM
“Can guests add their kids' birthdays to their loyalty profile?”
“Which relation types can a guest add besides a spouse?”
Tell an agent
Add my kid {name} born {birthday} to my profile.
Create a {relation} relation named {name} with birthday {birthday}.
POST /api2/mobile/users/send_verification_email Send a guest an account verification email · Send Verification Email #
Ask an LLM
“How do I resend the account verification email to a guest?”
“Can the app ask Punchh to email a guest to verify their address?”
Tell an agent
Send a verification email to the guest signed in to app client {client}.
Resend my account verification email.
POST /api2/mobile/session_tokens Get a short-lived token for POS or kiosk lookup · Get User Session Token #
Ask an LLM
“Can a guest identify themselves at a kiosk using a temporary token from the app?”
“What is the session token used for when looking a guest up at the POS?”
Tell an agent
Generate a short-lived session token for app client {client}.
Create a temporary token so the POS can look me up.
PATCH /api2/mobile/async_users Update a guest's profile asynchronously · Asynchronous User Update #
Ask an LLM
“Is there a way to queue a guest profile change instead of applying it immediately?”
“Which endpoint updates a guest's details in the background rather than synchronously?”
Tell an agent
Queue an asynchronous profile update with {user}.
Update guest details {user} in the background.
POST /api2/mobile/aws_s3_pre_signed_url Get a pre-signed URL to upload an image · Image Upload to AWS #
Ask an LLM
“How does the app upload a guest's image file, such as a receipt photo?”
“Can I get a pre-signed upload URL for an image from the app?”
Tell an agent
Get a pre-signed upload URL for image {filename}.
Upload the photo named {filename} to storage.
GET /api2/mobile/users/balance Get the guest's balance, badges and redemptions · Fetch User Balance #
Ask an LLM
“What does the app's user balance call return besides points?”
“Where can I see a guest's active redemptions, badges and notification count together?”
Tell an agent
Fetch my balance summary with active redemptions and badges.
Show the balance, notifications and badges for app client {client}.
POST /api2/mobile/conversions Convert a guest's points to cash, fuel or charity · Point Conversion #
Ask an LLM
“Can guests turn their loyalty points into a fuel discount or a charity donation?”
“What conversion rule does a points-to-cash conversion need?”
Tell an agent
Convert {source_value} points into {converted_value} using rule {rule}.
Apply conversion rule {rule} to {source_value} of my points.
GET /api2/mobile/deals List deals available to the guest in the app · List All Deals #
Ask an LLM
“Which deals can a guest browse in the mobile app?”
“How many deals come back per page if I don't set a page size?”
Tell an agent
List the deals available to me in the app.
Show page {page} of my app deals with {per_page} per page.
POST /api2/mobile/deals Save a deal to the guest's account · Save Selected Deal #
Ask an LLM
“How does a guest claim a deal so it shows up in their account?”
“Can I add a specific deal to a guest's account from the app?”
Tell an agent
Save deal {redeemable_uuid} to my account.
Claim the deal {redeemable_uuid} for me in the app.
GET /api2/mobile/estimate_points Estimate points a purchase would earn · Estimate Points Earning #
Ask an LLM
“Can I show a guest how many points an order will earn before they pay?”
“Does the points estimate include special promotions or campaigns?”
Tell an agent
Estimate the points I'd earn on a {receipt_amount} order.
Predict points for a {receipt_amount} receipt at store {store_number}.
GET /api2/mobile/balance_timelines Show a guest's currency and fuel balance timeline · Balance Timelines #
Ask an LLM
“How has a guest's banked currency or fuel discount changed over time?”
“What does the balance timeline return for a business that only uses currency?”
Tell an agent
Show the balance timeline for session {access_token}.
Get my currency and fuel discount timeline in the app.
POST /api2/mobile/user_enrollments Enroll the guest in a social cause campaign · User Enrollment #
Ask an LLM
“Can a guest join a social cause campaign from the mobile app?”
“Which campaign types support guest enrollment today?”
Tell an agent
Enroll me in campaign {item_id} of type {item_type}.
Sign me up for social cause campaign {item_id} in the app.
PATCH /api2/mobile/user_enrollments Remove the guest from a social cause campaign · User Disenrollment #
Ask an LLM
“How does a guest leave a social cause campaign they joined in the app?”
“Can I unenroll a guest from a campaign without deleting their account?”
Tell an agent
Unenroll me from {item_type} campaign {item_id} in the app.
Take me out of my current {item_type} campaign.
GET /api2/mobile/deals/{redeemable_uuid} Get the details of one deal · Get Deal Details #
Ask an LLM
“What are the terms of a specific deal shown in the app?”
“Can I look up one deal by its UUID?”
Tell an agent
Show the details of deal {redeemable_uuid}.
Open deal {redeemable_uuid} and tell me what it offers.
GET /api2/mobile/users/lifetime_stats Show a guest's lifetime loyalty stats · Lifetime Stats #
Ask an LLM
“How many visits and points has a guest racked up since they joined?”
“Is there a summary of a member's loyalty activity since sign-up?”
Tell an agent
Show my lifetime loyalty stats since I signed up.
Get lifetime statistics for the guest on app client {client}.
GET /api2/mobile/users/points_expiry_timeline Show when a guest's points expire each month · Fetch Rolling Points Expiry #
Ask an LLM
“When are a guest's loyalty points going to expire?”
“Which settings must be on before the points expiry timeline works?”
Tell an agent
Show my upcoming points expiry dates.
List points expiring with status {status} over a {lookback_period} lookback.
POST /api2/mobile/users/google_sign_in Sign a guest in with Google · Log in With Google #
Ask an LLM
“Can guests log into the loyalty app with their Google account?”
“What must be enabled before Google Sign-in works for a business?”
Tell an agent
Sign in with Google using ID token {google_id_token}.
Register {first_name} {last_name} via Google token {google_id_token}.
POST /api2/mobile/users/request_reactivation Request reactivation of a deactivated profile · Reactivate User Profile #
Ask an LLM
“Can a guest whose profile was deactivated ask to be reactivated from the app?”
“When is a guest allowed to request their own reactivation?”
Tell an agent
Request reactivation of the deactivated profile for {email}.
Ask to reactivate my account with email {email} and phone {phone}.
POST /api2/dashboard/users/ban Ban a guest from the loyalty program · Ban a User #
Ask an LLM
“How do I stop a fraudulent guest from checking in or redeeming rewards?”
“Can a ban also cover every device linked to the guest?”
Tell an agent destructive · confirm first
Ban user {user_id} for reason {reason}.
Ban guest {user_id} for {reason}, banning all linked devices: {all_devices}.
DELETE /api2/dashboard/users/ban Lift a ban on a guest · Unban a User #
Ask an LLM
“How do I let a banned guest check in and redeem again?”
“Can an admin remove a ban placed on a loyalty member?”
Tell an agent destructive · confirm first
Unban user {user_id}.
Remove the ban on guest {user_id} so they can redeem again.
POST /api2/dashboard/users/send_message Message a guest and gift points or rewards · Send Message to a User #
Ask an LLM
“Can I send a guest a message and gift them points at the same time?”
“Is it possible to advance a guest's challenge progress with an admin message?”
Tell an agent
Send user {user_id} a message titled {subject} saying {message}.
Gift {gift_count} points to user {user_id} for {gift_reason}.
POST /api2/dashboard/users/reactivate Reactivate a deactivated guest · Reactivate a User #
Ask an LLM
“How do admins bring a deactivated guest back so they can check in again?”
“Can a deactivated loyalty member be restored from the dashboard?”
Tell an agent
Reactivate user {user_id}.
Restore deactivated guest {user_id} to active status.
DELETE /api2/dashboard/users/deactivate Deactivate a guest · Deactivate a User #
Ask an LLM
“What is the first step before deleting a guest from the platform?”
“Can I suspend a guest's check-ins and emails without deleting them?”
Tell an agent destructive · confirm first
Deactivate user {user_id}.
Suspend guest {user_id} from check-ins, redemptions and emails.
DELETE /api2/dashboard/users Mark a deactivated guest for deletion · Delete a User #
Ask an LLM
“How do admins permanently delete a guest who was already deactivated?”
“Does a guest have to be deactivated before they can be deleted?”
Tell an agent destructive · confirm first
Delete deactivated user {user_id}.
Mark guest {user_id} for deletion because {reason}.
PATCH /api2/dashboard/users Update any field on a guest as an admin · Update a User #
Ask an LLM
“Can an admin edit a guest's profile fields from the dashboard?”
“Why didn't an admin birthday change stick for a guest?”
Tell an agent
As an admin, update user {id} with {user}.
Edit the guest with email {email} and set {user}.
POST /api2/dashboard/users/send_user_details_export Email a guest their data export · Get User Export #
Ask an LLM
“How do I send a guest a copy of their personal data?”
“Can the guest data export go only to the admin who asked for it?”
Tell an agent
Email a data export for user {user_id}.
Send the export for user {user_id} to me only, admin-only set to {email_admin_only}.
GET /api2/dashboard/users/extensive_timeline Get a guest's extended timeline · Get Extended User History #
Ask an LLM
“Where can support staff see a guest's full extended activity timeline?”
“Is there a more detailed history view for a single guest than the app shows?”
Tell an agent
Get the extended timeline for user {user_id}.
Pull guest {user_id}'s full activity history from the dashboard.
GET /api2/dashboard/user_favourite_locations List a guest's favorite locations · Fetch User Favorite Locations #
Ask an LLM
“Which stores has a guest marked as their favorites?”
“Can I see a guest's favorite locations for eClub?”
Tell an agent
List favorite locations for user {user_id}.
Show which stores guest {user_id} favorited.
DELETE /api2/dashboard/user_favourite_locations Remove one of a guest's favorite locations · Delete User Favorite Location #
Ask an LLM
“How do I remove a store from a guest's favorites?”
“Can several favorite locations be deleted in one call?”
Tell an agent destructive · confirm first
Remove favorite location {fav_id} from user {user_id}.
Unfavorite entry {fav_id} for guest {user_id}.
GET /api2/dashboard/users/info Look up a guest by ID, email or phone · Get User Information #
Ask an LLM
“How can an admin find a guest by email address or phone number?”
“Why can't I search guests by phone number?”
Tell an agent
Find the guest with email {email}.
Look up user information for phone {phone}.
GET /api2/dashboard/users/redemption Look up redemptions applied to an order · Redemption Look-up #
Ask an LLM
“Which offers and discounts were applied to a specific online or POS order?”
“Can I reconcile redemptions by transaction number?”
Tell an agent
Look up redemptions on transaction {transaction_no}.
Show which discounts were applied to order {transaction_no}.

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/mobile-access-token-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/mobile-create-user-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/mobile-login-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/mobile-mark-offers-read-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/mobile-transaction-details-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/mobile-transaction-details-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/mobile-update-user-profile-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/mobile-user-session-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/mobile-access-token-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/mobile-create-user-request-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/mobile-login-request-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/mobile-mark-offers-read-request-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/mobile-transaction-details-request-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/mobile-transaction-details-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/mobile-update-user-profile-request-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/mobile-user-session-structure.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/online-ordering-online-order-checkin-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/online-ordering-online-order-checkin-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/online-ordering-online-order-redemption-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/online-ordering-online-order-redemption-response-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/online-ordering-online-order-checkin-request-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/online-ordering-online-order-checkin-response-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/online-ordering-online-order-redemption-request-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/online-ordering-online-order-redemption-response-structure.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-schema/platform-functions-redeemable-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-structure/platform-functions-redeemable-structure.json

Other Resources

🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/mobile-access-token-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/mobile-create-user-request-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/mobile-login-request-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/mobile-mark-offers-read-request-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/mobile-transaction-details-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/mobile-transaction-details-request-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/mobile-update-user-profile-request-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/mobile-user-session-example.json
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-ld/punchh-mobile-context.jsonld
🔗
PostmanCollection
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/collections/punchh-mobile.postman_collection.json
🔗
OpenCollection
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/collections/punchh-mobile.opencollection.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/online-ordering-online-order-checkin-request-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/online-ordering-online-order-checkin-response-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/online-ordering-online-order-redemption-request-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/online-ordering-online-order-redemption-response-example.json
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-ld/punchh-online-ordering-context.jsonld
🔗
PostmanCollection
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/collections/punchh-online-ordering.postman_collection.json
🔗
OpenCollection
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/collections/punchh-online-ordering.opencollection.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/examples/platform-functions-redeemable-example.json
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/json-ld/punchh-platform-functions-context.jsonld
🔗
PostmanCollection
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/collections/punchh-platform-functions.postman_collection.json
🔗
OpenCollection
https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/collections/punchh-platform-functions.opencollection.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/punchh:punchh-users-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

punchh-users-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Punchh Users API
  version: '1.0'
  description: 'Operations tagged Users across 2 of this provider''s published API definitions: punchh-mobile-api-openapi.yml, punchh-platform-functions-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://SERVER_NAME_GOES_HERE.punchh.com
tags:


# --- truncated at 32 KB (362 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/punchh/refs/heads/main/openapi/punchh-users-api-openapi.yml