basePath: /v1 definitions: champpersonnalise.TypeChamp: enum: - string - string - int - bool - date type: string x-enum-varnames: - DefaultTypeChamp - TypeChampString - TypeChampInt - TypeChampBool - TypeChampDate ent.Categorie: properties: created_at: description: Date de creation type: string edges: allOf: - $ref: '#/definitions/ent.CategorieEdges' description: |- Edges holds the relations/edges for other nodes in the graph. The values are being populated by the CategorieQuery when eager-loading is set. icone: description: Nom ou code d'icone type: string id: description: |- ID of the ent. Identifiant unique de la categorie type: string nom: description: Nom de la categorie type: string parent_id: description: Identifiant du parent type: string slug: description: Slug URL-friendly type: string updated_at: description: Date de derniere mise a jour type: string type: object ent.CategorieEdges: properties: enfants: description: Enfants holds the value of the enfants edge. items: $ref: '#/definitions/ent.Categorie' type: array parent: allOf: - $ref: '#/definitions/ent.Categorie' description: Lien parent/enfants pour l'arbre des categories type: object ent.ChampPersonnalise: properties: created_at: description: Date de creation type: string edges: allOf: - $ref: '#/definitions/ent.ChampPersonnaliseEdges' description: |- Edges holds the relations/edges for other nodes in the graph. The values are being populated by the ChampPersonnaliseQuery when eager-loading is set. id: description: |- ID of the ent. Identifiant unique du champ type: string nom_champ: description: Nom du champ type: string objet_id: description: Identifiant de l'objet type: string type_champ: allOf: - $ref: '#/definitions/champpersonnalise.TypeChamp' description: Type du champ unite: description: Unite (si applicable) type: string updated_at: description: Date de derniere mise a jour type: string valeur: description: Valeur stockee en texte type: string type: object ent.ChampPersonnaliseEdges: properties: objet: allOf: - $ref: '#/definitions/ent.Objet' description: Objet holds the value of the objet edge. type: object ent.Emplacement: properties: created_at: description: Date de creation type: string edges: allOf: - $ref: '#/definitions/ent.EmplacementEdges' description: |- Edges holds the relations/edges for other nodes in the graph. The values are being populated by the EmplacementQuery when eager-loading is set. icone: description: Nom ou code d'icone type: string id: description: |- ID of the ent. Identifiant unique de l'emplacement type: string meuble: description: Meuble associe type: string nom: description: Nom de l'emplacement type: string numero_boite: description: Numero de boite type: string parent_id: description: Identifiant du parent type: string piece: description: Piece associee type: string slug: description: Slug URL-friendly type: string updated_at: description: Date de derniere mise a jour type: string type: object ent.EmplacementEdges: properties: enfants: description: Enfants holds the value of the enfants edge. items: $ref: '#/definitions/ent.Emplacement' type: array liens_objets: description: Liens entre emplacements et objets items: $ref: '#/definitions/ent.LienObjetEmplacement' type: array parent: allOf: - $ref: '#/definitions/ent.Emplacement' description: Lien parent/enfants pour l'arbre des emplacements type: object ent.LienObjetEmplacement: properties: created_at: description: Date de creation type: string edges: allOf: - $ref: '#/definitions/ent.LienObjetEmplacementEdges' description: |- Edges holds the relations/edges for other nodes in the graph. The values are being populated by the LienObjetEmplacementQuery when eager-loading is set. emplacement_id: description: Identifiant de l'emplacement type: string id: description: |- ID of the ent. Identifiant unique du lien type: string objet_id: description: Identifiant de l'objet type: string type: allOf: - $ref: '#/definitions/lienobjetemplacement.Type' description: Type de relation updated_at: description: Date de derniere mise a jour type: string type: object ent.LienObjetEmplacementEdges: properties: emplacement: allOf: - $ref: '#/definitions/ent.Emplacement' description: Emplacement holds the value of the emplacement edge. objet: allOf: - $ref: '#/definitions/ent.Objet' description: Objet holds the value of the objet edge. type: object ent.Objet: properties: boutique: description: Boutique ou fournisseur type: string caracteristiques: additionalProperties: true description: Caracteristiques personnalisees type: object created_at: description: Date de creation type: string date_achat: description: Date d'achat type: string description: description: Description libre type: string edges: allOf: - $ref: '#/definitions/ent.ObjetEdges' description: |- Edges holds the relations/edges for other nodes in the graph. The values are being populated by the ObjetQuery when eager-loading is set. fabricant: description: Fabricant type: string id: description: |- ID of the ent. Identifiant unique de l'objet type: string nom: description: Nom de l'objet type: string numero_modele: description: Numero de modele type: string numero_serie: description: Numero de serie type: string prix_achat: description: Prix d'achat type: number quantite: description: Quantite en stock type: integer statut: allOf: - $ref: '#/definitions/objet.Statut' description: Statut de l'objet updated_at: description: Date de derniere mise a jour type: string type: object ent.ObjetEdges: properties: champs_personnalises: description: ChampsPersonnalises holds the value of the champs_personnalises edge. items: $ref: '#/definitions/ent.ChampPersonnalise' type: array liens_emplacements: description: LiensEmplacements holds the value of the liens_emplacements edge. items: $ref: '#/definitions/ent.LienObjetEmplacement' type: array pieces_jointes: description: PiecesJointes holds the value of the pieces_jointes edge. items: $ref: '#/definitions/ent.PieceJointe' type: array type: object ent.PieceJointe: properties: categorie: allOf: - $ref: '#/definitions/piecejointe.Categorie' description: Categorie de la piece jointe chemin: description: Chemin de stockage type: string created_at: description: Date de creation type: string edges: allOf: - $ref: '#/definitions/ent.PieceJointeEdges' description: |- Edges holds the relations/edges for other nodes in the graph. The values are being populated by the PieceJointeQuery when eager-loading is set. est_principale: description: Piece jointe principale type: boolean id: description: |- ID of the ent. Identifiant unique de la piece jointe type: string nom_fichier: description: Nom du fichier type: string objet_id: description: Identifiant de l'objet type: string type_mime: description: Type MIME type: string updated_at: description: Date de derniere mise a jour type: string type: object ent.PieceJointeEdges: properties: objet: allOf: - $ref: '#/definitions/ent.Objet' description: Objet holds the value of the objet edge. type: object handlers.categorieRequest: properties: icone: type: string nom: type: string parent_id: type: string slug: type: string type: object handlers.champPersonnaliseRequest: properties: nom_champ: type: string type_champ: type: string unite: type: string valeur: type: string type: object handlers.emplacementRequest: properties: icone: type: string meuble: type: string nom: type: string numero_boite: type: string parent_id: type: string piece: type: string slug: type: string type: object handlers.lienObjetEmplacementRequest: properties: emplacement_id: type: string type: type: string type: object handlers.lienObjetEmplacementUpdateRequest: properties: emplacement_id: type: string type: type: string type: object handlers.objetRequest: properties: boutique: type: string caracteristiques: additionalProperties: {} type: object date_achat: type: string description: type: string fabricant: type: string nom: type: string numero_modele: type: string numero_serie: type: string prix_achat: type: number quantite: type: integer statut: type: string type: object lienobjetemplacement.Type: enum: - stocke - stocke - utilise_dans type: string x-enum-varnames: - DefaultType - TypeStocke - TypeUtiliseDans objet.Statut: enum: - en_stock - en_stock - pret - hors_service - archive type: string x-enum-varnames: - DefaultStatut - StatutEnStock - StatutPret - StatutHorsService - StatutArchive piecejointe.Categorie: enum: - image - image - pdf_notice - markdown_tuto type: string x-enum-varnames: - DefaultCategorie - CategorieImage - CategoriePdfNotice - CategorieMarkdownTuto info: contact: {} description: API MatosBox pour la gestion d'inventaire. title: MatosBox API version: 0.1.0 paths: /categories: get: parameters: - description: Page in: query name: page type: integer - description: Limite in: query name: limit type: integer produces: - application/json responses: "200": description: OK schema: additionalProperties: true type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Lister les categories tags: - Categories post: consumes: - application/json parameters: - description: Categorie a creer in: body name: body required: true schema: $ref: '#/definitions/handlers.categorieRequest' produces: - application/json responses: "201": description: Created schema: $ref: '#/definitions/ent.Categorie' "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Creer une categorie tags: - Categories /categories/{id}: delete: parameters: - description: ID categorie in: path name: id required: true type: string responses: "204": description: No Content schema: type: string "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Supprimer une categorie tags: - Categories get: parameters: - description: ID categorie in: path name: id required: true type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/ent.Categorie' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Recuperer une categorie tags: - Categories put: consumes: - application/json parameters: - description: ID categorie in: path name: id required: true type: string - description: Categorie a mettre a jour in: body name: body required: true schema: $ref: '#/definitions/handlers.categorieRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/ent.Categorie' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Mettre a jour une categorie tags: - Categories /champs_personnalises/{id}: delete: parameters: - description: ID champ in: path name: id required: true type: string responses: "204": description: No Content schema: type: string "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Supprimer un champ personnalise tags: - ChampsPersonnalises put: consumes: - application/json parameters: - description: ID champ in: path name: id required: true type: string - description: Champ personnalise in: body name: body required: true schema: $ref: '#/definitions/handlers.champPersonnaliseRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/ent.ChampPersonnalise' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Mettre a jour un champ personnalise tags: - ChampsPersonnalises /emplacements: get: parameters: - description: Page in: query name: page type: integer - description: Limite in: query name: limit type: integer produces: - application/json responses: "200": description: OK schema: additionalProperties: true type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Lister les emplacements tags: - Emplacements post: consumes: - application/json parameters: - description: Emplacement a creer in: body name: body required: true schema: $ref: '#/definitions/handlers.emplacementRequest' produces: - application/json responses: "201": description: Created schema: $ref: '#/definitions/ent.Emplacement' "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Creer un emplacement tags: - Emplacements /emplacements/{id}: delete: parameters: - description: ID emplacement in: path name: id required: true type: string responses: "204": description: No Content schema: type: string "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Supprimer un emplacement tags: - Emplacements get: parameters: - description: ID emplacement in: path name: id required: true type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/ent.Emplacement' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Recuperer un emplacement tags: - Emplacements put: consumes: - application/json parameters: - description: ID emplacement in: path name: id required: true type: string - description: Emplacement a mettre a jour in: body name: body required: true schema: $ref: '#/definitions/handlers.emplacementRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/ent.Emplacement' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Mettre a jour un emplacement tags: - Emplacements /liens_emplacements/{id}: delete: parameters: - description: ID lien in: path name: id required: true type: string responses: "204": description: No Content schema: type: string "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Supprimer un lien objet/emplacement tags: - LiensEmplacements put: consumes: - application/json parameters: - description: ID lien in: path name: id required: true type: string - description: Mise a jour in: body name: body required: true schema: $ref: '#/definitions/handlers.lienObjetEmplacementUpdateRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/ent.LienObjetEmplacement' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "409": description: Conflict schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Mettre a jour un lien objet/emplacement tags: - LiensEmplacements /objets: get: parameters: - description: Page in: query name: page type: integer - description: Limite in: query name: limit type: integer produces: - application/json responses: "200": description: OK schema: additionalProperties: true type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Lister les objets tags: - Objets post: consumes: - application/json parameters: - description: Objet a creer in: body name: body required: true schema: $ref: '#/definitions/handlers.objetRequest' produces: - application/json responses: "201": description: Created schema: $ref: '#/definitions/ent.Objet' "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Creer un objet tags: - Objets /objets/{id}: delete: parameters: - description: ID objet in: path name: id required: true type: string responses: "204": description: No Content schema: type: string "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Supprimer un objet tags: - Objets get: parameters: - description: ID objet in: path name: id required: true type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/ent.Objet' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Recuperer un objet tags: - Objets put: consumes: - application/json parameters: - description: ID objet in: path name: id required: true type: string - description: Objet a mettre a jour in: body name: body required: true schema: $ref: '#/definitions/handlers.objetRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/ent.Objet' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Mettre a jour un objet tags: - Objets /objets/{id}/champs_personnalises: get: parameters: - description: ID objet in: path name: id required: true type: string - description: Page in: query name: page type: integer - description: Limite in: query name: limit type: integer produces: - application/json responses: "200": description: OK schema: additionalProperties: true type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Lister les champs personnalises tags: - ChampsPersonnalises post: consumes: - application/json parameters: - description: ID objet in: path name: id required: true type: string - description: Champ personnalise in: body name: body required: true schema: $ref: '#/definitions/handlers.champPersonnaliseRequest' produces: - application/json responses: "201": description: Created schema: $ref: '#/definitions/ent.ChampPersonnalise' "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Creer un champ personnalise tags: - ChampsPersonnalises /objets/{id}/liens_emplacements: get: parameters: - description: ID objet in: path name: id required: true type: string - description: Page in: query name: page type: integer - description: Limite in: query name: limit type: integer produces: - application/json responses: "200": description: OK schema: additionalProperties: true type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Lister les liens objet/emplacement tags: - LiensEmplacements post: consumes: - application/json parameters: - description: ID objet in: path name: id required: true type: string - description: Lien in: body name: body required: true schema: $ref: '#/definitions/handlers.lienObjetEmplacementRequest' produces: - application/json responses: "201": description: Created schema: $ref: '#/definitions/ent.LienObjetEmplacement' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "409": description: Conflict schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Creer un lien objet/emplacement tags: - LiensEmplacements /objets/{id}/pieces_jointes: get: parameters: - description: ID objet in: path name: id required: true type: string - description: Page in: query name: page type: integer - description: Limite in: query name: limit type: integer produces: - application/json responses: "200": description: OK schema: additionalProperties: true type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Lister les pieces jointes tags: - PiecesJointes post: consumes: - multipart/form-data parameters: - description: ID objet in: path name: id required: true type: string - description: Fichiers (multi) in: formData name: fichiers required: true type: file produces: - application/json responses: "201": description: Created schema: additionalProperties: true type: object "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "413": description: Request Entity Too Large schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Uploader des pieces jointes tags: - PiecesJointes /pieces_jointes/{id}: delete: parameters: - description: ID piece jointe in: path name: id required: true type: string responses: "204": description: No Content schema: type: string "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Supprimer une piece jointe tags: - PiecesJointes /pieces_jointes/{id}/principale: put: parameters: - description: ID piece jointe in: path name: id required: true type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/ent.PieceJointe' "400": description: Bad Request schema: additionalProperties: type: string type: object "404": description: Not Found schema: additionalProperties: type: string type: object "500": description: Internal Server Error schema: additionalProperties: type: string type: object summary: Definir la piece jointe principale tags: - PiecesJointes swagger: "2.0"