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

# Update Member

> Updates details of an existing member. <br /> **Note**: Only a single member can be updated at a time.



## OpenAPI

````yaml member put /v1/members
openapi: 3.0.1
info:
  title: Loyalty (Member)
  description: >-
    fabric **Loyalty** formerly **Member** is a Loyalty Management System (LMS)
    that enables marketers to create multiple loyalty strategies under a loyalty
    program to cater to various businesses and customer segments. <br />
    **Member overview**: <br /> During onboarding, you are given the necessary
    **credentials** (client_id and client_secret) to obtain an access token,
    which is required to run every call. Membership hierarchy is organized into
    Programs, Clubs, and Tiers. <br /> **Program** is the first hierarchy level
    and is where rewards and benefits are configured for the organization. <br
    /> **Club** is the second hierarchy level and is where Rules for the program
    are configured. <br />Each Club must have at least one **Tier**, which is
    used to define membership and to configure criteria and thresholds
    (including free vs paid). Additional hierarchy levels can be added to
    support the needs of your business.  <br /> Members are always enrolled into
    a **Default Tier** within a club. When members make purchases, they earn
    Points based on the rules set at the club level and/or based on promotions.
    When points in a member account reach a predefined **Threshold Value**,
    points are converted to **Rewards**. This conversion may be manual or
    automatic depending on the program configuration. Members can **Redeem**
    their rewards within the reward **Expiry Period**. Account point balances
    are updated after each point-impacting activity.
  version: 1.0.0
  contact:
    email: support@fabric.inc
  license:
    name: fabric Inc
    url: https://fabric.inc
servers:
  - url: https://vanilla-dev02-loyalty.fabric.zone/api
    description: For developers to work outside of the production environment.
  - url: https://vanilla-stg-loyalty.fabric.zone/api
    description: Replica of the production environment for testing.
  - url: https://loyalty-sbx.fabric.zone/api
    description: >-
      An isolated testing environment (UAT) to run programs without affecting
      the application, system or platform on which they run.
  - url: https://loyalty.fabric.zone/api
    description: Production environment.
security:
  - bearerAuth: []
paths:
  /v1/members:
    put:
      tags:
        - Members
      summary: Update Member
      description: >-
        Updates details of an existing member. <br /> **Note**: Only a single
        member can be updated at a time.
      operationId: members_update
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateMember'
        required: true
      responses:
        '200':
          description: Member updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnrollMemberUpdateResponse'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponseClass1'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponseClass2'
