Talkable Rewards API

The Rewards API from Talkable — 3 operation(s) for rewards.

Operations 3

POST /api/v2/offer_claims Share and claim an offer #
GET /api/v2/people/{person_slug}/rewards Get rewards received by person #
GET /api/v2/rewards List rewards #

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/talkable-rewards-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 email required.

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

OpenAPI Specification

talkable-rewards-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Talkable Advocate Offers Rewards API
  version: '2.0'
  contact:
    name: API Reference
    url: https://docs.talkable.com/api_v2/
servers:
- url: https://www.talkable.com
security:
- api_key: []
tags:
- name: Rewards
paths:
  /api/v2/offer_claims:
    post:
      summary: Share and claim an offer
      tags:
      - Rewards
      parameters:
      - $ref: '#/components/parameters/site_slug_in_query_required'
      - name: advocate_email
        in: query
        schema:
          type: string
          format: email
          example: advocate@example.com
        required: true
      - name: friend_email
        in: query
        schema:
          type: string
          format: email
          example: friend@example.com
        required: true
      operationId: shareAndClaimOffer
      responses:
        '200':
          description: null
          content:
            application/json:
              examples:
                friend rewarded:
                  value:
                    ok: true
                    result:
                      friend_reward:
                        amount: 10.0
                        id: 1
                        reason: click
                        status: Paid
                        coupon:
                          amount: 10.0
                          description: $10
                          code: COUPON_CODE_29
                          expires_at: null
                          id: 1
                          percentage_discount: false
                          single_use: true
                          used: false
                          active: true
                          usages: 0
                          valid_until: null
                        coupon_code: COUPON_CODE_29
                        incentive_type: discount_coupon
                        incentive_description: single use coupon for $10 off
                        incentive_custom_description: null
                      friend_unredeem_reason: null
                      friend_human_unredeem_reason: null
                friend not rewarded:
                  value:
                    ok: true
                    result:
                      friend_reward: null
                      friend_unredeem_reason: SELF_REFERRAL
                      friend_human_unredeem_reason: Self Referral
        '400':
          description: null
          content:
            application/json:
              examples:
                invalid email for Advocate:
                  value:
                    ok: false
                    error_message: Invalid `advocate_email`.
                invalid email for Friend:
                  value:
                    ok: false
                    error_message: Invalid `friend_email`.
                no campaign found:
                  value:
                    ok: false
                    error_message: No campaign found.
  /api/v2/people/{person_slug}/rewards:
    parameters:
    - name: person_slug
      in: path
      schema:
        $ref: '#/components/schemas/person_slug'
      required: true
    get:
      summary: Get rewards received by person
      description: Returns rewards that person has earned in referral program.
      tags:
      - Rewards
      parameters:
      - $ref: '#/components/parameters/site_slug_in_query_required'
      operationId: getRewardsReceivedByPerson
      responses:
        '200':
          description: person found
          content:
            application/json:
              example:
                ok: true
                result:
                  rewards:
                  - amount: 10.0
                    id: 1
                    reason: referrer
                    status: Unpaid
                    coupon: null
                    coupon_code: null
                    incentive_type: discount_coupon
                    incentive_description: single use coupon for $10 off
                    incentive_custom_description: null
                  - amount: 10.0
                    id: 2
                    reason: click
                    status: Paid
                    coupon:
                      amount: 10.0
                      description: $10
                      code: C1383-8321
                      expires_at: null
                      id: 3
                      percentage_discount: null
                      single_use: false
                      used: false
                      active: true
                      usages: null
                      valid_until: null
                    coupon_code: C1383-8321
                    incentive_type: discount_coupon
                    incentive_description: shared coupon "C1383-8321" for $10 off
                    incentive_custom_description: null
        '400':
          description: person not found
          content:
            application/json:
              example:
                ok: false
                error_message: No person found by `person_slug`.
  /api/v2/rewards:
    get:
      summary: List rewards
      tags:
      - Rewards
      parameters:
      - $ref: '#/components/parameters/site_slug_in_query_required'
      - name: visitor_uuid
        in: query
        schema:
          $ref: '#/components/schemas/visitor_uuid'
        required: true
      operationId: listRewards
      responses:
        '200':
          description: returns the list of rewards
          content:
            application/json:
              example:
                ok: true
                result:
                  rewards:
                  - amount: 10.0
                    id: 1
                    reason: referrer
                    status: Paid
                    coupon: null
                    coupon_code: null
                    incentive_type: rebate
                    incentive_description: $10 back
                    incentive_custom_description: null
components:
  schemas:
    visitor_uuid:
      type: string
      format: uuid
      example: 123e4567-e89b-32d1-a456-426614174000
    person_slug:
      type: string
      example: customer@example.com
      description: Person’s email, phone number, customer ID or username
  parameters:
    site_slug_in_query_required:
      name: site_slug
      in: query
      required: true
      schema:
        type: string
      description: Your Talkable Site ID. You can get this from your Talkable dashboard after you log in and create a site.
      example: my-store
  securitySchemes:
    api_key:
      type: http
      scheme: bearer
      description: Please provide here your API key, you can find it in Site Settings -> API Integration -> API Key