evo-doc / back-end

CTU FIT / BI-SP1 / EvoDoc semestral project - Back End
Other
0 stars 0 forks source link

API Project & Module #26

Open dunaevskiy opened 6 years ago

dunaevskiy commented 6 years ago

Tohle chce nejak vic usporadat.

🌏 Project

Client:

{
  "name": "projectName",
  "token": "token"
}

Server: Doufam, ze jmeno projektu neni unique.

// 200
{
  "project_id": "33447"
}

Client:

{
  "token": "token"
}

Server:

// 200
[
  {
    "name": "Project Name",
    "project_id": "34645",
    "owner": "he"
  }
]

Client:

{
  "project_id": "8945",
  "token": "token"
}

Server:

// 200
{
  "name": "Project Name",
  "project_id": "34645",
  "owner": "he"
}
// 400
"access denied or not exist"

Client:

{
  "project_id": "6734",
  "token": "token"
}

Server:

// 200
[
  {
    "name": "Module Name",
    "description": "Module Description"
    "module_id": "45856"
  }
]
// 400
"access denied or not exist"

Client:

{
  "project_id": "6734",
  "token": "token"
}

Server:

// 200
[
  {
    "uniqueId" : "256",
    "name": "packageName",
    "version": "v1.0.0",
    "description": "optional description",
    "state": "deprecated"
  }
]
// 400
"access denied or not exist"

Client:

{
  "name": "new project name",
  "project_id": "6734",
  "token": "token"
}

Server:

// 200
"success"

Client:

{
  "username": "username",
  "project_id": "6734",
  "token": "token"
}

Server:

// 200
"success" (i kdyz tam uz je)
// 400
"invalid username"
"invalid project" (mame prava na pridavani uzivatelu? netusim)

Client:

{
  "package_id": "6356",
  "project_id": "6734",
  "token": "token"
}

Server:

// 200
"success" (i kdyz tam uz je)
// 400
"invalid package"

🌏 Modules

Client:

{
  "project_id": "6734",
  "body": { "JSON": "JSON" },
  "token": "token"
}

Server:

// 200
"success"
// 400
"neco"

Client:

{
  "module_id": "6734",
  "token": "token"
}

Server:

// 200
{
  "body": { "JSON": "JSON" },
}

Client:

{
  "module_id": "563456",
  "project_id": "6734",
  "body": { "JSON": "JSON" },
  "token": "token"
}

Server:

// 200
"success"
// 400
"neco"
DanHampl commented 6 years ago
DanHampl commented 6 years ago

🔥 Seznam vsech projektu uzivatele (autor nebo spoluautor)

DanHampl commented 6 years ago

🔥 Vratit obecne informace o projektu

TomStary commented 6 years ago

@DanHampl píšeš na to rovnou integráče? Bylo by to docela fajn, protože bychom měli jistotu, že aspoň něco funguje, také se nám tím zvedne coverage a to je jedině dobře.

DanHampl commented 6 years ago

k mam je usebe na localu tak se mrknu na apiary a soupnu to tam :D kdyz se mi podari rozchodit :D

TomStary commented 6 years ago

Ještě prosím nepoužívej url typu /project/int:id, @inviqus to nenávidí a já to musel už přepisovat v user celé, takže ti chci ušetřit práci. Normálně to místo url dej do dat, opět viz user, pokud je to metodou POST|DELETE má to být v body, pokud to fičí před GET pak je to v parametrech url, ie. vše co je za ?

DanHampl commented 6 years ago

to je get vsude je to takhle body je post delete a get je parametr jestli chcete vsechno v body tak se da taky zaridit

TomStary commented 6 years ago

get jako parametr, podívej se na user get jak funguje. GET nepodporuje data v body

DanHampl commented 6 years ago

tak vtom pripade muzem prcnout vsechno na post :D

TomStary commented 6 years ago

Ne protože bychom nemohli využít např. /user na tři různé věci (GET, POST, DELETE)

TomStary commented 6 years ago

Prostě se s tím smiř a opiš to tak, jak je to v userapi.py