> ## Documentation Index
> Fetch the complete documentation index at: https://docs.omneo.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Add and Redeem Benefit Claim

> A `POST` to the `/profiles/{profileId}/benefits/claim-redeem` endpoint allows your application to create and immediatly claim a Benefit Redemption.

This method is similar to [Add Benefit Claim](/api-reference/profile-benefit/claim-benefit), but in addition to claiming, the benefit is also immediately redeemed against the claiming profile.
This is useful in situations where the benefit must be immediately consumed after a claim

```json theme={null}
{
    "data": {
        "id": 16,
        "profile_id": "92d7fbd9-1eda-47b5-3312-7b3227ca3b9e",
        "external_id": null,
        "expires_at": "2021-04-24 23:59:59",
        "issued_at": "2021-03-05 00:06:51",
        "is_expired": false,
        "is_redeemable": true,
        "redemptions_remaining": 1,
        "total_global_redemptions_remaining": 1,
        "definition": {
            "id": "3",
            "name": "10%OFFDEMO",
            "handle": "10offdemo",
            "period": 50,
            "description": "10% off",
            "internal_notes": "demo",
            "short_description": "A quick 10% off",
            "long_description": "Just another 10% voucher for you",
            "terms_conditions": "standard terms and conditions apply",
            "earn_instructions": null,
            "redeem_instructions_store": null,
            "redeem_instructions_online": null,
            "redeem_code_pos": "10OFFSTORE",
            "redeem_code_online": "10OFFONLINE",
            "icon": null,
            "image_url": "https://example.com/image.jpeg",
            "max_redemptions": 1,
            "is_extendable": false,
            "is_assignable": true,
            "is_reassignable": false,
            "is_published": true,
            "is_archived": false,
            "tags": [
                "demo"
            ],
            "is_claimable": true,
            "max_global_redemptions": null,
            "claim_period_start_at": "2020-12-25 07:00:00",
            "claim_period_end_at": "2021-05-08 23:00:00",
            "claim_condition": {
                "and": [
                    {
                        "===": [
                            "female",
                            {
                                "var": "gender"
                            }
                        ]
                    }
                ]
            },
            "is_reclaimable": true,
            "notify_schedule_offset": null,
            "notify_issue_offset_days": null,
            "notify_issue_offset_hour": null,
            "notify_remind_offset_days": null,
            "notify_remind_offset_hour": null,
            "notify_extend_offset_days": null,
            "notify_extend_offset_hour": null,
            "remind_target_id": null,
            "extend_target_id": null,
            "issue_target_id": null,
            "end_at": null,
            "total_allocations": null,
            "total_allocations_remaining": null,
            "force_allocation": false,
            "created_at": "2021-03-04 03:30:54",
            "updated_at": "2021-03-04 03:47:47"
        },
        "timezone": "Australia/Melbourne",
        "claimed_at": "2021-03-05 00:06:51",
        "meta": null,
        "redeem_code_pos": "10OFFSTORE",
        "redeem_code_online": "10OFFONLINE",
        "created_at": "2021-03-05 00:06:51",
        "updated_at": "2021-03-05 00:06:51"
    }
}
```

| Attribute             | Description                                                                                                       |
| --------------------- | ----------------------------------------------------------------------------------------------------------------- |
| definition `STRING`   | The definition `handle` of the benefit definition you wish to claim                                               |
| timezone `TIMEZONE`   | A valid [timezone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) Where the definition was claimed |
| external\_id `STRING` | The external ID of the benefit claim. Usually a reference to the claim in the external client system              |
| meta `ARRAY`          | An array of metadata attached to the claim                                                                        |


## OpenAPI

````yaml post /v3/profiles/{profile}/benefits/claim-redeem
openapi: 3.1.0
info:
  title: Omneo
  version: 0.0.1
servers:
  - url: https://api.{tenant}.getomneo.com/api
    variables:
      tenant:
        default: example