components:
  schemas:
    UpdateMember:
      required:
        - profileId
      type: object
      description: >-
        Details to update in the member information. Fields that are allowed to
        update are governed by company configuration.
      properties:
        profileId:
          title: Profileid
          type: string
          description: Profile ID of the member to update
          example: f90a1da5-c072-48b7-a9ea-eb35c5dd506b
          format: uuid
        firstName:
          title: Firstname
          maxLength: 100
          minLength: 1
          type: string
          description: First name of member
          example: John
        middleName:
          title: Middlename
          type: string
          description: Middle name of member
          example: M
        lastName:
          title: Lastname
          maxLength: 100
          minLength: 1
          type: string
          description: Last name of member
          example: Williams
        suffix:
          title: Suffix
          type: string
          description: Suffix member
        gender:
          title: Gender
          type: string
          description: Gender of member
          enum:
            - None
            - Male
            - Female
            - Other
          example: Male
        birthDate:
          title: Birthdate
          type: string
          description: Date of birth of member
          example: '1980-11-30'
          format: date
        emailAddress:
          title: Emailaddress
          maxLength: 254
          minLength: 1
          type: string
          description: Email address given during enrollment
          example: user@abc.com
          format: email
        phoneNumber:
          title: Phonenumber
          minLength: 1
          type: string
          description: Phone number given for enrollment (without space or dash)
          example: '923331234567'
        addressLine1:
          title: Addressline1
          maxLength: 500
          type: string
          description: Line 1 of address
          example: 10400 NE 4th St
          nullable: true
        addressLine2:
          title: Addressline2
          maxLength: 500
          type: string
          description: Line 2 of address
          example: Suite 505
          nullable: true
        addressLine3:
          title: Addressline3
          maxLength: 500
          type: string
          description: An additional line for directional information
          example: 'null'
          nullable: true
        city:
          title: City
          maxLength: 50
          type: string
          description: City name of address
          example: Bellevue
        region:
          title: Region
          maxLength: 150
          type: string
          description: State name of address
          example: Wisconsin
        postalCode:
          title: Postalcode
          type: string
          description: Zip code of address
          example: '98004'
        country:
          title: Country
          minLength: 1
          type: string
          description: Country name of address
          example: United States
        maritalStatus:
          title: Maritalstatus
          type: string
          description: Marital status of the member
          example: Single
          enum:
            - None
            - Single
            - Married
            - Divorced
            - Widowed
            - Separated
        prefix:
          title: Prefix
          type: string
          description: Prefix (if appliable) of the member name
          example: Mr
          enum:
            - None
            - Mr
            - Mrs
            - Ms
        redemptionChoice:
          title: Redemptionchoice
          minLength: 1
          type: string
          description: >-
            Redemption options are `Bank` and `Auto`. If the redemptionChoice is
            `Auto` the points are automatically converted to rewards. When the
            redemptionChoice is `Bank` the points are converted to rewards at
            the member’s request.
          example: Auto
          enum:
            - Bank
            - Auto
        redemptionThreshold:
          title: Redemptionthreshold
          type: string
          description: >-
            Points can be redeemed only when they reach a defined threshold
            value
          example: 10
          default: '0.00'
        enrollmentStore:
          title: enrollmentstore
          minLength: 1
          type: string
          description: >-
            Store name (physical entire/store or a website) where member was
            enrolled.
          example: www.demostore.come
        enrollmentDate:
          title: enrollmentdate
          type: string
          description: Date of member enrollment
          example: '2021-01-15'
          format: date
        lastPaidStatusCenter:
          title: Lastpaidstatuscenter
          minLength: 1
          type: string
          description: >-
            Entity or store where the pro membership was purchased (for the paid
            tier).
          example: '1201'
        lastPaidStatusDate:
          title: Lastpaidstatusdate
          type: string
          description: Date to update the paid status
          example: '2021-01-15'
          format: date
        tierReference:
          title: Tierreference
          type: string
          description: Reference-name of the tier to assign member to
          example: GOLD
        tierExpirationDatetime:
          title: Tierexpirationdatetime
          type: string
          description: >-
            Tier expiration date-time. Only utilized if tierReference is
            specified
          example: '2026-01-15T23:59:59.000Z'
          format: date-time
        customAttributes:
          title: customAttributes
          type: object
          properties: {}
          description: A dictionary representing the custom fields.
          example:
            joiningDate: '2021-07-26'
            confirmationDate: '2021-07-26'
    EnrollMemberUpdateResponse:
      type: object
      description: Response for the member update request
      properties:
        message:
          title: Message
          minLength: 1
          type: string
          description: Message corresponding to the call
          example: Member updated
          default: Exception message
        errors:
          title: Errors
          type: object
          properties: {}
          description: A dictionary of lists with different number of errors or exceptions
          example:
            ExceptionString: []
        data:
          $ref: '#/components/schemas/Member'
        status:
          title: Status
          type: integer
          description: Status code of call
          example: 200
          format: int32
    GenericResponseClass1:
      type: object
      description: Bad request
      properties:
        message:
          title: Message
          minLength: 1
          type: string
          description: Message corresponding to the call.
          example: Error message string
        errors:
          title: Errors
          type: object
          properties: {}
          description: A dictionary of lists with different number of errors or exceptions.
          example:
            ExceptionString:
              - Invalid Field
        data:
          title: Data
          type: object
          properties: {}
          description: Returns data in the form of a list of dictionaries or null
          example: null
        status:
          title: Status
          type: integer
          description: Status code of the call
          example: 400
          format: int32
    GenericResponseClass2:
      type: object
      description: Unauthorized
      properties:
        detail:
          title: Detail
          type: string
          description: Message corresponding to the response
          example: Authentication Failed
    Member:
      type: object
      description: Member details
      properties:
        accounts:
          type: array
          description: Member account details
          items:
            $ref: '#/components/schemas/MemberAccount'
        addressLine1:
          title: Addressline1
          maxLength: 500
          type: string
          description: Line 1 of address
          example: 10400 NE 4th St
          nullable: true
        addressLine2:
          title: Addressline2
          maxLength: 500
          type: string
          description: Line 2 of the address
          example: Suite 505
          nullable: true
        addressLine3:
          title: Addressline3
          maxLength: 500
          type: string
          description: For additional directional information.
          example: ''
          nullable: true
        birthdate:
          title: Birthdate
          type: string
          description: Date of birth of member
          example: '1990-11-16'
        channelExternalReference:
          title: Channelexternalreference
          type: string
          description: Sales channel
          example: Web
        city:
          title: City
          maxLength: 50
          type: string
          description: City name
          example: Austin
        country:
          title: Country
          minLength: 1
          type: string
          description: Country abbreviation of the member
          example: US
        emailAddress:
          title: Emailaddress
          type: string
          description: Email address of member
          example: user@abc.com
        enrollReasonCode:
          title: Enrollreasoncode
          type: string
          maxLength: 30
          description: Reason code for member enrollment
          example: '1234'
        enrollReasonNote:
          title: Enrollreasonnote
          type: string
          maxLength: 300
          description: Reason for member enrollment
          example: Guest
        enrollmentTimestamp:
          title: Enrollmenttimestamp
          type: string
          description: Date of member enrollment, in UTC format
          example: '2021-09-14T11:32:55.508949Z'
          format: date-time
        firstName:
          title: Firstname
          type: string
          description: First name of member
          example: John
        fullCountry:
          title: Fullcountry
          type: string
          description: Country name of member
          example: United States
        fullRegion:
          title: Fullregion
          type: string
          description: Region name of member
          example: Texas
        gender:
          title: Gender
          type: string
          description: Gender of member
          enum:
            - None
            - Male
            - Female
            - Other
          example: Male
        lastName:
          title: Lastname
          type: string
          description: Last name of member
          example: Wayne
        maritalStatus:
          title: Maritalstatus
          type: string
          enum:
            - None
            - Single
            - Married
            - Divorced
            - Widowed
            - Separated
        middleName:
          title: Middlename
          type: string
          description: Middle name of member
          example: Duke
        nationality:
          title: Nationality
          type: string
          description: Nationality of member
          example: ''
        phoneNumber:
          title: Phonenumber
          minLength: 1
          type: string
          description: Phone number used for enrollment (without space or dash)
          example: '923331234567'
        postalCode:
          title: Postalcode
          type: string
          description: Zip code of address
          example: '98004'
        prefix:
          title: Prefix
          type: string
          description: Prefix associated with member name
          example: Mr
          enum:
            - None
            - Mr
            - Mrs
            - Ms
        region:
          title: Region
          maxLength: 150
          type: string
          description: Region abbreviation of member
          example: TX
        sourceExternalReference:
          title: Sourceexternalreference
          type: string
          description: Website of parent company
          example: www.abcdemo.com
        suffix:
          title: Suffix
          type: string
          description: Suffix of member name (if any)
    MemberAccount:
      type: object
      properties:
        accountStatus:
          title: Accountstatus
          minLength: 1
          type: string
          description: Account status such as enabled, disabled, etc.
          example: Enabled
        clubReference:
          title: Clubreference
          minLength: 1
          type: string
          description: Club name or ID where the member is enrolled.
          example: abc_club
        clubTitle:
          title: Clubtitle
          minLength: 1
          type: string
          description: Club name
          example: ABC Club
        customAttributes:
          title: Customattributes
          type: object
          properties: {}
          description: >-
            Account details as shared by the business. The details are stored in
            the LMS as provided, and without validation.
          example:
            memberSinceDate: '2021-07-26'
            enrolledAtCenter: Liberty Store
            profileCompleted: false
        enrollmentEntity:
          title: enrollmententity
          minLength: 1
          type: string
          description: Store where the member is enrollment.
          example: demo
        enrollmentStatus:
          title: Enrollmentstatus
          type: boolean
          description: Status of the member's enrollment.
          example: true
        entityReference:
          title: Entityreference
          minLength: 1
          type: string
          description: Name or ID for the store (or entity) where the member is enrolled.
          example: entity_level_1
        loyaltyNumber:
          title: Loyaltynumber
          type: string
          description: Loyalty-number for this member account
          example: '10000147371'
        paidStatus:
          title: Paidstatus
          type: boolean
          description: 'true: Paid membership <br /> false: Free membership.'
          example: false
          default: false
        profileId:
          title: Profileid
          type: string
          description: >-
            Profile ID of the member. In an ecosystem, it acts as a primary ID
            to keep the various systems (apps, websites, etc.) in sync.
          example: f90a1da5-c072-48b7-a9ea-eb35c5dd506b
          format: uuid
        redemptionChoice:
          title: Redemptionchoice
          minLength: 1
          type: string
          description: >-
            Redemption choices are Bank and Auto. When the redemptionChoice is
            `auto` the points are automatically converted to rewards. When the
            redemptionChoice is `bank` the points are converted to rewards only
            on member’s request.
          example: Auto
          enum:
            - Bank
            - Auto
          nullable: true
        redemptionThreshold:
          title: Redemptionthreshold
          type: string
          description: Threshold value for redemption (configurable)
          example: 10
        tierExpiryDate:
          title: Tierexpirydate
          type: string
          description: Tier expiry time, in UTC format
          example: '2022-09-17T14:26:32.192148+00:00'
          format: date-time
        tierExternalReference:
          title: Tierexternalreference
          minLength: 1
          type: string
          description: External reference of tier
          example: GLD
        tierId:
          title: Tierid
          type: integer
          description: Tier ID
          example: 4185
          format: int32
        tierTitle:
          title: Tiertitle
          minLength: 1
          type: string
          description: Tier name (configurable)
          example: ClubTier
        updatedAt:
          title: Updatedat
          type: string
          description: Timestamp of when the member account was last updated (UTC format)
          example: '2021-11-01 12:15:53.831401+00:00'
          format: date-time
      description: Member account details as shared by the business.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````