SHARE
TWEET

Untitled

a guest Aug 12th, 2016 70 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. swagger: '2.0'
  2. info:
  3.   version: "0.0.0"
  4.   title: Nook
  5. schemes:
  6.   - http
  7. host: localhost:3000
  8. basePath: /swagger
  9. consumes:
  10.   - application/json
  11. produces:
  12.   - application/json
  13. paths:
  14.   /api/create_account :
  15.     post:
  16.       description: Create account
  17.       parameters:
  18.         -
  19.           in: body
  20.           name: create_account
  21.           schema:
  22.             type: object
  23.             required:
  24.               - smartphone_id
  25.             properties:
  26.               smartphone_id:
  27.                 type: string
  28.       responses:
  29.         200:
  30.           description: Successful response
  31.           schema:
  32.             type: object
  33.             properties:
  34.               nook_id:
  35.                 type: string
  36.               token:
  37.                 type: string
  38.   /api/update_user:
  39.     put:
  40.       description: Finish registration
  41.       parameters:
  42.         -
  43.           in: body
  44.           name: update_user
  45.           schema:
  46.             type: object
  47.             required:
  48.               - nook_id
  49.               - token
  50.             properties:
  51.               nook_id:
  52.                 type: string
  53.               token:
  54.                 type: string
  55.               data:
  56.                 type: object
  57.                 required:
  58.                   - password
  59.                   - email
  60.                   - registration_complete
  61.                 properties:
  62.                   password:
  63.                     type: string
  64.                     format: password
  65.                   email:
  66.                     type: string
  67.                   registration_complete:
  68.                     type: boolean
  69.       responses:
  70.         200:
  71.           description: OK
  72.           schema:
  73.             type: object
  74.             properties:
  75.               nook_id:
  76.                 type: string
  77.               token:
  78.                 type: string
  79.               email:
  80.                 type: string
  81.               smartphone_id:
  82.                 type: string
  83.               registratrion_complete:
  84.                 type: boolean
  85.   /api/login:
  86.     post:
  87.       description: Login
  88.       parameters:
  89.         -
  90.           in: body
  91.           name: login
  92.           schema:
  93.             type: object
  94.             required:
  95.               - nook_id
  96.               - password
  97.             properties:
  98.               nook_id:
  99.                 type: string
  100.               password:
  101.                 type: string
  102.                 format: password
  103.       responses:
  104.         200:
  105.           description: OK
  106.           schema:
  107.             type: object
  108.             properties:
  109.               nook_id:
  110.                 type: string
  111.               token:
  112.                 type: string
  113.               email:
  114.                 type: string
  115.               smartphone_id:
  116.                 type: string
  117.               registratrion_complete:
  118.                 type: boolean
  119.   /api/logout:
  120.     post:
  121.       description: Logout
  122.       parameters:
  123.         -
  124.           in: body
  125.           name: logout
  126.           schema:
  127.             type: object
  128.             required:
  129.               - nook_id
  130.             properties:
  131.               nook_id:
  132.                 type: string
  133.       responses:
  134.         200:
  135.           description: OK
  136.           schema:
  137.             type: object
  138.             properties:
  139.               success:
  140.                 type: boolean
  141.   /api/users:
  142.     get:
  143.       description: Get user list
  144.       responses:
  145.         200:
  146.           description: OK
  147.           schema:
  148.             type: array
  149.             items:
  150.               $ref: '#/definitions/User'
  151.   /api/users/{nook_id}/interests:
  152.     get:
  153.       description: Get interests for user with given **nook_id**
  154.       parameters:
  155.         -
  156.           name: nook_id
  157.           in: path
  158.           required: true
  159.           type: string
  160.       responses:
  161.         200:
  162.           description: OK
  163.           schema:
  164.             type: object
  165.             properties:
  166.               interests:
  167.                 type: array
  168.                 items:
  169.                   $ref: '#/definitions/Interest'
  170.     post:
  171.       description: Create new interest for the given user
  172.       parameters:
  173.         -
  174.           name: nook_id
  175.           in: path
  176.           required: true
  177.           type: string
  178.         -
  179.           name: interest
  180.           in: body
  181.           schema:
  182.             $ref: '#/definitions/InterestNew'
  183.       responses:
  184.         200:
  185.           description: OK
  186.           schema:
  187.             $ref: '#/definitions/Interest'
  188.   /api/users/{nook_id}/interests/{interests_id}:
  189.     get:
  190.       description: Get one particular interest with given id
  191.       parameters:
  192.         -
  193.           name: nook_id
  194.           in: path
  195.           required: true
  196.           type: string
  197.         -
  198.           name: interests_id
  199.           in: path
  200.           required: true
  201.           type: string
  202.       responses:
  203.         200:
  204.           description: OK
  205.           schema:
  206.             $ref: '#/definitions/Interest'
  207.     put:
  208.       description: Update or create new interests
  209.       parameters:
  210.         -
  211.           name: nook_id
  212.           in: path
  213.           required: true
  214.           type: string
  215.         -
  216.           name: interests_id
  217.           in: path
  218.           required: true
  219.           type: string
  220.         -
  221.           name: interest
  222.           in: body
  223.           schema:
  224.             $ref: '#/definitions/InterestNew'
  225.       responses:
  226.         200:
  227.           description: OK
  228.           schema:
  229.             $ref: '#/definitions/Interest'
  230.     delete:
  231.       description: Delete interest with given id
  232.       parameters:
  233.         -
  234.           name: nook_id
  235.           in: path
  236.           required: true
  237.           type: string
  238.         -
  239.           name: interests_id
  240.           in: path
  241.           required: true
  242.           type: string
  243.       responses:
  244.         204:
  245.           description: Deleted
  246.   /api/users/{nook_id}/interests/{interests_id}/mediaitems:
  247.     delete:
  248.       parameters:
  249.         -
  250.           name: nook_id
  251.           in: path
  252.           required: true
  253.           type: string
  254.         -
  255.           name: interests_id
  256.           in: path
  257.           required: true
  258.           type: string
  259.         -
  260.           name: mediaitems_to_delete
  261.           required: true
  262.           in: body
  263.           schema:
  264.             $ref: '#/definitions/MediaItemsIds'
  265.       responses:
  266.         204:
  267.           description: Deleted
  268.     get:
  269.       parameters:
  270.         -
  271.           name: nook_id
  272.           in: path
  273.           required: true
  274.           type: string
  275.         -
  276.           name: interests_id
  277.           in: path
  278.           required: true
  279.           type: string
  280.       responses:
  281.         200:
  282.           description: OK
  283.           schema:
  284.             $ref: '#/definitions/MediaItems'
  285.  
  286.   /api/users/{nook_id}/interests/{interests_id}/images/{image_id}:
  287.     get:
  288.       parameters:
  289.         -
  290.           name: nook_id
  291.           in: path
  292.           required: true
  293.           type: string
  294.         -
  295.           name: interests_id
  296.           in: path
  297.           required: true
  298.           type: string
  299.         -
  300.           name: image_id
  301.           in: path
  302.           required: true
  303.           type: string
  304.       responses:
  305.         200:
  306.           description: OK
  307.           schema:
  308.             $ref: '#/definitions/Image'
  309.     delete:
  310.       parameters:
  311.         -
  312.           name: nook_id
  313.           in: path
  314.           required: true
  315.           type: string
  316.         -
  317.           name: interests_id
  318.           in: path
  319.           required: true
  320.           type: string
  321.         -
  322.           name: image_id
  323.           in: path
  324.           required: true
  325.           type: string
  326.       responses:
  327.         204:
  328.           description: Deleted
  329.   /api/users/{nook_id}/interests/{interests_id}/images:
  330.     get:
  331.       parameters:
  332.         -
  333.           name: nook_id
  334.           in: path
  335.           required: true
  336.           type: string
  337.         -
  338.           name: interests_id
  339.           in: path
  340.           required: true
  341.           type: string
  342.       responses:
  343.         200:
  344.           description: OK
  345.           schema:
  346.             type: array
  347.             items:
  348.               $ref: '#/definitions/Image'
  349.     post:
  350.       parameters:
  351.         -
  352.           name: nook_id
  353.           in: path
  354.           required: true
  355.           type: string
  356.         -
  357.           name: interests_id
  358.           in: path
  359.           required: true
  360.           type: string
  361.         -
  362.           name: image
  363.           in: body
  364.           schema:
  365.             $ref: '#/definitions/Image'
  366.       responses:
  367.         200:
  368.           description: OK
  369.           schema:
  370.             type: array
  371.             items:
  372.               $ref: '#/definitions/ImageWithInterestId'
  373.   /api/users/{nook_id}/interests/{interests_id}/texts/{text_id}:
  374.     get:
  375.       parameters:
  376.         -
  377.           name: nook_id
  378.           in: path
  379.           required: true
  380.           type: string
  381.         -
  382.           name: interests_id
  383.           in: path
  384.           required: true
  385.           type: string
  386.         -
  387.           name: text_id
  388.           in: path
  389.           required: true
  390.           type: string
  391.       responses:
  392.         200:
  393.           description: OK
  394.           schema:
  395.             $ref: '#/definitions/Text'
  396.     delete:
  397.       parameters:
  398.         -
  399.           name: nook_id
  400.           in: path
  401.           required: true
  402.           type: string
  403.         -
  404.           name: interests_id
  405.           in: path
  406.           required: true
  407.           type: string
  408.         -
  409.           name: text_id
  410.           in: path
  411.           required: true
  412.           type: string
  413.       responses:
  414.         204:
  415.           description: Deleted
  416.   /api/users/{nook_id}/interests/{interests_id}/texts:
  417.     get:
  418.       parameters:
  419.         -
  420.           name: nook_id
  421.           in: path
  422.           required: true
  423.           type: string
  424.         -
  425.           name: interests_id
  426.           in: path
  427.           required: true
  428.           type: string
  429.       responses:
  430.         200:
  431.           description: OK
  432.           schema:
  433.             type: array
  434.             items:
  435.               $ref: '#/definitions/Text'
  436.     post:
  437.       parameters:
  438.         -
  439.           name: nook_id
  440.           in: path
  441.           required: true
  442.           type: string
  443.         -
  444.           name: interests_id
  445.           in: path
  446.           required: true
  447.           type: string
  448.         -
  449.           name: text
  450.           in: body
  451.           schema:
  452.             $ref: '#/definitions/Text'
  453.       responses:
  454.         200:
  455.           description: OK
  456.           schema:
  457.             type: array
  458.             items:
  459.               $ref: '#/definitions/Text'
  460.   /api/match/{nook_id}:
  461.     post:
  462.       parameters:
  463.         -
  464.           name: nook_id
  465.           in: path
  466.           required: true
  467.           type: string
  468.       responses:
  469.         200:
  470.           description: OK
  471.           schema:
  472.             type: array
  473.             items:
  474.               $ref: '#/definitions/User'
  475.     get:
  476.       parameters:
  477.         -
  478.           name: nook_id
  479.           in: path
  480.           required: true
  481.           type: string
  482.       responses:
  483.         200:
  484.           description: OK
  485.           schema:
  486.             type: array
  487.             items:
  488.               $ref: '#/definitions/Match'
  489.   /api/location/{nook_id}:
  490.     put:
  491.       parameters:
  492.         -
  493.           name: nook_id
  494.           in: path
  495.           required: true
  496.           type: string
  497.         -
  498.           name: location
  499.           required: true
  500.           in: body
  501.           schema:
  502.             $ref: '#/definitions/Location'
  503.       responses:
  504.         200:
  505.           description: OK
  506.           schema:
  507.             $ref: '#/definitions/LocationReturned'
  508.   /api/users/{nook_id}:
  509.     get:
  510.       parameters:
  511.         -
  512.           name: nook_id
  513.           in: path
  514.           required: true
  515.           type: string
  516.       responses:
  517.         200:
  518.           description: OK
  519.   /api/contact/{user_id}/{target_id}:
  520.     get:
  521.       parameters:
  522.         -
  523.           name: user_id
  524.           in: path
  525.           required: true
  526.           type: integer
  527.         -
  528.           name: target_id
  529.           in: path
  530.           required: true
  531.           type: integer
  532.       responses:
  533.         200:
  534.           description: OK
  535.           schema:
  536.             type: object
  537.             properties:
  538.               user_1:
  539.                 type: integer
  540.               user_2:
  541.                 type: integer
  542.               status:
  543.                 type: string
  544.     put:
  545.       description: Update contact status
  546.       parameters:
  547.         -
  548.           name: user_id
  549.           in: path
  550.           required: true
  551.           type: integer
  552.         -
  553.           name: target_id
  554.           in: path
  555.           required: true
  556.           type: integer
  557.         -
  558.           name: status
  559.           in: body
  560.           required: true
  561.           type: string
  562.       responses:
  563.         200:
  564.           description: OK
  565.   /api/contacts/{id}:
  566.     get:
  567.       parameters:
  568.         -
  569.           name: id
  570.           in: path
  571.           required: true
  572.           type: integer
  573.       responses:
  574.         200:
  575.           description: OK
  576.           schema:
  577.             type: object
  578.             properties:
  579.               user_1:
  580.                 type: integer
  581.               user_2:
  582.                 type: integer
  583.               status:
  584.                 type: string
  585.  
  586.   /api/interests/suggestions:
  587.     get:
  588.       parameters:
  589.         -
  590.           name: query
  591.           in: query
  592.           required: true
  593.           type: string
  594.       responses:
  595.         200:
  596.           description: OK
  597.           schema:
  598.             type: array
  599.             items:
  600.               type: string
  601.  
  602.   /api/chat/{userId}/conversations:
  603.     get:
  604.       responses:
  605.         200:
  606.           description: OK
  607.           schema:
  608.             type: array
  609.             items:
  610.               properties:
  611.                 id:
  612.                   type: integer
  613.                 userOneId:
  614.                   type: integer
  615.                 userTwoId:
  616.                   type: integer
  617.                 lastMessage:
  618.                   type: object
  619.                   schema:
  620.                     properties:
  621.                       id:
  622.                         type: integer
  623.                       data:
  624.                         type: string
  625.                       date:
  626.                         type: string
  627.                         format: date-time
  628.                       fromId:
  629.                         type: integer
  630.                       toId:
  631.                         type: integer
  632.                       ConversationId:
  633.                         type: integer
  634.  
  635.   /api/chat/{userId}/conversations/{conversationId}:
  636.     get:
  637.       responses:
  638.         200:
  639.           description: OK
  640.           schema:
  641.             type: array
  642.             items:
  643.               properties:
  644.                 id:
  645.                   type: integer
  646.                 data:
  647.                   type: string
  648.                   description: Message string is here
  649.                 date:
  650.                   type: string
  651.                   format: date-time
  652.                 fromId:
  653.                   type: integer
  654.                 toId:
  655.                   type: integer
  656.                 ConversationId:
  657.                   type: integer
  658.  
  659.  
  660. definitions:
  661.   User:
  662.     type: object
  663.     properties:
  664.       nook_id:
  665.         type: string
  666.       email:
  667.         type: string
  668.       registration_complete:
  669.         type: boolean
  670.       logged_in:
  671.         type: boolean
  672.   UserReturned:
  673.     type: object
  674.     properties:
  675.       id:
  676.         type: integer
  677.       smartphone_id:
  678.         type: string
  679.       nook_id:
  680.         type: string
  681.       registration_complete:
  682.         type: boolean
  683.       logged_in:
  684.         type: boolean
  685.       createdAt:
  686.         type: string
  687.         format: date-time
  688.       updatedAt:
  689.         type: string
  690.         format: date-time
  691.       match:
  692.         type: object
  693.         properties:
  694.           id:
  695.             type: integer
  696.           nook_id:
  697.             type: string
  698.           nickname:
  699.             type: string
  700.           status:
  701.             type: string
  702.           common_number:
  703.             type: integer
  704.           similarity_rate:
  705.             type: string
  706.           createdAt:
  707.             type: string
  708.             format: date-time
  709.           updatedAt:
  710.             type: string
  711.             format: date-time
  712.           user_id:
  713.             type: integer
  714.   UserInUser:
  715.     type: object
  716.     properties:
  717.       id:
  718.         type: integer
  719.       nook_id:
  720.         type: string
  721.       nickname:
  722.         type: string
  723.       status:
  724.         type: string
  725.       common_number:
  726.         type: integer
  727.       similarity_rate:
  728.         type: string
  729.       createdAt:
  730.         type: string
  731.         format: date-time
  732.       updatedAt:
  733.         type: string
  734.         format: date-time
  735.       user_id:
  736.         type: integer
  737.   UserStatus:
  738.     type: object
  739.     properties:
  740.       status:
  741.         type: string
  742.   Match:
  743.     type: string
  744.   Interest:
  745.     type: object
  746.     properties:
  747.       name:
  748.         type: string
  749.       description:
  750.         type: string
  751.       id:
  752.         type: integer
  753.       images:
  754.         type: array
  755.         items:
  756.           $ref: '#/definitions/Image'
  757.       texts:
  758.         type: array
  759.         items:
  760.           $ref: '#/definitions/Text'
  761.   InterestNew:
  762.     type: object
  763.     properties:
  764.       name:
  765.         type: string
  766.       description:
  767.         type: string
  768.       images:
  769.         type: array
  770.         items:
  771.           $ref: '#/definitions/ImageNew'
  772.       texts:
  773.         type: array
  774.         items:
  775.           $ref: '#/definitions/Text'
  776.   Text:
  777.     type: object
  778.     required:
  779.       - text
  780.     properties:
  781.       text:
  782.         type: string
  783.       id:
  784.         type: integer
  785.   Image:
  786.     type: object
  787.     properties:
  788.       caption:
  789.         type: string
  790.       image:
  791.         type: string
  792.         format: byte
  793.       id:
  794.         type: integer
  795.   ImageWithInterestId:
  796.     type: object
  797.     properties:
  798.       caption:
  799.         type: string
  800.       image:
  801.         type: string
  802.         format: byte
  803.       id:
  804.         type: integer
  805.       interest_id:
  806.         type: integer
  807.   ImageNew:
  808.     type: object
  809.     properties:
  810.       caption:
  811.         type: string
  812.       image:
  813.         type: string
  814.         format: byte
  815.   MediaItemsIds:
  816.     type: object
  817.     properties:
  818.       images:
  819.         type: array
  820.         items:
  821.           type: integer
  822.       texts:
  823.         type: array
  824.         items:
  825.           type: integer
  826.   MediaItems:
  827.     type: object
  828.     properties:
  829.       images:
  830.         type: array
  831.         items:
  832.           $ref: '#/definitions/Image'
  833.       texts:
  834.         type: array
  835.         items:
  836.           $ref: '#/definitions/Text'
  837.   Location:
  838.     type: object
  839.     properties:
  840.       accuracy:
  841.         type: integer
  842.       altitude:
  843.         type: integer
  844.       altitudeAccuracy:
  845.         type: integer
  846.       heading:
  847.         type: integer
  848.       latitude:
  849.         type: number
  850.         format: float
  851.       longitude:
  852.         type: number
  853.         format: float
  854.       speed:
  855.         type: integer
  856.   LocationReturned:
  857.     type: object
  858.     properties:
  859.       user_id:
  860.         type: integer
  861.       accuracy:
  862.         type: integer
  863.       altitude:
  864.         type: integer
  865.       altitudeAccuracy:
  866.         type: integer
  867.       heading:
  868.         type: integer
  869.       latitude:
  870.         type: number
  871.         format: float
  872.       longitude:
  873.         type: number
  874.         format: float
  875.       speed:
  876.         type: integer
  877.       createdAt:
  878.         type: string
  879.         format: date-time
  880.       updatedAt:
  881.         type: string
  882.         format: date-time
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top