Skip to content
This repository was archived by the owner on Jun 17, 2020. It is now read-only.

sharmana/sharmana-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sharmana Backend API

2 modules:

  • beans module (with auto-generated) models
  • application (with resources and db logic)

#WADL Example http://api.sharmana.ru/application.wadl

##Setup

Build with maven: mvn clean install

Run with jetty-runner (in app module): java $JAVA_OPTS -jar target/dependency/jetty-runner.jar --port $PORT target/*.war

Usage

Authorization:

POST /user/auth
Headers:
 - Yandex-Auth: {OAuth from oauth.yandex.ru}

Returns:

{
  "_id":"5439547d0c16c205df",
  "yandex_id":"212",
  "email":"sharmana@yandex.ru"
}

Use next _id field content as auth-token;

Fetch events

GET /events/my
Headers:
 - Authorization: 5439547d0c16c205df

Returns array of events:

[
    {
       "_id": "543a3165f753ee",
       "name": "Shashlyk-mashlyk",
       "currency": "rur",
       "created": 2213036541,
       "emails":
       [
           "lanwen@yandex.ru",
           "sharmana@yandex.ru"
       ],
       "transactions":
       [
           {
               "who": "sharmana@yandex.ru",
               "count": 10,
               "date": 1123123123,
               "comment": "Ski"
           },
           {
               "who": "sharmana@yandex.ru",
               "count": 14,
               "date": 1123123123,
               "comment": "Common"
           },
           {
               "who": "lanwen@yandex.ru",
               "count": 1.1,
               "date": 1123123123,
               "comment": "Water"
           }
       ],
       "checkouts":
       [
       ],
       "status": "open"
    }
]

Save or Update events

PUT /event/add
Headers:
 - Authorization: 5439547d0c16c205df
 - Content-Type: application/json

Need to put event object to entity

Returns: Event with merged transactions ans 200 on updating, 201 on new

Checkout event

POST /event/checkout
Headers:
 - Authorization: 5439547d0c16c205df
 - Content-Type: application/json

Returns event object with filled checkouts:

"checkouts":
   [
       {
           "who": "lanwen@yandex.ru",
           "to": "sharmana@yandex.ru",
           "count": 11.45,
           "yamoney_url": "/pay?amount=11&transaction_name=%D0%9F%D%D1%88%D0%BB%D1D0%BC%D0%B8+(lanwen@yandex.ru)"
       }
   ],

MUST be already existent event with _id defined

#Create Pay with YA.MONEY via bank card

More info

Can be not authorized. Need to setup client.id.key system property (see api.doc)

GET /pay?amount=11&transaction_name=comment&to={ya.money.to.send.to}

##MONGO SETUP

Define -Dmongo.uri=http://host:port and db name -Dmongo.dbname=testdb

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors