main/config/modules.json

164 lines
4.6 KiB
JSON
Raw Normal View History

{
"authentication": {
"POST admin": {
"description": "Connexion administrateur",
"permissions": [],
"parameters": {
"username": { "description": "Identifiant de l'administrateur.", "type": "varchar(3,20,alphanumeric)" },
"password": { "description": "Mot de passe de l'administrateur.", "type": "text" }
},
"output": {
"connected": { "description": "Vrai si connecté.", "type": "boolean" }
}
},
"POST user": {
"description": "Connexion utilisateur",
"permissions": [],
"parameters": {
"username": { "description": "Identifiant de l'utilisateur.", "type": "varchar(3,20,alphanumeric)" },
"password": { "description": "Mot de passe de l'utilisateur'.", "type": "text" }
},
"output": {
"connected": { "description": "Vrai si connecté.", "type": "boolean" }
}
},
"POST signup": {
"description": "Formulaire d'inscription",
"permissions": [],
"parameters": {
"username": { "description": "Identifiant de l'utilisateur", "type": "varchar(3,20,alphanumeric)" },
"mail": { "description": "Adresse mail de l'utilisateur", "type": "text" },
"password": { "description": "Mot de passe de l'utilisateur", "type": "text" }
},
"output": {
"sent": { "description": "Etat de l'inscription, VRAI si le mail de confirmation a été envoyé", "type": "boolean" }
}
},
"GET signup_token": {
"description": "Validation de l'inscription par lien envoyé par mail",
"permissions": [],
"parameters": {
"URL_0": { "description": "Token de confirmation URL", "type": "hash" }
},
"output": {
"confirmed": { "description": "Etat de la validité du token", "type": "boolean" }
}
},
"POST pass": {
"description": "Demande de nouveau mot de passe",
"permissions": ["user"],
"parameters": {},
"output": {
"sent": { "description": "Etat de la demande de nouveau mot de passe, VRAI si le mail de confirmation a été envoyé", "type": "boolean" }
}
},
"POST pass_token": {
"description": "Changement de mot de passe",
"permissions": [],
"parameters": {
"URL_0": { "description": "Token de confirmation URL", "type": "hash" }
},
"output": {
"confirmed": { "description": "Etat de la validité du token", "type": "boolean" }
}
},
"POST pass_update": {
"description": "Changement de mot de passe",
"permissions": [],
"parameters": {
"password": { "description": "Nouveau mot de passe", "type": "text" }
},
"output": {
"updated": { "description": "Vrai si mot de passe mis à jour", "type": "boolean" }
}
}
},
"dev": {
"GET session_destroy": {
"description": "Destroy current session",
"permissions": [],
"parameters": {},
"output": {}
},
"GET release": {
"description": "Auto release git repo",
"permissions": [],
"parameters": {},
"output": {}
}
},
"RESTexample": {
"POST article": {
"description": "Posts a new article",
"permissions": [["journalist"]],
"parameters": {
"title": { "description": "Article's title", "type": "varchar(5,100)" },
"content": { "description": "Article's content", "type": "text" }
},
"output": {
"created_id": { "description": "Id of the created article", "type": "id" }
}
},
"GET article": {
"description": "Gets all or a specific article",
"permissions": [["viewer"], ["journalist"]],
"parameters": {
"URL_0": { "description": "Article id", "type": "id", "optional": true }
},
"output": {
"articles": { "description": "List of selected articles", "type": "array<mixed>" }
}
},
"VIEW article": {
"description": "Gets a specific article into a json file (download)",
"permissions": [["viewer"], ["journalist"]],
"options": { "download": true },
"parameters": {
"URL_0": { "description": "Article id", "type": "id" }
},
"output": {
"article": { "description": "Selected article as JSON file", "type": "text" }
}
},
"PUT article": {
"description": "Updates a specific article",
"permissions": [["journalist"]],
"parameters": {
"URL_0": { "description": "Article id", "type": "id" },
"content": { "description": "Article's content", "type": "text" }
},
"output": {
"article": { "description": "Returns updated article", "type": "array<mixed>" }
}
},
"DELETE article": {
"description": "Deletes a specific article",
"permissions": [["journalist"]],
"parameters": {
"URL_0": { "description": "Article id", "type": "id" }
},
"output": {}
}
}
}