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

# Register referee

> After a successful response from the "Find friend" API, this endpoint allows you to register a new customer to confirm the relationship between the Referee (the friend) and the Referrer (the person who referred them).

Confirming the registration requires the `referrerMentionMeIdentifier` and `referrerToken` from the search API response.

To complete the registration, you will need to confirm the registration details of the referee via this API. This will grant the referee their reward, or will inform them on how to obtain one if further action is required
(e.g. making a purchase).



## OpenAPI

````yaml /openapi/consumer_api.oas.json post /api/consumer/{version}/referee/register
openapi: 3.0.0
info:
  title: Consumer API
  description: Create your own front end for the referral journey using our Consumer API.
  termsOfService: https://mention-me.com/help/tnc_f/site
  version: v2
servers:
  - url: https://mention-me.com
    description: Production
  - url: https://demo.mention-me.com
    description: Demo
security: []
tags:
  - name: Record Order
  - name: Enrol Referrer
  - name: Get referrer dashboard
  - name: Find referrer by name
  - name: Link new customer to referrer
paths:
  /api/consumer/{version}/referee/register:
    post:
      tags:
        - Link new customer to referrer
      summary: Register referee
      description: >-
        After a successful response from the "Find friend" API, this endpoint
        allows you to register a new customer to confirm the relationship
        between the Referee (the friend) and the Referrer (the person who
        referred them).


        Confirming the registration requires the `referrerMentionMeIdentifier`
        and `referrerToken` from the search API response.


        To complete the registration, you will need to confirm the registration
        details of the referee via this API. This will grant the referee their
        reward, or will inform them on how to obtain one if further action is
        required

        (e.g. making a purchase).
      operationId: post_api_register_referee
      parameters:
        - name: version
          in: path
          description: Version
          required: true
          schema:
            type: string
            pattern: v2|v1
            enum:
              - v2
              - v1
          example: v2
      requestBody:
        description: Details of the new customer who has been referred
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnrolRefereeType'
      responses:
        '200':
          description: Returned when successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RefereeRegister'
        '400':
          description: The request contains errors
        '403':
          description: Returned when the integration for this merchant is not enabled
        '404':
          description: Returned when the referrer is not found
        '500':
          description: Internal server error, unable to complete the request
components:
  schemas:
    EnrolRefereeType:
      required:
        - referrerMentionMeIdentifier
        - referrerToken
        - customer
        - request
      properties:
        referrerMentionMeIdentifier:
          description: Id representing the referrer returned by a successful name search
          type: integer
          example: ''
        referrerToken:
          description: Token representing the referrer returned by a successful name search
          type: string
          example: ''
        customer:
          title: Customer
          description: Information about the referee to register and give a reward
          oneOf:
            - $ref: '#/components/schemas/CustomerDetails'
        request:
          title: Request
          description: Information about the request
          oneOf:
            - $ref: '#/components/schemas/Request'
      type: object
    RefereeRegister:
      properties:
        offer:
          $ref: '#/components/schemas/Offer'
        refereeReward:
          title: A description of the referee reward for the Referee
          default: null
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/RefereeReward'
        content:
          $ref: '#/components/schemas/ContentCollectionLink'
        termsLinks:
          title: Links to the terms and conditions for this offer.
          oneOf:
            - $ref: '#/components/schemas/TermsLinks'
        status:
          type: string
      type: object
    CustomerDetails:
      required:
        - emailAddress
        - firstname
        - surname
      properties:
        emailAddress:
          description: Customer email address
          type: string
          example: jane.doe@example.com
        title:
          description: Customer title such as Mr, Miss, Dr or Sir
          type: string
          example: ''
        firstname:
          description: Customer firstname
          type: string
          example: ''
        surname:
          description: Customer surname
          type: string
          example: ''
        uniqueIdentifier:
          description: Your unique identifier for this customer e.g. CustomerId
          type: string
          example: ''
        segment:
          description: >-
            Customer segment - a string containing segment data about this
            customer, e.g. vip or employee. You can concatenate multiple
            segments together if you wish using hyphens.
          type: string
          example: ''
        customField:
          description: >-
            Custom field - a string containing custom data about this customer,
            e.g. SEGMENT001 or Package B
          type: string
          example: ''
        visitorId:
          description: >-
            The visitor ID from the MentionMe Browser Fingerprint, used to link
            customer journeys. This should be a SHA256 hash (browserId +
            clientIP).
          type: string
          example: ''
      type: object
    Request:
      required:
        - partnerCode
        - situation
        - localeCode
      properties:
        partnerCode:
          description: Your partner code, used to link to your users and offers
          type: string
          example: '[YOUR-PARTNER-CODE]'
        situation:
          description: >-
            Situation - a string representing where in the application you are
            making this request
          type: string
          example: mobile-app
        segment:
          description: Segment - the segment the customer belongs to
          type: string
          example: vip
        localeCode:
          description: >-
            Locale code - ISO standard locale code (e.g. en_GB) for the locale
            you expect the content to be in
          type: string
          example: en_GB
        ipAddress:
          description: >-
            IP address of the customer connection. If you're making a request on
            behalf of a customer, pass their IP address here. If the customer
            will connect directly, leave this empty and we will retrieve this
            from their request.
          type: string
          example: 127.0.0.1
        userDeviceIdentifier:
          description: >-
            User Device Identifier should be a unique reference to this device.
            We use this for preventing gaming. Multiple users with the same
            Device Identifier will be treated as the same individual and may be
            flagged for gaming. On Android the UniqueID could be an InstanceID
            or GUID. On iPhone the UniqueID should be generated by
            identifierForVendor.
          type: string
          example: ''
        deviceType:
          description: >-
            Device type - your description of the device the user is using. We
            use this for performance and conversion optimisation.
          type: string
          example: ''
        appName:
          description: Your application name. Used for reporting.
          type: string
          example: ''
        appVersion:
          description: >-
            Your application version reference. Used for reporting and
            troubleshooting.
          type: string
          example: e.g. MyApp/v1.73
      type: object
    Offer:
      properties:
        id:
          title: The identifier of the offer.
          type: integer
        localeCode:
          title: The locale code of the Offer.
          type: string
        headline:
          title: The headline description for the Offer.
          description: e.g. "You can get a £20 gift card if you refer a friend to ..."
          type: string
        description:
          title: The details of the Offer.
          description: e.g. "Give your friends a 20% off introductory offer"
          type: string
        callToAction:
          title: >-
            The callToAction text of the Offer - typically goes on the button of
            the offer
          description: e.g. "Get a £20 gift card"
          type: string
        privacyNotice:
          title: >-
            The privacyNotice text of the Offer - typically shown near the CTA
            if required by privacy regulation
          description: e.g. "Get a £20 gift card"
          type: string
        privacyLink:
          title: >-
            The URL to the Mention Me privacy policy - typically shown near the
            Privacy Notice.
          description: e.g. "https://mention-me.com/help/privacy_policy"
          type: string
        referrerReward:
          title: The explicit description of the Referrer Reward for the Referrer.
          oneOf:
            - $ref: '#/components/schemas/Reward'
        refereeReward:
          title: The explicit description of the Referee reward for the Referrer.
          oneOf:
            - $ref: '#/components/schemas/Reward'
      type: object
    RefereeReward:
      properties:
        description:
          title: Description of the reward
          type: string
        couponCode:
          title: Reward coupon code (if appropriate)
          type: string
        securityCode:
          title: Reward security code (if appropriate)
          type: string
        url:
          title: Reward link (if appropriate)
          type: string
        amount:
          title: >-
            The reward amount - note this is not always a number. It can be a
            currency amount, a percentage, a number (of items) or a text
            description depending on the reward type.
          type: string
      type: object
    ContentCollectionLink:
      properties:
        relationship:
          title: Relationship of the link between the two resources
          type: string
          default: content-collection
        resource:
          title: The target resource being linked
          type: array
          items:
            $ref: '#/components/schemas/Content'
      type: object
    TermsLinks:
      properties:
        localeCode:
          title: The locale code of the terms link
          type: string
        linkToTermsInLocale:
          title: Link to the terms and conditions in the locale stated
          type: string
      type: object
    Reward:
      properties:
        description:
          title: Friendly description of a reward for the intended recipient.
          description: >-
            The description we give may vary depending on the point in the flow
            that we choose to give it. Note that in some cases this might be
            "promising the reward" and in other cases "giving it".


            e.g. "You'll get £20 for each friend you refer" e.g. "Your friends
            get a free camera when they order for the first time" e.g. "A 20%
            discount code"
          type: string
        summary:
          title: >-
            Summary - now deprecated - it serves no purpose over and above the
            description.
          type: string
        amount:
          title: >-
            The reward amount - now deprecated (because rewards don't have a
            consistent amount - some have text, percentage, number. Use the
            description to describe the reward.
          type: string
      type: object
    Content:
      properties:
        key:
          title: The content key
          type: string
        content:
          title: The content string
          type: string
      type: object

````