aboutsummaryrefslogblamecommitdiffstats
path: root/routes/nostr.ts
blob: 5000ccc7602e4307ee1c6d82c4e40cecc60bb5c2 (plain) (tree)
1
2
3
4
5
6
7
8
9
                             
                                   
                         
        
     
      
           
               
             
       
    
               
                    
                                          
                                   
                                                         
                      
                                         
                                          

                                                        
                                                                   
 
                
                         














                                                           
 




                                                                           
 











                                                                          
                                      

       










































                                                                     






                                                     







                                          
                                                               





                                                        
    
 


                                
 




                                                     
 







                                                                           
                                              
















                                                                   










                                                           
                                              
 









                                                                          
 


                     

                                              

                        






                                                 

    

                           

                                  



                                                                       
 


                                      
       
 
                   
                 
                           
     

    








                                                                           
                                              
















                                                                   
                           
           
                         
                                                     
            
         

                                                                    
                                                    
 

                                                                 
 

















                                                        
       
 
                                                       


















                                                                    
 











                                                                                
                                                                             
 


                          





                           
                                    
                                                
                                       
                 
                     
                           


     
                              
           

                      
                   
               
                                                               
            


                                                

                             


                        
    
 
                      
                                       
    




                                                      


                                                       
    


                              

                                                  


                                          
                              
                                                                    









                       
         




                                                                  
                                                                                

                                                            
                                                                       
                                         
 

                     


                           
    
  
an class="w">      }
    },
    "success": {
      "fields": {
        "Success 200": [
          {
            "group": "Success 200",
            "type": "String",
            "optional": false,
            "field": "token",
            "description": "<p>referral token</p>"
          },
          {
            "group": "Success 200",
            "type": "Date",
            "optional": false,
            "field": "expiry",
            "description": "<p>optional expiry</p>"
          }
        ]
      },
      "examples": [
        {
          "title": "Success-Response:",
          "content": "HTTP/1.1 200 OK\n{\n   \"token\": \"*********\", \n   \"status\": \"available\", \n   \"expiry\": null\n}",
          "type": "json"
        }
      ]
    },
    "version": "0.0.0",
    "filename": "routes/referrals.js",
    "groupTitle": "Referrals"
  },
  {
    "type": "get",
    "url": "/grant",
    "title": "Grant Referral code (variation using get)",
    "name": "Grant",
    "group": "Referrals",
    "permission": [
      {
        "name": "member"
      },
      {
        "name": "member"
      }
    ],
    "parameter": {
      "fields": {
        "Parameter": [
          {
            "group": "Parameter",
            "type": "sponsor_id",
            "optional": false,
            "field": "user_id",
            "description": "<p>of member generating referral code.</p>"
          },
          {
            "group": "Parameter",
            "type": "expiry",
            "optional": false,
            "field": "optional",
            "description": "<p>expiry date for token.</p>"
          }
        ]
      }
    },
    "success": {
      "fields": {
        "Success 200": [
          {
            "group": "Success 200",
            "type": "String",
            "optional": false,
            "field": "token",
            "description": "<p>referral token</p>"
          },
          {
            "group": "Success 200",
            "type": "Status",
            "optional": false,
            "field": "status",
            "description": "<p>referral status</p>"
          },
          {
            "group": "Success 200",
            "type": "Date",
            "optional": false,
            "field": "expiry",
            "description": "<p>optional expiry</p>"
          }
        ]
      },
      "examples": [
        {
          "title": "Success-Response:",
          "content": "HTTP/1.1 200 OK\n{\n   \"token\": \"*********\", \n   \"status\": \"available\", \n   \"expiry\": null\n}",
          "type": "json"
        }
      ]
    },
    "version": "0.0.0",
    "filename": "routes/referrals.js",
    "groupTitle": "Referrals"
  },
  {
    "type": "get",
    "url": "/checkTokens/:sponsor_id",
    "title": "Retrieve list of referral tokens generated by this user",
    "name": "checkTokens",
    "group": "Referrals",
    "permission": [
      {
        "name": "member"
      }
    ],
    "parameter": {
      "fields": {
        "Parameter": [
          {
            "group": "Parameter",
            "type": "sponsor_id",
            "optional": false,
            "field": "user_id",
            "description": "<p>of member generating referral code.</p>"
          },
          {
            "group": "Parameter",
            "type": "status",
            "optional": false,
            "field": "optional",
            "description": "<p>token status.</p>"
          }
        ]
      }
    },
    "success": {
      "fields": {
        "Success 200": [
          {
            "group": "Success 200",
            "optional": false,
            "field": "tokens",
            "description": "<p>array of token objects</p>"
          }
        ]
      },
      "examples": [
        {
          "title": "Success-Response:",
          "content": "HTTP/1.1 200 OK\n{\n  \"tokens\": [\n    {\"token\": \"*********\", \"status\": \"available\", \"expiry\": null}\n  ]\n}",
          "type": "json"
        }
      ]
    },
    "version": "0.0.0",
    "filename": "routes/referrals.js",
    "groupTitle": "Referrals"
  },
  {
    "type": "get",
    "url": "/isReferred/:user_id",
    "title": "Check if user is referred",
    "name": "isReferred",
    "group": "Referrals",
    "parameter": {
      "fields": {
        "Parameter": [
          {
            "group": "Parameter",
            "type": "user_id",
            "optional": false,
            "field": "user",
            "description": "<p>id</p>"
          }
        ]
      }
    },
    "success": {
      "examples": [
        {
          "title": "Success-Response:",
          "content": "HTTP/1.1 200 OK\n{\n  true\n}",
          "type": "json"
        }
      ]
    },
    "description": "<p>returns boolean indicating if user is referred or not</p>",
    "version": "0.0.0",
    "filename": "routes/referrals.js",
    "groupTitle": "Referrals"
  },
  {
    "type": "post",
    "url": "/joinQueue",
    "title": "Join waiting list (track email & phone)",
    "name": "joinQueue",
    "group": "Referrals",
    "parameter": {
      "fields": {
        "Parameter": [
          {
            "group": "Parameter",
            "type": "email",
            "optional": false,
            "field": "email",
            "description": "<p>address</p>"
          },
          {
            "group": "Parameter",
            "type": "phone",
            "optional": false,
            "field": "phone",
            "description": "<p>number</p>"
          }
        ]
      }
    },
    "success": {
      "fields": {
        "Success 200": [
          {
            "group": "Success 200",
            "optional": false,
            "field": "verified",
            "defaultValue": "true",
            "description": ""
          }
        ]
      },
      "examples": [
        {
          "title": "Success-Response:",
          "content": "HTTP/1.1 200 OK\n{\n  \"success\": true\n  \"message\": 'Added to waiting list'\n}",
          "type": "json"
        }
      ]
    },
    "description": "<p>referral token is updated with existing user_id</p>",
    "version": "0.0.0",
    "filename": "routes/referrals.js",
    "groupTitle": "Referrals"
  },
  {
    "type": "get",
    "url": "/verify/:user_id",
    "title": "Verify token and apply to existing user",
    "name": "verify",
    "group": "Referrals",
    "permission": [
      {
        "name": "member"
      }
    ],
    "parameter": {
      "fields": {
        "Parameter": [
          {
            "group": "Parameter",
            "type": "user_id",
            "optional": false,
            "field": "Current",
            "description": "<p>user</p>"
          },
          {
            "group": "Parameter",
            "type": "token",
            "optional": false,
            "field": "Token",
            "description": "<p>to validate</p>"
          }
        ]
      }
    },
    "success": {
      "fields": {
        "Success 200": [
          {
            "group": "Success 200",
            "optional": false,
            "field": "verified",
            "defaultValue": "true",
            "description": ""
          }
        ]
      },
      "examples": [
        {
          "title": "Success-Response:",
          "content": "HTTP/1.1 200 OK\n{\n  \"verified\": true\n}",
          "type": "json"
        }
      ]
    },
    "description": "<p>referral token is updated with existing user_id</p>",
    "version": "0.0.0",
    "filename": "routes/referrals.js",
    "groupTitle": "Referrals"
  }
] });