security: []
paths:
  /v3/profiles/{profile}/benefits/claim-redeem:
    post:
      tags:
        - Profile Benefit
      summary: Add and Redeem Benefit Claim
      description: >-
        A `POST` to the `/profiles/{profileId}/benefits/claim-redeem` endpoint
        allows your application to create and immediatly claim a Benefit
        Redemption.
      operationId: profileBenefit.claimRedeem
      parameters:
        - name: profile
          in: path
          required: true
          description: The profile ID
          schema:
            type: string
            format: uuid
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClaimBenefit'
      responses:
        '200':
          description: '`Redemption`'
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Redemption'
                required:
                  - data
        '401':
          $ref: '#/components/responses/AuthenticationException'
        '404':
          $ref: '#/components/responses/ModelNotFoundException'
        '422':
          $ref: '#/components/responses/ValidationException'
components:
  schemas:
    ClaimBenefit:
      type: object
      properties:
        definition:
          type: string
        timezone:
          type: string
        external_id:
          type:
            - string
            - 'null'
        meta:
          type:
            - array
            - 'null'
          items:
            type: string
      required:
        - definition
        - timezone
      title: ClaimBenefit
    Redemption:
      type: object
      properties:
        id:
          type: integer
        profile_id:
          type: string
        profile:
          type: object
          properties:
            first_name:
              type:
                - string
                - 'null'
            last_name:
              type:
                - string
                - 'null'
            full_name:
              type: string
            email:
              type: string
            statuses:
              type: array
              items: {}
          required:
            - first_name
            - last_name
            - full_name
            - email
            - statuses
        type:
          type: string
        total:
          type: string
        total_localised:
          type: string
        meta:
          type:
            - array
            - 'null'
          items: {}
        location_id:
          type:
            - integer
            - 'null'
        location:
          type:
            - object
            - 'null'
          properties:
            id:
              type: integer
            type:
              type:
                - string
                - 'null'
            name:
              type:
                - string
                - 'null'
            description:
              type:
                - string
                - 'null'
            phone:
              type:
                - string
                - 'null'
            email:
              type:
                - string
                - 'null'
            external_id:
              type:
                - string
                - 'null'
            is_published:
              type: boolean
            is_permanently_closed:
              type: boolean
          required:
            - id
            - type
            - name
            - description
            - phone
            - email
            - external_id
            - is_published
            - is_permanently_closed
        transaction_id:
          type: string
        items:
          type: array
          items:
            $ref: '#/components/schemas/RedemptionItem'
        created_at:
          type: string
        updated_at:
          type: string
        redeem_at:
          type: string
        transaction:
          type:
            - object
            - 'null'
          properties:
            external_id:
              type:
                - string
                - 'null'
            receipt_ref:
              type:
                - string
                - 'null'
            transacted_at:
              type: string
            total:
              type: number
            location:
              type:
                - object
                - 'null'
              properties:
                id:
                  type: string
                name:
                  type: string
                external_id:
                  type: string
              required:
                - id
                - name
                - external_id
          required:
            - external_id
            - receipt_ref
            - transacted_at
            - total
            - location
      required:
        - id
        - profile_id
        - profile
        - type
        - total
        - total_localised
        - meta
        - location_id
        - location
        - transaction_id
        - items
        - created_at
        - updated_at
        - redeem_at
        - transaction
      title: Redemption
    RedemptionItem:
      type: object
      properties:
        id:
          type: integer
        type:
          type: string
        value:
          type:
            - number
            - 'null'
        count:
          type:
            - integer
            - 'null'
        type_attributes:
          anyOf:
            - $ref: '#/components/schemas/Credit'
            - $ref: '#/components/schemas/Benefit'
            - $ref: '#/components/schemas/Point'
            - $ref: '#/components/schemas/Reward'
            - type: 'null'
        created_at:
          type: string
        updated_at:
          type: string
      required:
        - id
        - type
        - value
        - count
        - type_attributes
        - created_at
        - updated_at
      title: RedemptionItem
    Credit:
      type: object
      properties:
        id:
          type: integer
        profile_id:
          type:
            - string
            - 'null'
        creator_profile_id:
          type:
            - string
            - 'null'
        staff_id:
          type:
            - string
            - 'null'
        location_id:
          type:
            - integer
            - 'null'
        name:
          type:
            - string
            - 'null'
        credit_definition_id:
          type:
            - integer
            - 'null'
        definition:
          $ref: '#/components/schemas/CreditDefinition'
        timezone:
          type:
            - string
            - 'null'
        recipient_first_name:
          type:
            - string
            - 'null'
        recipient_email:
          type:
            - string
            - 'null'
        message:
          type:
            - string
            - 'null'
        issued_at:
          type: string
        expires_at:
          type: string
        released_at:
          type: string
        extended_at:
          type: string
        value_initial:
          type:
            - string
            - 'null'
        value_remaining:
          type:
            - string
            - 'null'
        external_id:
          type:
            - string
            - 'null'
        external_namespace:
          type:
            - string
            - 'null'
        credit_number:
          type:
            - string
            - 'null'
        security_code:
          type:
            - string
            - 'null'
        source_id:
          type:
            - integer
            - 'null'
        source_type:
          type:
            - string
            - 'null'
        locked:
          type: boolean
        lock_expires_at:
          type: string
        has_notified_issue:
          type: boolean
        has_notified_expiry:
          type: boolean
        has_notified_release:
          type: boolean
        has_notified_remind:
          type: boolean
        has_notified_extend:
          type: boolean
        meta:
          type:
            - array
            - 'null'
          items: {}
        is_imported:
          type: boolean
        is_system_generated:
          type: boolean
        created_at:
          type: string
        updated_at:
          type: string
      required:
        - id
        - profile_id
        - creator_profile_id
        - staff_id
        - location_id
        - name
        - credit_definition_id
        - timezone
        - recipient_first_name
        - recipient_email
        - message
        - issued_at
        - expires_at
        - released_at
        - extended_at
        - value_initial
        - value_remaining
        - external_id
        - external_namespace
        - credit_number
        - security_code
        - source_id
        - source_type
        - locked
        - lock_expires_at
        - has_notified_issue
        - has_notified_expiry
        - has_notified_release
        - has_notified_remind
        - has_notified_extend
        - meta
        - is_imported
        - is_system_generated
        - created_at
        - updated_at
      title: Credit
    Benefit:
      type: object
      properties:
        id:
          type: integer
        profile_id:
          type: string
        external_id:
          type:
            - string
            - 'null'
        expires_at:
          type: string
        issued_at:
          type: string
        is_expired:
          type: string
        is_redeemable:
          type: string
        redemptions_remaining:
          type: string
        total_global_redemptions_remaining:
          anyOf:
            - type: 'null'
            - type: object
            - type: integer
        definition:
          $ref: '#/components/schemas/BenefitDefinition'
        timezone:
          type:
            - string
            - 'null'
        claimed_at:
          type: string
        meta:
          type:
            - array
            - 'null'
          items: {}
        redeem_code_pos:
          type:
            - string
            - 'null'
        redeem_code_online:
          type:
            - string
            - 'null'
        created_at:
          type: string
        updated_at:
          type: string
        value:
          type:
            - string
            - 'null'
        combine_meta:
          type:
            - array
            - 'null'
          items: {}
        is_combined:
          type:
            - boolean
            - 'null'
        extended_at:
          type: string
        source_id:
          type:
            - integer
            - 'null'
        source_type:
          type:
            - string
            - 'null'
      required:
        - id
        - profile_id
        - external_id
        - expires_at
        - issued_at
        - is_expired
        - is_redeemable
        - redemptions_remaining
        - total_global_redemptions_remaining
        - definition
        - timezone
        - claimed_at
        - meta
        - redeem_code_pos
        - redeem_code_online
        - created_at
        - updated_at
        - value
        - combine_meta
        - is_combined
        - extended_at
        - source_id
        - source_type
      title: Benefit
    Point:
      type: object
      properties:
        id:
          type: integer
        profile_id:
          type: string
        linked_profile_id:
          type:
            - string
            - 'null'
        value_initial:
          type: string
        value_remaining:
          type: string
        value_initial_currency:
          type: number
        value_remaining_currency:
          type: number
        issued_at:
          type: string
        accrued_at:
          type:
            - string
            - 'null'
        expires_at:
          type:
            - string
            - 'null'
        status:
          type: string
        definition:
          $ref: '#/components/schemas/PointDefinition'
        created_at:
          type: string
        updated_at:
          type: string
        source_type:
          type:
            - string
            - 'null'
        source:
          type: 'null'
        rate:
          anyOf:
            - $ref: '#/components/schemas/Rate'
            - type: 'null'
        description:
          type:
            - string
            - 'null'
        meta:
          type:
            - array
            - 'null'
          items: {}
      required:
        - id
        - profile_id
        - linked_profile_id
        - value_initial
        - value_remaining
        - value_initial_currency
        - value_remaining_currency
        - issued_at
        - accrued_at
        - expires_at
        - status
        - definition
        - created_at
        - updated_at
        - source_type
        - source
        - rate
        - description
        - meta
      title: Point
    Reward:
      type: object
      properties:
        id:
          type: integer
        profile_id:
          type: string
        timezone:
          type:
            - string
            - 'null'
        value_initial:
          type: string
        value_remaining:
          type: string
        has_notified_issue:
          type:
            - boolean
            - 'null'
        has_notified_expiry:
          type:
            - boolean
            - 'null'
        has_notified_extend:
          type:
            - boolean
            - 'null'
        expires_at:
          type: string
        issued_at:
          type: string
        is_expired:
          type: string
        is_active:
          type: string
        issued_local_at:
          type: string
        expires_local_at:
          type: string
        notify_issue_at:
          type: string
        notify_expiry_at:
          type: string
        extended_at:
          type: string
        definition:
          $ref: '#/components/schemas/RewardDefinition'
        meta:
          type:
            - array
            - 'null'
          items: {}
        created_at:
          type: string
        updated_at:
          type: string
        source_id:
          type:
            - integer
            - 'null'
        source_type:
          type:
            - string
            - 'null'
      required:
        - id
        - profile_id
        - timezone
        - value_initial
        - value_remaining
        - has_notified_issue
        - has_notified_expiry
        - has_notified_extend
        - expires_at
        - issued_at
        - is_expired
        - is_active
        - issued_local_at
        - expires_local_at
        - notify_issue_at
        - notify_expiry_at
        - extended_at
        - definition
        - meta
        - created_at
        - updated_at
        - source_id
        - source_type
      title: Reward
    CreditDefinition:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        handle:
          type: string
        region_id:
          type:
            - integer
            - 'null'
        region:
          type:
            - object
            - 'null'
          properties:
            id:
              type: integer
            name:
              type: string
            handle:
              type: string
          required:
            - id
            - name
            - handle
        timezone:
          type:
            - string
            - 'null'
        period:
          type:
            - integer
            - 'null'
        period_type:
          type:
            - string
            - 'null'
        absolute_expiry:
          type:
            - string
            - 'null'
        release_period:
          type:
            - integer
            - 'null'
        release_period_type:
          type:
            - string
            - 'null'
        release_period_absolute_expiry:
          type:
            - string
            - 'null'
        is_published:
          type: boolean
        is_archived:
          type: boolean
        icon:
          type:
            - string
            - 'null'
        image_url:
          type:
            - string
            - 'null'
        primary_colour:
          type:
            - string
            - 'null'
        secondary_colour:
          type:
            - string
            - 'null'
        description:
          type:
            - string
            - 'null'
        internal_notes:
          type:
            - string
            - 'null'
        short_description:
          type:
            - string
            - 'null'
        long_description:
          type:
            - string
            - 'null'
        terms_conditions:
          type:
            - string
            - 'null'
        earn_instructions:
          type:
            - string
            - 'null'
        meta:
          type:
            - array
            - 'null'
          items: {}
        type:
          type: string
        value:
          type:
            - number
            - 'null'
        max_value:
          type:
            - number
            - 'null'
        currency_id:
          type:
            - integer
            - 'null'
        currency:
          type:
            - string
            - 'null'
        require_creator:
          type: boolean
        require_assigned:
          type: boolean
        is_extendable:
          type: boolean
        is_assignable:
          type: boolean
        is_releasable:
          type: boolean
        is_reassignable:
          type: boolean
        require_security_code:
          type: boolean
        extend_days:
          type:
            - integer
            - 'null'
        credit_number_range_type:
          type:
            - string
            - 'null'
        credit_number_range_start:
          type:
            - string
            - 'null'
        credit_number_range_end:
          type:
            - string
            - 'null'
        credit_number_length:
          type:
            - integer
            - 'null'
        security_code_type:
          type:
            - string
            - 'null'
        use_custom_numbers:
          type: boolean
        notify_schedule_offset:
          type:
            - integer
            - 'null'
        issue_target_id:
          type:
            - integer
            - 'null'
        expiry_target_id:
          type:
            - integer
            - 'null'
        release_target_id:
          type:
            - integer
            - 'null'
        remind_target_id:
          type:
            - integer
            - 'null'
        extend_target_id:
          type:
            - integer
            - 'null'
        notify_issue_offset_days:
          type:
            - integer
            - 'null'
        notify_issue_offset_hour:
          type:
            - integer
            - 'null'
        notify_remind_offset_days:
          type:
            - integer
            - 'null'
        notify_remind_offset_hour:
          type:
            - integer
            - 'null'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
        custom_fields:
          type: array
          items:
            $ref: '#/components/schemas/CustomFieldRaw'
        created_at:
          type: string
        updated_at:
          type: string
      required:
        - id
        - name
        - handle
        - region_id
        - region
        - timezone
        - period
        - period_type
        - absolute_expiry
        - release_period
        - release_period_type
        - release_period_absolute_expiry
        - is_published
        - is_archived
        - icon
        - image_url
        - primary_colour
        - secondary_colour
        - description
        - internal_notes
        - short_description
        - long_description
        - terms_conditions
        - earn_instructions
        - meta
        - type
        - value
        - max_value
        - currency_id
        - currency
        - require_creator
        - require_assigned
        - is_extendable
        - is_assignable
        - is_releasable
        - is_reassignable
        - require_security_code
        - extend_days
        - credit_number_range_type
        - credit_number_range_start
        - credit_number_range_end
        - credit_number_length
        - security_code_type
        - use_custom_numbers
        - notify_schedule_offset
        - issue_target_id
        - expiry_target_id
        - release_target_id
        - remind_target_id
        - extend_target_id
        - notify_issue_offset_days
        - notify_issue_offset_hour
        - notify_remind_offset_days
        - notify_remind_offset_hour
        - tags
        - created_at
        - updated_at
      title: CreditDefinition
    BenefitDefinition:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        handle:
          type: string
        type:
          type:
            - string
            - 'null'
        region_id:
          type:
            - integer
            - 'null'
        region:
          type:
            - object
            - 'null'
          properties:
            id:
              type: integer
            name:
              type: string
            handle:
              type: string
          required:
            - id
            - name
            - handle
        currency:
          type:
            - string
            - 'null'
        period:
          type:
            - integer
            - 'null'
        description:
          type:
            - string
            - 'null'
        internal_notes:
          type:
            - string
            - 'null'
        meta:
          type:
            - array
            - 'null'
          items: {}
        short_description:
          type:
            - string
            - 'null'
        long_description:
          type:
            - string
            - 'null'
        terms_conditions:
          type:
            - string
            - 'null'
        earn_instructions:
          type:
            - string
            - 'null'
        redeem_instructions_store:
          type:
            - string
            - 'null'
        redeem_instructions_online:
          type:
            - string
            - 'null'
        redeem_code_pos:
          type:
            - string
            - 'null'
        redeem_code_online:
          type:
            - string
            - 'null'
        icon:
          type:
            - string
            - 'null'
        image_url:
          type:
            - string
            - 'null'
        max_redemptions:
          type:
            - integer
            - 'null'
        is_extendable:
          type: boolean
        is_assignable:
          type: boolean
        is_reassignable:
          type: boolean
        is_published:
          type: boolean
        is_archived:
          type: boolean
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
        is_claimable:
          type: boolean
        max_global_redemptions:
          type:
            - integer
            - 'null'
        claim_period_start_at:
          type: string
        claim_period_end_at:
          type: string
        claim_condition:
          type:
            - array
            - 'null'
          items: {}
        is_reclaimable:
          type:
            - boolean
            - 'null'
        notify_schedule_offset:
          type:
            - integer
            - 'null'
        notify_issue_offset_days:
          type:
            - integer
            - 'null'
        notify_issue_offset_hour:
          type:
            - integer
            - 'null'
        notify_remind_offset_days:
          type:
            - integer
            - 'null'
        notify_remind_offset_hour:
          type:
            - integer
            - 'null'
        notify_extend_offset_days:
          type:
            - integer
            - 'null'
        notify_extend_offset_hour:
          type:
            - integer
            - 'null'
        remind_target_id:
          type:
            - integer
            - 'null'
        extend_target_id:
          type:
            - integer
            - 'null'
        issue_target_id:
          type:
            - integer
            - 'null'
        end_at:
          type: string
        total_allocations:
          type: 'null'
        total_allocations_remaining:
          type: 'null'
        force_allocation:
          type:
            - boolean
            - 'null'
        created_at:
          type: string
        updated_at:
          type: string
        claim_timeframe:
          type:
            - array
            - 'null'
          items: {}
        view_condition:
          type:
            - array
            - 'null'
          items: {}
        allow_user_redeem:
          type:
            - boolean
            - 'null'
        same_campaign_count:
          type: integer
      required:
        - id
        - name
        - handle
        - type
        - region_id
        - region
        - currency
        - period
        - description
        - internal_notes
        - meta
        - short_description
        - long_description
        - terms_conditions
        - earn_instructions
        - redeem_instructions_store
        - redeem_instructions_online
        - redeem_code_pos
        - redeem_code_online
        - icon
        - image_url
        - max_redemptions
        - is_extendable
        - is_assignable
        - is_reassignable
        - is_published
        - is_archived
        - tags
        - is_claimable
        - max_global_redemptions
        - claim_period_start_at
        - claim_period_end_at
        - claim_condition
        - is_reclaimable
        - notify_schedule_offset
        - notify_issue_offset_days
        - notify_issue_offset_hour
        - notify_remind_offset_days
        - notify_remind_offset_hour
        - notify_extend_offset_days
        - notify_extend_offset_hour
        - remind_target_id
        - extend_target_id
        - issue_target_id
        - end_at
        - total_allocations
        - total_allocations_remaining
        - force_allocation
        - created_at
        - updated_at
        - claim_timeframe
        - view_condition
        - allow_user_redeem
        - same_campaign_count
      title: BenefitDefinition
    PointDefinition:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        handle:
          type: string
        region_id:
          type:
            - integer
            - 'null'
        region:
          type:
            - object
            - 'null'
          properties:
            id:
              type: integer
            name:
              type: string
            handle:
              type: string
          required:
            - id
            - name
            - handle
        currency:
          type:
            - string
            - 'null'
        description:
          type:
            - string
            - 'null'
        notes:
          type:
            - string
            - 'null'
        is_reassignable:
          type: boolean
        issue_period:
          type:
            - integer
            - 'null'
        issue_period_type:
          type:
            - string
            - 'null'
        issue_absolute_expiry:
          type:
            - string
            - 'null'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
        created_at:
          type: string
        updated_at:
          type: string
      required:
        - id
        - name
        - handle
        - region_id
        - region
        - currency
        - description
        - notes
        - is_reassignable
        - issue_period
        - issue_period_type
        - issue_absolute_expiry
        - tags
        - created_at
        - updated_at
      title: PointDefinition
    Rate:
      type: object
      properties:
        id:
          type: integer
        handle:
          type: string
        type:
          type: string
        location:
          type:
            - string
            - 'null'
        code:
          type:
            - string
            - 'null'
        name:
          type:
            - string
            - 'null'
        rate:
          type: string
        is_default:
          type: boolean
        is_archived:
          type:
            - boolean
            - 'null'
        region_id:
          type:
            - integer
            - 'null'
        region:
          type:
            - object
            - 'null'
          properties:
            id:
              type: integer
            name:
              type: string
            handle:
              type: string
          required:
            - id
            - name
            - handle
        location_id:
          type:
            - integer
            - 'null'
        location_object:
          type:
            - object
            - 'null'
          properties:
            id:
              type: string
            name:
              type: string
            handle:
              type: string
          required:
            - id
            - name
            - handle
        country_iso_2:
          type:
            - string
            - 'null'
        profile_conditions:
          type:
            - array
            - 'null'
          items: {}
        product_conditions:
          type:
            - array
            - 'null'
          items: {}
        start_time:
          type:
            - string
            - 'null'
        end_time:
          type:
            - string
            - 'null'
        issue_period:
          type:
            - integer
            - 'null'
        issue_period_type:
          type:
            - string
            - 'null'
        issue_absolute_expiry:
          type:
            - string
            - 'null'
        earn_instructions:
          type:
            - string
            - 'null'
        internal_notes:
          type:
            - string
            - 'null'
        is_published:
          type: boolean
        priority:
          type:
            - integer
            - 'null'
        created_at:
          type: string
        updated_at:
          type: string
      required:
        - id
        - handle
        - type
        - location
        - code
        - name
        - rate
        - is_default
        - is_archived
        - region_id
        - region
        - location_id
        - location_object
        - country_iso_2
        - profile_conditions
        - product_conditions
        - start_time
        - end_time
        - issue_period
        - issue_period_type
        - issue_absolute_expiry
        - earn_instructions
        - internal_notes
        - is_published
        - priority
        - created_at
        - updated_at
      title: Rate
    RewardDefinition:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        handle:
          type: string
        region_id:
          type:
            - integer
            - 'null'
        region:
          type:
            - object
            - 'null'
          properties:
            id:
              type: integer
            name:
              type: string
            handle:
              type: string
          required:
            - id
            - name
            - handle
        currency:
          type:
            - string
            - 'null'
        period:
          type:
            - integer
            - 'null'
        period_type:
          type:
            - string
            - 'null'
        absolute_expiry:
          type:
            - string
            - 'null'
        description:
          type:
            - string
            - 'null'
        short_description:
          type:
            - string
            - 'null'
        long_description:
          type:
            - string
            - 'null'
        terms_conditions:
          type:
            - string
            - 'null'
        earn_instructions:
          type:
            - string
            - 'null'
        icon:
          type:
            - string
            - 'null'
        image_url:
          type:
            - string
            - 'null'
        issue_target_id:
          type:
            - integer
            - 'null'
        expiry_target_id:
          type:
            - integer
            - 'null'
        extend_target_id:
          type:
            - integer
            - 'null'
        notify_issue_offset:
          type:
            - integer
            - 'null'
        notify_expiry_offset:
          type:
            - integer
            - 'null'
        notify_schedule_offset:
          type:
            - integer
            - 'null'
        notify_issue_offset_days:
          type:
            - integer
            - 'null'
        notify_issue_offset_hour:
          type:
            - integer
            - 'null'
        notify_remind_offset_days:
          type:
            - integer
            - 'null'
        notify_remind_offset_hour:
          type:
            - integer
            - 'null'
        notify_extend_offset_days:
          type:
            - integer
            - 'null'
        notify_extend_offset_hour:
          type:
            - integer
            - 'null'
        internal_notes:
          type:
            - string
            - 'null'
        type:
          type:
            - string
            - 'null'
        value:
          type: number
        max_value:
          type:
            - number
            - 'null'
        is_extendable:
          type: boolean
        is_assignable:
          type: boolean
        is_reassignable:
          type: boolean
        is_published:
          type: boolean
        extend_days:
          type:
            - integer
            - 'null'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
        created_at:
          type: string
        updated_at:
          type: string
      required:
        - id
        - name
        - handle
        - region_id
        - region
        - currency
        - period
        - period_type
        - absolute_expiry
        - description
        - short_description
        - long_description
        - terms_conditions
        - earn_instructions
        - icon
        - image_url
        - issue_target_id
        - expiry_target_id
        - extend_target_id
        - notify_issue_offset
        - notify_expiry_offset
        - notify_schedule_offset
        - notify_issue_offset_days
        - notify_issue_offset_hour
        - notify_remind_offset_days
        - notify_remind_offset_hour
        - notify_extend_offset_days
        - notify_extend_offset_hour
        - internal_notes
        - type
        - value
        - max_value
        - is_extendable
        - is_assignable
        - is_reassignable
        - is_published
        - extend_days
        - tags
        - created_at
        - updated_at
      title: RewardDefinition
    Tag:
      type: string
      title: Tag
    CustomFieldRaw:
      type: object
      properties:
        name:
          type: string
        handle:
          type: string
        namespace:
          type: string
        value:
          type: string
        type:
          type: string
        custom_fieldable_type:
          type: string
        custom_fieldable_id:
          type: string
        created_at:
          type: string
        updated_at:
          type: string
        is_index:
          type: string
      required:
        - name
        - handle
        - namespace
        - value
        - type
        - custom_fieldable_type
        - custom_fieldable_id
        - created_at
        - updated_at
        - is_index
      title: CustomFieldRaw
  responses:
    AuthenticationException:
      description: Unauthenticated
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                description: Error overview.
            required:
              - message
    ModelNotFoundException:
      description: Not found
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                description: Error overview.
            required:
              - message
    ValidationException:
      description: Validation error
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                description: Errors overview.
              errors:
                type: object
                description: A detailed description of each field that failed validation.
                additionalProperties:
                  type: array
                  items:
                    type: string
            required:
              - message
              - errors

````