Smile.io Reward Fulfillments API

Fulfillment records for rewards a customer has redeemed.

Documentation

Specifications

Other Resources

OpenAPI Specification

smile-io-reward-fulfillments-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Smile.io REST Activities Reward Fulfillments API
  description: A RESTful interface for interacting with Smile.io loyalty programs - customers and customer identities, points transactions and settings, points products and purchases, earning rules, rewards and reward fulfillments, VIP tiers, and activities. Resource-oriented URLs return JSON and use standard HTTP status codes. Authenticated with an HTTP Bearer token (a merchant API key, or an app OAuth access token). REST API access is available on the Plus and Enterprise plans.
  version: 1.0.0
  contact:
    name: Smile.io Developer Support
    url: https://dev.smile.io
  license:
    name: Proprietary
    url: https://smile.io/terms-of-service
servers:
- url: https://api.smile.io/v1
  description: Smile.io REST API
security:
- bearerAuth: []
tags:
- name: Reward Fulfillments
  description: Fulfillment records for rewards a customer has redeemed.
paths:
  /reward_fulfillments:
    get:
      summary: List reward fulfillments
      operationId: get__reward_fulfillments
      tags:
      - Reward Fulfillments
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  reward_fulfillments:
                    type: array
                    items:
                      $ref: '#/components/schemas/RewardFulfillment'
                  metadata:
                    $ref: '#/components/schemas/PaginationMetadata'
      description: Retrieves a list of reward fulfillments.
      parameters:
      - name: customer_id
        in: query
        required: false
        schema:
          type: integer
          description: Filter results to only reward fulfillments with the provided Smile customer ID.
        description: Filter results to only reward fulfillments with the provided Smile customer ID.
      - name: fulfillment_status
        in: query
        required: false
        schema:
          type: string
          description: Filter results to only reward fulfillments whose fulfillment status matches the provided value.
          enum:
          - pending
          - issued
          - cancelled
          - failed
        description: Filter results to only reward fulfillments whose fulfillment status matches the provided value.
      - name: usage_status
        in: query
        required: false
        schema:
          type: string
          description: Filter results to only reward fulfillments whose usage status matches the provided values.
          enum:
          - used
          - unused
          - untracked
        description: Filter results to only reward fulfillments whose usage status matches the provided values.
      - name: updated_at_min
        in: query
        required: false
        schema:
          type: string
          description: Filter results to only reward fulfillments updated after the provided date and time.
          format: date-time
        description: Filter results to only reward fulfillments updated after the provided date and time.
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          description: The maximum number of reward fulfillments to retrieve.
          example: 1
          minimum: 1
          maximum: 250
          default: 50
        description: The maximum number of reward fulfillments to retrieve.
      - name: cursor
        in: query
        required: false
        schema:
          type: string
          description: Cursor for the page of reward fulfillments to retrieve.
        description: Cursor for the page of reward fulfillments to retrieve.
components:
  schemas:
    RewardFulfillment:
      type: object
      properties:
        id:
          type: integer
          example: 625478984
          description: Unique identifier for the reward fulfillment.
        name:
          type: string
          example: $5 off coupon
          description: The name of the reward fulfillment.
        code:
          type: string
          example: 5off-e26d02e39149
          description: A unique code for the customer to use or apply the reward fulfillment. This is commonly a discount code the customer applies at checkout on their next order, but it can be a unique code they use for other purposes like accessing an exclusive page on the merchant's website.
        customer_id:
          type: integer
          example: 304169228
          description: The ID of the customer that the reward fulfillment belongs to.
        fulfillment_status:
          type: string
          enum:
          - pending
          - issued
          - cancelled
          - failed
          example: issued
          description: The fulfillment status of the reward fulfillment, indicating whether the reward is available to the customer.
        image_url:
          type: string
          example: https://platform-images.smilecdn.co/9283449.png
          description: An image for the reward fulfillment.
        action_text:
          type:
          - string
          - 'null'
          description: A short call-to-action style text, appropriate for use in buttons or links, guiding the customer on how to use the reward fulfillment. This field may be blank
        action_url:
          type:
          - string
          - 'null'
          description: A URL destination guiding the customer on how to use the reward, often paired with the `action_text` for use in buttons or links. This field may be blank.
        usage_instructions:
          type:
          - string
          - 'null'
          example: Use this discount code on your next order!
          description: A description of how the customer can use or apply the reward fulfillment.
        terms_and_conditions:
          type:
          - string
          - 'null'
          example: Reward expires on June 7, 2025. Reward can only be used on purchase of $50 or more. Reward can only be used on select product collections.
          description: A description of the reward fulfillment's limitations or restrictions. When the reward is a discount code, this commonly includes expiry date, minimum order amounts, or applicability to specific product collections.
        expires_at:
          type:
          - string
          - 'null'
          format: date-time
          example: '2025-06-07T23:59:59.999Z'
          description: The date and time when the reward fulfillment expires. When the reward is a discount code, this refers to the expiry date of the discount, and a `null` value indicates that the discount code does not expire.
        usage_status:
          type: string
          enum:
          - used
          - unused
          - untracked
          example: unused
          description: The usage status of the reward fulfillment, indicating whether the generated reward has been used by the customer.
        used_at:
          type:
          - string
          - 'null'
          format: date-time
          description: The date and time when the reward fulfillment was used by the customer. If the reward fulfillments does not support usage tracking, this field may be `null` even after the reward fulfillment has been used.
        created_at:
          type: string
          format: date-time
          example: '2024-12-07T20:15:27.893Z'
          description: The date and time when the reward fulfillment was created.
        updated_at:
          type: string
          format: date-time
          example: '2024-12-07T20:15:27.893Z'
          description: The date and time when the reward fulfillment was last updated.
    PaginationMetadata:
      type: object
      properties:
        next_cursor:
          type:
          - string
          - 'null'
          example: aWQ6MixkaXJlY3Rpb246bmV4dA==
          description: A cursor value that when present, can be used to retrieve the next page of results.
        previous_cursor:
          type:
          - string
          - 'null'
          example: ''
          description: A cursor value that when present, can be used to retrieve the previous page of results.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer