# Register Member App Token

## OpenAPI Specification

```yaml
openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /v3/{loyalty_club_slug}/members/me/app_tokens:
    post:
      summary: Register Member App Token
      deprecated: false
      description: >-

        ## URL Parameters


        Parameter | Description | Type

        -----------|-------------|---------

        member_id | Member's ID | integer


        ## Body Parameters


        Parameter             |
        Description                                                    | Type

        -----------------------|----------------------------------------------------------------|---------------------------

        token                 | Push app
        token                                                 | string

        platform              | App
        platform                                                   | string
        (`ios`, `android`)

        app_installation_id   | Member unique app installation id (see more
        explanation below) | string

        firebase_project_slug | Firebase project slug for which push token was
        created         | string


        ### app_installation_id


        To identify whether push token should be replaced or just added to a
        member we need to have some kind of unique id of app installation.

        It's on client side to generate and store it.


        For example, it may be `uuid` generated and saved when application is
        started for the first time.


        Please make sure not to put here values that are sensitive like unique
        device id or other unique device identifiers.


        ## Response Body


        Empty object {}


        ## Error Responses


        Status | Reason

        --------|---------------------------------------------- 
         `404`  | Member with given identifier could not found 
         `422`  | Invalid parameters

        ## Example


        ```shell


        curl -X POST \
          https://api.mpc.placewise.com/v3/infinity-mall/members/me/app_tokens \
          -H 'content-type: application/json' \
          -H 'x-client-authorization: B7t9U9tsoWsGhrv2ouUoSqpM' \
          -H 'x-product-name: facebook' \
          -H 'X-Subproduct-Name: campaign-10-2017' \
          -H 'x-user-agent: CURL manual test' \
          -H 'authorization: Bearer 8433d608645345a45ce5a0f5ba1225e57546e86ac49e5fec842159dc82218522' \
          -d '{
              "token": "token",
              "platform": "ios",
              "app_installation_id": "app id",
              "firebase_project_slug": "project slug"
            }'

        ```


        When successful, returns an empty object:


        ```json

        {}

        ```
      tags:
        - API Reference/Public API/Member/Profile
      parameters:
        - name: loyalty_club_slug
          in: path
          description: ''
          required: true
          example: infinity-mall
          schema:
            type: string
        - name: Content-Type
          in: header
          description: '[Details](doc-341635)'
          required: true
          example: application/json
          schema:
            type: string
            default: application/json
            const: application/json
        - name: X-User-Agent
          in: header
          description: Arbitrary identifier of your client. [Details](doc-341635)
          required: true
          example: '{{X_USER_AGENT}}'
          schema:
            type: string
            default: '{{X_USER_AGENT}}'
        - name: X-Product-Name
          in: header
          description: API Product for API context. [Details](doc-341635)
          required: true
          example: '{{PRODUCT_NAME}}'
          schema:
            type: string
            default: '{{PRODUCT_NAME}}'
        - name: X-Loyalty-Club-Slug
          in: header
          description: LoyaltyClub for API context. [Details](doc-342138)
          required: false
          example: '{{LOYALTY_CLUB_SLUG}}'
          schema:
            type: string
            default: '{{LOYALTY_CLUB_SLUG}}'
        - name: X-Customer
          in: header
          description: Customer for API context.  [Details](doc-342139)
          required: false
          example: '{{CUSTOMER_ID}}'
          schema:
            type: string
            default: '{{CUSTOMER_ID}}'
        - name: Authorization
          in: header
          description: '[Member](doc-342129) or [User](doc-342130) Authorization.'
          required: false
          example: Bearer {{_OAUTH_TOKEN}}
          schema:
            type: string
            default: Bearer {{_OAUTH_TOKEN}}
        - name: X-Client-Authorization
          in: header
          description: '[Token](doc-342128) Authorization.'
          example: '{{API_TOKEN}}'
          schema:
            type: string
            default: '{{API_TOKEN}}'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
          headers: {}
          x-apidog-name: Success
      security: []
      x-apidog-folder: API Reference/Public API/Member/Profile
      x-apidog-status: pending
      x-run-in-apidog: https://app.eu.apidog.com/web/project/346351/apis/api-3510822-run
components:
  schemas: {}
  securitySchemes: {}
servers:
  - url: https://api.mpc.dev.placewise.com
    description: Staging
security: []

```