Compare commits
1123 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 78d1256b74 | |||
| a3f9aad418 | |||
| dba8cb83bf | |||
| 1954c607cd | |||
| 744124f407 | |||
| 3c14921a8c | |||
| b595fe7488 | |||
| b0b194cef7 | |||
| eb0a3a27d3 | |||
| 72fbcd72e0 | |||
| 09e660a38c | |||
| add1810fcc | |||
| eead2ce93e | |||
| 5e60d96614 | |||
| 85c721da99 | |||
| f3f09dd9a5 | |||
| 29ad804ca8 | |||
| a8c77d6e26 | |||
| b949380db8 | |||
| b7f6137a63 | |||
| 181cd7f0dc | |||
| 10692dc587 | |||
| 8d0793e004 | |||
| 02da163ee0 | |||
| 3199e94b3c | |||
| ac2a1503e2 | |||
| ea10167607 | |||
| e617b913cd | |||
| 8f6208a3c9 | |||
| 39c71481c9 | |||
| a38e49290e | |||
| f974427964 | |||
| 1f311c8657 | |||
| c0406734bc | |||
| 66e80628f6 | |||
| 620c43fd6d | |||
| dfb9d5622a | |||
| af0aa7da4e | |||
| 75ddb50738 | |||
| 600238dd9b | |||
| 5a88e98ad9 | |||
| 84a0544621 | |||
| 8a1c7ee448 | |||
| 2fb29dad0a | |||
| 7d160abdaf | |||
| 6c5d2c6716 | |||
| f3feff7988 | |||
| 7d24f50cdc | |||
| 7c7375ed43 | |||
| e2e4adca4e | |||
| a350b9bc3d | |||
| 7854543122 | |||
| 8b5636c0ab | |||
| 9f948fd2ba | |||
| 60fb67461a | |||
| 5c896fc965 | |||
| c779988771 | |||
| e6eb15d053 | |||
| 05b957df19 | |||
| 96da8a5fab | |||
| 62bf61402e | |||
| 227be798f6 | |||
| 53f304d137 | |||
| 137d362369 | |||
| 5b2cf54f50 | |||
| b4bc785f7c | |||
| 98a8e4c2ec | |||
| bed6b04c3d | |||
| babb3ffb9c | |||
| 15c96f753c | |||
| 354bdeffbf | |||
| 512af90d31 | |||
| ed837b7527 | |||
| fa5dd99f00 | |||
| a19282710b | |||
| 2f3cfb0a4e | |||
| af4db94d17 | |||
| bcbf27acca | |||
| 80b037c5a5 | |||
| 20bacfeecf | |||
| 8a128ae8c2 | |||
| beacfbb082 | |||
| df0d565ae5 | |||
| 9ee755c112 | |||
| 130aca2943 | |||
| 5ea76ecb66 | |||
| b8ff3ef41a | |||
| 3e8156be54 | |||
| 47e192b530 | |||
| b33f222fc0 | |||
| 20eab1f403 | |||
| a283fdb75a | |||
| a29a115846 | |||
| 05ff9183fb | |||
| 793d299c1d | |||
| 7d5f862f34 | |||
| b0ab900a0f | |||
| 0ea5012ba2 | |||
| 7ecb96d45a | |||
| 5f0d7fde39 | |||
| fe3c301ca2 | |||
| 3adf8847b0 | |||
| 9ae68f0000 | |||
| 36415a1f7a | |||
| 39d1aa932c | |||
| 82b37c3b58 | |||
| c73c2b003a | |||
| 65b39d3a30 | |||
| 6a59119c58 | |||
| 8b4387ec32 | |||
| dc82f8f077 | |||
| 07e1f67e13 | |||
| 412f4c65c8 | |||
| a6d9c1f882 | |||
| bb5c142f52 | |||
| a5e1528c0d | |||
| 904c20e879 | |||
| 612daa6824 | |||
| 02b6de2385 | |||
| da5db1920e | |||
| d20545741e | |||
| 03b42d2c6c | |||
| e9dbeebbc4 | |||
| bb53fa245b | |||
| bc796498a3 | |||
| c25266054b | |||
| 0204414196 | |||
| c6b2017494 | |||
| 84fd48602e | |||
| c8e8eb58aa | |||
| 0b087ca77d | |||
| 444083ec5d | |||
| bf01a11fec | |||
| 8f232421d2 | |||
| dbc688ad6e | |||
| 6217a721ac | |||
| c2ba937ac6 | |||
| d860786221 | |||
| 621ce1777f | |||
| 4f610ac1af | |||
| 7341cd1712 | |||
| bf112b7b4b | |||
| ad9e0cc39a | |||
| 1439681113 | |||
| 3b750541c9 | |||
| 79765201ac | |||
| 0086b9d848 | |||
| c8ddb44783 | |||
| d4829a4bac | |||
| 486f0c0035 | |||
| dc3a695ab0 | |||
| 3feee682b6 | |||
| 4ea5cb9538 | |||
| f6461a755a | |||
| 39cf5ce66e | |||
| c68d9892b5 | |||
| 33b20b6268 | |||
| 280df20a0b | |||
| 7027cd80d4 | |||
| bfbcfe7bae | |||
| e1f64b6d2b | |||
| 6944c438dd | |||
| 49b7ff1192 | |||
| 662cdbaa0e | |||
| e912eb5ef8 | |||
| 5ab68d83a5 | |||
| f7c432f7fd | |||
| 592ccb6ebe | |||
| d22d70dd92 | |||
| 7ec5606ce4 | |||
| 476bf95edf | |||
| cdf036ed7b | |||
| 639a3b9295 | |||
| e4f8c3bef7 | |||
| 462945022c | |||
| aa57687df0 | |||
| 3237a3b9de | |||
| ff30e109cc | |||
| 2d291f843a | |||
| 7219fc1c3c | |||
| ed6bfa7810 | |||
| ad15090c34 | |||
| 9d34bf4a19 | |||
| 7c9b1a52af | |||
| dd297dca31 | |||
| 1409d01078 | |||
| c9a03cf9b7 | |||
| 6a99132e76 | |||
| 2e269d2e63 | |||
| 7820636c9f | |||
| db1b35ccf6 | |||
| fadfe0a782 | |||
| 255a2ecdd9 | |||
| 97ffe33fc8 | |||
| 56d97a1f59 | |||
| 28d5d24617 | |||
| d97f6903d6 | |||
| 3bf84d96d9 | |||
| 8df643a2ab | |||
| 2d001c4fa1 | |||
| cbd6b57445 | |||
| dac684c08a | |||
| 772c29791a | |||
| 89a232ae14 | |||
| 4e4b8ddb77 | |||
| 6eaefa0bdd | |||
| 20a75bbbb7 | |||
| 5cc261dd3c | |||
| 6d958b6f65 | |||
| 8ddac4d7c7 | |||
| a321ad9dbe | |||
| 4dff66253c | |||
| 9a1e9f90bc | |||
| c54724919c | |||
| 139d1cdcf8 | |||
| 490c50a182 | |||
| af1e496eab | |||
| efea043549 | |||
| d4ee91f013 | |||
| d4561581ad | |||
| a17f167952 | |||
| 5beb068cde | |||
| a272bdc796 | |||
| 30a43089a0 | |||
| 416b32cbc8 | |||
| d203cece0e | |||
| 9f6f0f04c7 | |||
| a974c6d4cd | |||
| 34612acdcf | |||
| 9e23117f9c | |||
| b3996f1970 | |||
| e143017432 | |||
| c6c0a14ee0 | |||
| 9b8768dbdd | |||
| a3bfcc962d | |||
| ca4ed605a8 | |||
| d3e6d7442f | |||
| b558bc5334 | |||
| 204d7b5be6 | |||
| 7dccfec332 | |||
| 0b694bfd0b | |||
| dfb59d8a55 | |||
| 3cd191210c | |||
| 56a44ad421 | |||
| a12ee3c0da | |||
| a657c479be | |||
| bb7dabc73b | |||
| ab82c5fd88 | |||
| 78cfb19f69 | |||
| f2334082ee | |||
| 58a47cb52b | |||
| c7cb4674f5 | |||
| 523df21d83 | |||
| 82314076a9 | |||
| d04bf2e8f2 | |||
| a1c67b5154 | |||
| 3e343fe8b7 | |||
| e288c942ee | |||
| 7a1ccb0d53 | |||
| 89656c7e65 | |||
| 7f76198139 | |||
| 5ff813f9b7 | |||
| 69994e0c11 | |||
| aa959fbe92 | |||
| 948b7cda15 | |||
| 644ef040d0 | |||
| 33839d7244 | |||
| 48270cb9b4 | |||
| cd42760b68 | |||
| 1116da389e | |||
| 24d7ae4a2f | |||
| e598ef6e05 | |||
| 6601e73069 | |||
| 7f2a80552b | |||
| eceeb4aa3b | |||
| b5c7f374f3 | |||
| 9d08e2d297 | |||
| f2303ae2dc | |||
| 4d44fd47c3 | |||
| 88635cb6c3 | |||
| 1687fcc035 | |||
| 39e7937458 | |||
| 60ff2970f0 | |||
| 212cd026a3 | |||
| cf47f8fea9 | |||
| 4b45ffd841 | |||
| 69a57b77c9 | |||
| 5daba6034d | |||
| 4e5c19e932 | |||
| 5eb73baf5e | |||
| d819f31bdd | |||
| a97c453706 | |||
| 5ee955a713 | |||
| 57224f7304 | |||
| 270d145466 | |||
| c564ee6093 | |||
| caaa9ab23e | |||
| b6d2c6d28c | |||
| c36c8968d3 | |||
| b019af1851 | |||
| bcd32da2bc | |||
| 6f97a40372 | |||
| c56c7ddd03 | |||
| 9a0dd604c9 | |||
| a1dec176a1 | |||
| 67032d068d | |||
| 401c83945d | |||
| ed6d020edb | |||
| 8eb5600b1e | |||
| 9c4cd69106 | |||
| 64cbe0c960 | |||
| be70b217d9 | |||
| b4f5260dda | |||
| 83e446f99c | |||
| 767139cf0b | |||
| e3ac60111f | |||
| c694c11724 | |||
| b50765a151 | |||
| 590f77bdb4 | |||
| 09575e5312 | |||
| 1693825dd0 | |||
| 5a89056112 | |||
| 2ee51bb282 | |||
| ea7cffc1a3 | |||
| c20d1b82ae | |||
| 607781382f | |||
| 4e8c1e853b | |||
| 2c6869501e | |||
| 4509e1d1dc | |||
| 6b9d4941be | |||
| 308cd6b91d | |||
| 23b54de8bd | |||
| bd742aec9c | |||
| d2ab3071a6 | |||
| 1dd4c161f0 | |||
| 5e48dd45b2 | |||
| 601d6e7377 | |||
| 3934b40282 | |||
| d43be271e6 | |||
| d3c9963051 | |||
| 92a3bdf4e9 | |||
| fa2aafe41f | |||
| bc5da2532c | |||
| a7be1acbd8 | |||
| fbe2ae03ff | |||
| d1a492f953 | |||
| ac6ea8bdcc | |||
| 352807c2d7 | |||
| 70d79c1890 | |||
| fb1fde26ce | |||
| dc4cf8496a | |||
| 3aa046bfa7 | |||
| ed79d21e1b | |||
| 9454ff677b | |||
| 743d340bca | |||
| a5c7b8f609 | |||
| 3d1398ab97 | |||
| 9365d1adc6 | |||
| ddd2a96ac5 | |||
| 7a680ce4ff | |||
| bf8ff51234 | |||
| 2ac4456f4e | |||
| 7891f52bd4 | |||
| baa4a8a461 | |||
| 34daffcdf4 | |||
| 21baea27a8 | |||
| e1d3714445 | |||
| 8b7e0a0d78 | |||
| a1cc427c9c | |||
| 391aa30da2 | |||
| 5dc675040d | |||
| 1258eb6533 | |||
| f92f76b48a | |||
| 83abfc9ca6 | |||
| 61b6d4dc47 | |||
| b42d6677cc | |||
| e8c644a600 | |||
| aa041e39eb | |||
| 9f6a73b290 | |||
| 4d38bd1c62 | |||
| 138262114d | |||
| 4073c9e638 | |||
| f1b4877a98 | |||
| c39c92d0d7 | |||
| 90fc48d959 | |||
| 7f10a53105 | |||
| 7ae1b7a765 | |||
| 22a43a0463 | |||
| dea399398a | |||
| 7434dd9458 | |||
| 723abca34a | |||
| 88e532dbc4 | |||
| 32b28327e9 | |||
| c5ad451c39 | |||
| 44bfceeb0f | |||
| c30131275f | |||
| 37eb63837b | |||
| 4ada47e3b0 | |||
| e5c55c9ab3 | |||
| 547b3df7b4 | |||
| 4100f2600c | |||
| 56218dfcb2 | |||
| a9574e8fd6 | |||
| 0d2a75db0a | |||
| c6269d6bbc | |||
| eb9d066844 | |||
| c1204a5301 | |||
| cc5ac65909 | |||
| 9ddc48e3d7 | |||
| 029f3030a7 | |||
| 4a39d7c67a | |||
| b7a6706591 | |||
| ddb031f091 | |||
| e906d25776 | |||
| 27d7449459 | |||
| 8c59a8d405 | |||
| 5d8905c997 | |||
| 517f4ce121 | |||
| 6809bbd3d5 | |||
| ab555d05e1 | |||
| f7bc538fdf | |||
| 2de66ad5db | |||
| 30e16b6213 | |||
| 92b50ca7ae | |||
| 9ee36df979 | |||
| 46d1c14e1a | |||
| 61895011fb | |||
| 32d43034bd | |||
| dfc6cdc127 | |||
| 16e93f9e18 | |||
| 7395b1a4eb | |||
| fa98557225 | |||
| 894606b62e | |||
| f0a6a0026a | |||
| 070e0c93be | |||
| 2b27b733e5 | |||
| 0355c2b642 | |||
| 3bad19fb56 | |||
| 0f84d51a48 | |||
| 2e8572d9c5 | |||
| df53d5d966 | |||
| 23838959ca | |||
| 6dbb836a01 | |||
| 3426afe5a8 | |||
| 4bbf923eb6 | |||
| e2c3480194 | |||
| 73159076f6 | |||
| 90d040573d | |||
| 6904ad02a2 | |||
| 155481a442 | |||
| 2f31bfc5fe | |||
| 8d0c88dc74 | |||
| 07256fd833 | |||
| 776cd43a58 | |||
| acb5309aab | |||
| c68f81db3c | |||
| ac8e341b37 | |||
| 36122b3966 | |||
| 79bcf472f0 | |||
| 55d86da846 | |||
| e4f8c1ba3f | |||
| c36236b7dc | |||
| 63994333d0 | |||
| da4c7d8934 | |||
| 186721eca0 | |||
| f53d939c86 | |||
| 23e6909708 | |||
| cf421fe1c1 | |||
| 4d80e806e4 | |||
| 60a7b7f7ff | |||
| 90263eab06 | |||
| 9d8f251fc4 | |||
| 2b4986571c | |||
| 890d13bd52 | |||
| e698e71137 | |||
| d064a5530a | |||
| ab4fbf6c19 | |||
| 728afa8361 | |||
| b77019c16e | |||
| 6703448b80 | |||
| 776ba19a1f | |||
| 1f499e0d44 | |||
| 0a6eb61103 | |||
| 32a2eed5ec | |||
| 40a70d39d0 | |||
| 5697054e98 | |||
| def5969e1c | |||
| 78a418630d | |||
| 6d76e7b2d4 | |||
| f052c8b44c | |||
| 0e6991d56d | |||
| 06eab5f8a4 | |||
| 4a481e79c4 | |||
| ee4abbcbaa | |||
| dcc82d742f | |||
| 19cb2089d7 | |||
| 04923b06b0 | |||
| e16755d491 | |||
| 742b0769a4 | |||
| df68dca9dc | |||
| 4a5bf78d58 | |||
| 7947237489 | |||
| 1115205164 | |||
| d5d01136c4 | |||
| 3d47277614 | |||
| b937bea04f | |||
| fff14632bc | |||
| 9bdf1a620f | |||
| 60099aa989 | |||
| f3976e5dd8 | |||
| d7d6893304 | |||
| 99549ce805 | |||
| 7eb15fe04d | |||
| e2019a13ab | |||
| 4b7a06761a | |||
| b96e2fb52c | |||
| 8f4a1f5801 | |||
| 891bec9cdb | |||
| c5252ea583 | |||
| 82d553c180 | |||
| 71e34355b9 | |||
| 2bad8c72e4 | |||
| 6134ca01ac | |||
| be8193ebff | |||
| 430ee46645 | |||
| 76fbbf29e8 | |||
| 3108159d95 | |||
| f282a1ead7 | |||
| 324bc4957d | |||
| c3b5c4dfae | |||
| 4ab5d97e86 | |||
| b4696ef11e | |||
| 294ffb72a4 | |||
| 8c534d29d3 | |||
| d6cb262f9d | |||
| 5211e2ae20 | |||
| 90832fd1ad | |||
| 889cbc69e1 | |||
| 15948370d4 | |||
| 63c5177b37 | |||
| 4fbfaf6b9f | |||
| 9e68497b63 | |||
| 0b9e13bf1e | |||
| 485d343e0f | |||
| 07f0e8a3be | |||
| cc5afb1cd8 | |||
| c69f1c0890 | |||
| a8733bdedf | |||
| 4222e4eb51 | |||
| 5db4441f5c | |||
| 2bcfe97211 | |||
| 4e74c97c84 | |||
| 71a46c9bd6 | |||
| 1a7c7fdebf | |||
| 65ff3d414a | |||
| 9fa38b70c8 | |||
| 470172f53f | |||
| 81261d9e36 | |||
| 3ab2e20119 | |||
| b773d576ea | |||
| 23feb64b5a | |||
| 87fe9d9d3d | |||
| b1ef3f51cb | |||
| e1b6488f8e | |||
| a472dede2b | |||
| 263cc3f7a1 | |||
| 598612d4bf | |||
| a07d83e583 | |||
| d355812433 | |||
| 1afc14f5ab | |||
| 8947b667ae | |||
| 6b41796d44 | |||
| 6efe8eb55b | |||
| 4c8f8918e8 | |||
| 4cb5bb1855 | |||
| eb007e025a | |||
| 18aefa9dee | |||
| 2ec540bd36 | |||
| 1374ec408a | |||
| 8f8fed2b79 | |||
| a1e6f01fe9 | |||
| d7496f22e5 | |||
| 7de25a1c37 | |||
| 78da89340c | |||
| 60606115fe | |||
| 57b49fc31c | |||
| 6e90c8f6e6 | |||
| a7ff2595a5 | |||
| 1edea6abef | |||
| a3bd58bda6 | |||
| 3339d1999f | |||
| df3e8ec0f3 | |||
| 2dbec867d9 | |||
| 3fc651d659 | |||
| b91d23023d | |||
| cc234c60b8 | |||
| f1883c8004 | |||
| 79f6ddc8ee | |||
| 89f439a18d | |||
| 79eb5bfad9 | |||
| 3a36b7dafd | |||
| 1fe2fd9891 | |||
| 5fdb999ece | |||
| 5a38d9c2b6 | |||
| b1c7dc6cbb | |||
| b21b2ac41c | |||
| 1396c597ef | |||
| 46af72ee4e | |||
| e3e8f553c8 | |||
| 549928d3d1 | |||
| abefec9628 | |||
| b483eeded4 | |||
| 3ff516180d | |||
| c0a99d6b52 | |||
| cba090f8eb | |||
| 0d6baa1081 | |||
| 85a208526b | |||
| cd266a6bef | |||
| 3c81257325 | |||
| 24bb45ab97 | |||
| d5ef7f3204 | |||
| b0f5fe7e25 | |||
| c675bb7252 | |||
| 143a091f45 | |||
| 8fefc11b4d | |||
| 9188fb03f0 | |||
| 607eb6ca03 | |||
| 44ef39e419 | |||
| 0ea9c0647f | |||
| 884d2a9552 | |||
| 14e43192e6 | |||
| b9f4dc1e9d | |||
| b082fb6692 | |||
| 0c1b2a54e7 | |||
| 85e16ecd51 | |||
| e40c532354 | |||
| 55b324d8d6 | |||
| 3152d9eadd | |||
| e70f1408aa | |||
| a384245368 | |||
| 9334b8df47 | |||
| e0bc2ae86f | |||
| 2f019bb033 | |||
| 75c83236ff | |||
| 4ddee4ac40 | |||
| 6b693e2644 | |||
| 72cf921a4b | |||
| 32882f81e7 | |||
| 36f5099932 | |||
| 4dc3c30354 | |||
| 397cc1754a | |||
| ca44ee94a4 | |||
| 3ae7a77032 | |||
| 881c789a75 | |||
| fea0189479 | |||
| 6ca0e19819 | |||
| bf6964ee62 | |||
| 9ac2ea2a52 | |||
| 62a58fa23b | |||
| 0ce20c1edd | |||
| d31d99b40f | |||
| 3527c357cc | |||
| 2b5254e68f | |||
| 6f3323c195 | |||
| 5af85bfe7d | |||
| 20adad3c6b | |||
| ca8eae4064 | |||
| 7077faaf4a | |||
| c67ca500db | |||
| 0081e7b731 | |||
| 4e6483d3ed | |||
| 0ddf0002c4 | |||
| ad0daf33b9 | |||
| ab30df10ff | |||
| a6cb75c481 | |||
| 0b60c6a939 | |||
| 51ce570eb3 | |||
| 925d48640d | |||
| 028b4e7b79 | |||
| 625a46a2c2 | |||
| ebc1e27c22 | |||
| 357e85d358 | |||
| 75cfcb83aa | |||
| 63a4d1ad33 | |||
| dcbb09bbd7 | |||
| 58eac619ea | |||
| f04d6f37e5 | |||
| 469069b471 | |||
| 9bca5912d9 | |||
| 23756ba1c7 | |||
| 07227887f6 | |||
| 13d3b103f1 | |||
| 4bdfd0e115 | |||
| 786b20708e | |||
| 0e957cad84 | |||
| 85c728f313 | |||
| ba3fb8cd66 | |||
| d9fb7dc754 | |||
| 2249dad9d7 | |||
| 5c4fa630ae | |||
| ede74ad24e | |||
| 27542a8f91 | |||
| 5dc07b94aa | |||
| d7acf721ae | |||
| eff5232828 | |||
| 3eb29b1cdb | |||
| c9961f63b4 | |||
| 09e843a800 | |||
| 77b79dbd95 | |||
| dafc6c5136 | |||
| c790147a5c | |||
| 80c39c5ef3 | |||
| 9a3e84d84c | |||
| 643960c829 | |||
| 1737018325 | |||
| 484d5ba76e | |||
| 798685d0b8 | |||
| cb7654ae90 | |||
| 00c394345a | |||
| dffcb62fa1 | |||
| 8c668b72b7 | |||
| b54ecd4da0 | |||
| 87a7e3501b | |||
| daefec3013 | |||
| 183a9742c4 | |||
| 04b83f8176 | |||
| 335ab3f064 | |||
| 7dd493da35 | |||
| 560bd6da92 | |||
| a5824ccc5f | |||
| 830a7964a4 | |||
| b1359c3277 | |||
| 0ba8f5cc5a | |||
| 6fb9e2c38e | |||
| eebc2ab8be | |||
| b65b3151ee | |||
| 1d24b7985b | |||
| 526bb2c650 | |||
| c450c0ddb8 | |||
| 13a0f49f5f | |||
| 199eefafa1 | |||
| c5b58f9ecc | |||
| 6b68fe4de6 | |||
| 3461bbfdb3 | |||
| 51f6927076 | |||
| 1d88cf443f | |||
| 7b6c0c3a40 | |||
| fdb0651bf4 | |||
| c39d484611 | |||
| c42996429f | |||
| a091baf5a6 | |||
| 00a17cd55e | |||
| 643d44af22 | |||
| b934f43db0 | |||
| f39afe5a65 | |||
| 7612ee6b08 | |||
| 2ed2b0101a | |||
| 5ca9d31964 | |||
| 2fcd8cd261 | |||
| 0ffa47a2c6 | |||
| e203d4dee3 | |||
| b47d773e13 | |||
| a8d0a4a95d | |||
| 3fb0804cef | |||
| 6811ebcd52 | |||
| 4fe7bfb851 | |||
| fb60985d03 | |||
| 8f575923cf | |||
| 0ecfd02649 | |||
| 420aaf4f61 | |||
| 0c35f213e1 | |||
| f68813af13 | |||
| 37a90d0ce9 | |||
| 02f1291e8f | |||
| 92e4f6b5d9 | |||
| 7b7738fbcc | |||
| 31197604a3 | |||
| e33b1b6c90 | |||
| 30520297e8 | |||
| 78ca1d1335 | |||
| 6159ee8c2c | |||
| 5cd5392958 | |||
| 0dcdfc5d14 | |||
| d0e068f1c0 | |||
| f42a2d7457 | |||
| d29619b67c | |||
| f5235cb835 | |||
| ee830e0cb4 | |||
| 0cd3be003d | |||
| c93e35ec77 | |||
| 9538a76232 | |||
| 05876bb124 | |||
| 8bcd5a6d2a | |||
| a36afbcb25 | |||
| ebd8d085cf | |||
| 505148b024 | |||
| 3eefeec4ce | |||
| b61419c1ce | |||
| f590fcffbc | |||
| e87e924ac2 | |||
| 90f261bab6 | |||
| f7dfb09a4d | |||
| 3135917127 | |||
| 52afa3d36d | |||
| 242aa60e04 | |||
| 7a3c2c27ff | |||
| 5d124360c2 | |||
| 365d7448d5 | |||
| 9a0102c723 | |||
| 2f77f2cb2b | |||
| 528e3a2106 | |||
| 032a664d4c | |||
| aac1864c9b | |||
| e3477f3306 | |||
| 6620a4f87b | |||
| c0e9dff5bf | |||
| 2d961c435a | |||
| 7c95f03166 | |||
| 31e5c13b50 | |||
| 4a9fe4f981 | |||
| 4fcc5587ee | |||
| 6ca49a20ce | |||
| 28f293fdc1 | |||
| b3e7619adc | |||
| 6e56d56137 | |||
| 2528f6a07b | |||
| 423d07c919 | |||
| cc608de4bf | |||
| f999a68608 | |||
| db78a9f18f | |||
| 816039f48e | |||
| ae240bae6d | |||
| 9e30c69e6d | |||
| 43c7de9049 | |||
| 7e51c5db81 | |||
| 0ee3c45e7b | |||
| 981e69929c | |||
| 1eae5d12fc | |||
| 8863208333 | |||
| 5f38a74a72 | |||
| fe15dacb1f | |||
| c2d44cf2f2 | |||
| 7f1bdb6f34 | |||
| 7cdfaa93ec | |||
| 59ccc70303 | |||
| f1584b722d | |||
| b0305e12d2 | |||
| 4d8c5a86a4 | |||
| 58f76b5c99 | |||
| 7c4ee632cf | |||
| b6b0f716eb | |||
| bd0e04ed15 | |||
| 8599981d44 | |||
| 6fc6e95c67 | |||
| 43b585bde8 | |||
| 710f89291f | |||
| 5f835aa009 | |||
| d5ca543719 | |||
| 4c6249eb9e | |||
| 016900bad8 | |||
| 2e8ae33761 | |||
| 0d325060da | |||
| 1a6e98e18f | |||
| 97e34595f6 | |||
| a179d5234b | |||
| 64c6121fdb | |||
| 08d8954a85 | |||
| 4f20955d0d | |||
| 3a703c8bcf | |||
| ccbffa086b | |||
| 07ee4be840 | |||
| 4cc9b2d312 | |||
| 24dddae1d1 | |||
| ad0165d085 | |||
| 39dc38c5d1 | |||
| 046ce19dbb | |||
| 33263f5a93 | |||
| 8ef8e76300 | |||
| 73cfdae9e7 | |||
| 54a3e41281 | |||
| d59ba6da84 | |||
| 1b28b06934 | |||
| ff3e69a56c | |||
| 6b975a5fb4 | |||
| 3a02b15124 | |||
| 5f73d81935 | |||
| 002b5c0f6f | |||
| 8086842570 | |||
| 51f2d5a664 | |||
| db63ad1cf4 | |||
| b74b76de75 | |||
| a1b1498106 | |||
| 1158851ea7 | |||
| e1ab9e959e | |||
| 2bbac3ae9d | |||
| e889b1d5e5 | |||
| 233bf856f4 | |||
| bca843e06c | |||
| 30a79a1278 | |||
| 0f92dee2c4 | |||
| f04efede15 | |||
| f0dfdf6720 | |||
| e26d731382 | |||
| d684d3e559 | |||
| 47c54cb998 | |||
| 592cb2b3ec | |||
| f5a7871a2e | |||
| ec411fa0db | |||
| 5da79cd5ca | |||
| a850a9bb83 | |||
| 13c971b171 | |||
| 1cee7e43ed | |||
| 5e81c63d6e | |||
| 479b7a3f94 | |||
| f7cfee77c9 | |||
| 65a8126a13 | |||
| a39bc102d5 | |||
| 81d930c4d2 | |||
| 6839623061 | |||
| 7de2809d42 | |||
| 98ec6b6886 | |||
| 04827f00cc | |||
| 660bfc6578 | |||
| 1152cd5537 | |||
| 17456482d6 | |||
| a0431e1912 | |||
| f30e8497b2 | |||
| 06495bc45d | |||
| 26067916b3 | |||
| c36ee4852b | |||
| 2cb992ad44 | |||
| ee5aac8008 | |||
| 083b7be6c0 | |||
| e24854558f | |||
| e4314cf426 | |||
| 4106e4e45c | |||
| 05f143db2b | |||
| 64aeaeeeea | |||
| 61db37ab0d | |||
| f9c4d921e7 | |||
| ca099df573 | |||
| 28b584b8bc | |||
| 70449e694d | |||
| 8395ea552d | |||
| dc66452633 | |||
| 53ce44ac91 | |||
| c7c3243bbc | |||
| 8bdd77d33d | |||
| acd7d0db3a | |||
| 2bfadb8a3c | |||
| 0912e4af7b | |||
| 5aa5c48018 | |||
| 8cdd998f79 | |||
| 050d4d6b25 | |||
| 366cd11238 | |||
| 58d6443331 | |||
| 101b8afb56 | |||
| 5df5c47945 | |||
| a04740ba86 | |||
| 425ad93ac5 | |||
| 1b397cd780 | |||
| 120316bae0 | |||
| 7571ff007f | |||
| 7afd7da2b4 | |||
| 8a44144c20 | |||
| ee82c70582 | |||
| c87e8e606b | |||
| 37a50dd953 | |||
| a2669a3084 | |||
| 77da22f4dd | |||
| 7830ffe202 | |||
| 1c9e20d59f | |||
| 320edac286 | |||
| d49878371d | |||
| d2575a5d9b | |||
| ea6cf72580 | |||
| 2118155b37 | |||
| ba4f5bb71f | |||
| d5a74a5a8b | |||
| 23be1df360 | |||
| b5c1a1da4c | |||
| c11e784f51 | |||
| 06f51c8f9c | |||
| 181bcbbda6 | |||
| d008ead6a4 | |||
| 75924be958 | |||
| b1a6e3f8a2 | |||
| 06712a6041 | |||
| 62b16339a9 | |||
| 9a2f1a36ba | |||
| 95cc4d3a73 | |||
| 497eeeb2e0 | |||
| 4be21ca249 | |||
| e8598e214e | |||
| 54b1d65e3c | |||
| f7648496d3 | |||
| 59a57c7197 | |||
| 5659b26827 | |||
| ee4443aaf0 | |||
| 839dcad358 | |||
| d67933ab49 | |||
| 0eb3f6b952 | |||
| 68b0f80fce | |||
| 93489529a3 | |||
| 511be74e74 | |||
| bdee067803 | |||
| 32156cace3 | |||
| 30688114be | |||
| 34088bcc17 | |||
| 07835766cc | |||
| 251851ec6a | |||
| 049a669186 | |||
| d29f13bae9 | |||
| c758355df9 | |||
| 79d97a83af | |||
| 85bd47c240 | |||
| 473ead9616 | |||
| cf2850933c | |||
| ff2564c57a | |||
| 91d3848246 | |||
| c031f0b45e | |||
| fdbb9568ae | |||
| d817883459 | |||
| 12255979ac | |||
| 366b61850b | |||
| 89be6bd183 | |||
| e120331a2c | |||
| cb8a212d96 | |||
| 7aec431ac5 | |||
| d19681dea1 | |||
| bf2299daf8 | |||
| 164930d0dd | |||
| 387dbac809 | |||
| 3b661e5a99 | |||
| 90c1c0e655 | |||
| 21d8e7695b | |||
| 1acc452cfe | |||
| 1375e1feee | |||
| 2187adf59a | |||
| 0dcb315d9d | |||
| 327ccbd0c9 | |||
| f571d400e6 | |||
| 293aa52335 | |||
| ca178ae9a7 | |||
| d0c810e418 | |||
| d496d2caeb | |||
| e70b75c350 | |||
| a50befeda5 | |||
| e2616e8039 | |||
| 904266debe | |||
| 72d5783795 | |||
| d699fb1473 | |||
| fab1a6c33a | |||
| be73c30194 | |||
| 451646fe4f | |||
| decc919991 | |||
| e0b4005921 | |||
| 3ef36e7534 | |||
| 1949e1e1e9 | |||
| 3358382358 | |||
| 3eca3ecd75 | |||
| 140c6b91b0 | |||
| a5315ec240 | |||
| 93f1656e0b | |||
| f1d006c236 | |||
| b0b5a96694 | |||
| 7dbe9a85f4 | |||
| d2c39528d5 | |||
| 0420543c94 | |||
| aae0db902b | |||
| 88dae7cef7 | |||
| e5cb17e934 | |||
| 9d609805f2 | |||
| e2b9ca8254 | |||
| e16a2fe8af | |||
| 22d61a533d | |||
| af408bb45f | |||
| 24bfbc06f0 | |||
| 5eb9f353b5 | |||
| 473ce15f47 | |||
| eb9cfbaed6 | |||
| faeb037ff9 | |||
| 07602f697d | |||
| 11abb0fdb1 | |||
| deeb2fa543 | |||
| ef8d5ff11e | |||
| 91f3e07b83 | |||
| c29bdbdacb | |||
| a20d104d2f | |||
| a61dd8ac17 | |||
| 7ee9a690ea | |||
| 5ba94c6c41 | |||
| 9fa855c837 | |||
| 9251007574 | |||
| cc73b984cb | |||
| 548ef97c32 | |||
| ed8a486726 | |||
| 1ab0911fc8 | |||
| bdbaea7294 | |||
| 5cfd1f6fb2 | |||
| 5eda67381f | |||
| 2c8b8bfaf2 | |||
| 8f3159751a | |||
| 4b05e55b29 | |||
| 3d3c13fcd0 | |||
| 88e1d8a8cf | |||
| e007db34e2 | |||
| f9f06d2c02 | |||
| 234f7d00c8 | |||
| 9924553da5 | |||
| df38d7e3ed | |||
| 44dd061619 | |||
| 7603a932b1 | |||
| 138e7acc13 | |||
| e863d3e7e5 | |||
| c8e401f5ed | |||
| 3ba20a8e28 | |||
| ebae63752f | |||
| 8bc73901cf | |||
| b4f70d9244 | |||
| 21e9f2bba3 | |||
| 881f4e3d6a | |||
| b141945add |
@@ -4235,6 +4235,33 @@
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "smarsching",
|
||||
"name": "Sebastian Marsching",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/2880129?v=4",
|
||||
"profile": "http://sebastian.marsching.com/",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "mohammad-ahmadi1",
|
||||
"name": "Mo",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/40658372?v=4",
|
||||
"profile": "https://github.com/mohammad-ahmadi1",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "MarvelousAnything",
|
||||
"name": "Owen V. Hayes",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/20994684?v=4",
|
||||
"profile": "https://github.com/MarvelousAnything",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -137,6 +137,8 @@ PUBLIC_AWS_ACCESS_KEY_ID=null
|
||||
PUBLIC_AWS_DEFAULT_REGION=null
|
||||
PUBLIC_AWS_BUCKET=null
|
||||
PUBLIC_AWS_URL=null
|
||||
PUBLIC_AWS_ENDPOINT=null
|
||||
PUBLIC_AWS_PATH_STYLE=null
|
||||
PUBLIC_AWS_BUCKET_ROOT=null
|
||||
|
||||
# --------------------------------------------
|
||||
@@ -147,6 +149,8 @@ PRIVATE_AWS_SECRET_ACCESS_KEY=null
|
||||
PRIVATE_AWS_DEFAULT_REGION=null
|
||||
PRIVATE_AWS_BUCKET=null
|
||||
PRIVATE_AWS_URL=null
|
||||
PRIVATE_AWS_ENDPOINT=null
|
||||
PRIVATE_AWS_PATH_STYLE=null
|
||||
PRIVATE_AWS_BUCKET_ROOT=null
|
||||
|
||||
# --------------------------------------------
|
||||
|
||||
@@ -144,6 +144,8 @@ PUBLIC_AWS_ACCESS_KEY_ID=null
|
||||
PUBLIC_AWS_DEFAULT_REGION=null
|
||||
PUBLIC_AWS_BUCKET=null
|
||||
PUBLIC_AWS_URL=null
|
||||
PUBLIC_AWS_ENDPOINT=null
|
||||
PUBLIC_AWS_PATH_STYLE=null
|
||||
PUBLIC_AWS_BUCKET_ROOT=null
|
||||
|
||||
# --------------------------------------------
|
||||
@@ -154,6 +156,8 @@ PRIVATE_AWS_SECRET_ACCESS_KEY=null
|
||||
PRIVATE_AWS_DEFAULT_REGION=null
|
||||
PRIVATE_AWS_BUCKET=null
|
||||
PRIVATE_AWS_URL=null
|
||||
PRIVATE_AWS_ENDPOINT=null
|
||||
PRIVATE_AWS_PATH_STYLE=null
|
||||
PRIVATE_AWS_BUCKET_ROOT=null
|
||||
|
||||
# --------------------------------------------
|
||||
|
||||
+6
-1
@@ -143,6 +143,8 @@ PUBLIC_AWS_ACCESS_KEY_ID=null
|
||||
PUBLIC_AWS_DEFAULT_REGION=null
|
||||
PUBLIC_AWS_BUCKET=null
|
||||
PUBLIC_AWS_URL=null
|
||||
PUBLIC_AWS_ENDPOINT=null
|
||||
PUBLIC_AWS_PATH_STYLE=null
|
||||
PUBLIC_AWS_BUCKET_ROOT=null
|
||||
|
||||
# --------------------------------------------
|
||||
@@ -153,6 +155,8 @@ PRIVATE_AWS_SECRET_ACCESS_KEY=null
|
||||
PRIVATE_AWS_DEFAULT_REGION=null
|
||||
PRIVATE_AWS_BUCKET=null
|
||||
PRIVATE_AWS_URL=null
|
||||
PRIVATE_AWS_ENDPOINT=null
|
||||
PRIVATE_AWS_PATH_STYLE=null
|
||||
PRIVATE_AWS_BUCKET_ROOT=null
|
||||
|
||||
# --------------------------------------------
|
||||
@@ -190,13 +194,14 @@ APP_ALLOW_INSECURE_HOSTS=false
|
||||
GOOGLE_MAPS_API=
|
||||
LDAP_MEM_LIM=500M
|
||||
LDAP_TIME_LIM=600
|
||||
BACKUP_TIME_LIMIT=600
|
||||
IMPORT_TIME_LIMIT=600
|
||||
IMPORT_MEMORY_LIMIT=500M
|
||||
REPORT_TIME_LIMIT=12000
|
||||
API_THROTTLE_PER_MINUTE=120
|
||||
CSV_ESCAPE_FORMULAS=true
|
||||
LIVEWIRE_URL_PREFIX=null
|
||||
|
||||
MAX_UNPAGINATED=5000
|
||||
|
||||
# --------------------------------------------
|
||||
# OPTIONAL: SAML SETTINGS
|
||||
|
||||
@@ -23,7 +23,23 @@ body:
|
||||
attributes:
|
||||
label: Snipe-IT Version
|
||||
description: What version of Snipe-IT are you seeing this issue on? You can find the version number in the footer of any page in Snipe-IT.
|
||||
placeholder: ex. v8.3.1 - build 19577 (master)
|
||||
placeholder: ex. v8.3.2 - build 19577 (master)
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: php-version
|
||||
attributes:
|
||||
label: PHP Version
|
||||
description: What version of PHP are you running? You can find the version of PHP your webserver is running in the `Admin Settings` section in the footer, and the cli version by running `php -v` via command line .
|
||||
placeholder: ex. v8.3.1 (web), PHP 8.4.12 (cli)
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: composer-version
|
||||
attributes:
|
||||
label: Composer Version
|
||||
description: What version of composer are you running? You can find the version number by running `composer --version`.
|
||||
placeholder: ex. 2.8.10
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
@@ -48,6 +64,16 @@ body:
|
||||
- Not sure
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: upgrade-or-fresh
|
||||
attributes:
|
||||
label: Is this a fresh install or an upgrade?
|
||||
options:
|
||||
- Fresh install
|
||||
- Upgrade
|
||||
- NA
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: what-happened
|
||||
attributes:
|
||||
@@ -67,6 +93,38 @@ body:
|
||||
- Safari
|
||||
- Microsoft Edge
|
||||
- Other
|
||||
- type: dropdown
|
||||
id: on-demo
|
||||
attributes:
|
||||
label: Can you reproduce this on the public demo?
|
||||
description: You can check this at https://demo.snipeitapp.com.
|
||||
options:
|
||||
- 'Yes'
|
||||
- 'No'
|
||||
- N/A
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: fmcs
|
||||
attributes:
|
||||
label: Do you have full multiple company support enabled?
|
||||
description: You can check this in your Snipe-IT installation at `Admin Settings > General Settings > Scoping`.
|
||||
options:
|
||||
- 'Yes'
|
||||
- 'No'
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: fmcs-location
|
||||
attributes:
|
||||
label: If you have full multiple company support enabled, do you have location scoping to company enabled?
|
||||
description: You can check this in your Snipe-IT installation at `Admin Settings > General Settings > Scoping`.
|
||||
options:
|
||||
- 'Yes'
|
||||
- 'No'
|
||||
- I do not have full multiple company support enabled
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: server-logs
|
||||
attributes:
|
||||
|
||||
@@ -26,14 +26,14 @@ jobs:
|
||||
language: [ 'javascript' ]
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v3
|
||||
uses: github/codeql-action/init@v4
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@v3
|
||||
uses: github/codeql-action/autobuild@v4
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v3
|
||||
uses: github/codeql-action/analyze@v4
|
||||
|
||||
@@ -32,7 +32,7 @@ jobs:
|
||||
steps:
|
||||
# Checkout the repository to the GitHub Actions runner
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
|
||||
# Execute Codacy Analysis CLI and generate a SARIF output with the security issues identified during the analysis
|
||||
- name: Run Codacy Analysis CLI
|
||||
@@ -52,6 +52,6 @@ jobs:
|
||||
|
||||
# Upload the SARIF file generated in the previous step
|
||||
- name: Upload SARIF results file
|
||||
uses: github/codeql-action/upload-sarif@v3
|
||||
uses: github/codeql-action/upload-sarif@v4
|
||||
with:
|
||||
sarif_file: results.sarif
|
||||
|
||||
@@ -9,7 +9,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Crowdin push
|
||||
uses: crowdin/github-action@v2
|
||||
|
||||
@@ -42,7 +42,7 @@ jobs:
|
||||
steps:
|
||||
# https://github.com/actions/checkout
|
||||
- name: Checkout codebase
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
|
||||
# https://github.com/docker/setup-buildx-action
|
||||
- name: Setup Docker Buildx
|
||||
|
||||
@@ -42,7 +42,7 @@ jobs:
|
||||
steps:
|
||||
# https://github.com/actions/checkout
|
||||
- name: Checkout codebase
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
|
||||
# https://github.com/docker/setup-buildx-action
|
||||
- name: Setup Docker Buildx
|
||||
|
||||
@@ -11,7 +11,7 @@ jobs:
|
||||
dockerHubDescription:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Docker Hub Description
|
||||
uses: grokability/dockerhub-description@7ea9d275c7cdbe2b676a093a0308c50665e3b8b4
|
||||
|
||||
@@ -37,7 +37,7 @@ jobs:
|
||||
php-version: "${{ matrix.php-version }}"
|
||||
coverage: none
|
||||
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Get Composer Cache Directory
|
||||
id: composer-cache
|
||||
@@ -82,7 +82,7 @@ jobs:
|
||||
|
||||
- name: Upload Laravel logs as artifacts
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v5
|
||||
with:
|
||||
name: laravel-logs-php-${{ matrix.php-version }}-run-${{ github.run_attempt }}
|
||||
path: |
|
||||
|
||||
@@ -34,7 +34,7 @@ jobs:
|
||||
php-version: "${{ matrix.php-version }}"
|
||||
coverage: none
|
||||
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Get Composer Cache Directory
|
||||
id: composer-cache
|
||||
@@ -81,7 +81,7 @@ jobs:
|
||||
|
||||
- name: Upload Laravel logs as artifacts
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v5
|
||||
with:
|
||||
name: laravel-logs-php-${{ matrix.php-version }}-run-${{ github.run_attempt }}
|
||||
path: |
|
||||
|
||||
@@ -25,7 +25,7 @@ jobs:
|
||||
php-version: "${{ matrix.php-version }}"
|
||||
coverage: none
|
||||
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Get Composer Cache Directory
|
||||
id: composer-cache
|
||||
@@ -67,7 +67,7 @@ jobs:
|
||||
|
||||
- name: Upload Laravel logs as artifacts
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v5
|
||||
with:
|
||||
name: laravel-logs-php-${{ matrix.php-version }}-run-${{ github.run_attempt }}
|
||||
path: |
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
# GENERATED. YOU SHOULDN'T MODIFY OR DELETE THIS FILE.
|
||||
# Scribe uses this file to know when you change something manually in your docs.
|
||||
.scribe/intro.md=f325b28dd095cc9f79495c3014b20f70
|
||||
.scribe/auth.md=a1780016c25c90a3c1e981b22cfb10e6
|
||||
@@ -1,7 +0,0 @@
|
||||
# Authenticating requests
|
||||
|
||||
To authenticate requests, include an **`Authorization`** header with the value **`"Bearer your-token"`**.
|
||||
|
||||
All authenticated endpoints are marked with a `requires authentication` badge in the documentation below.
|
||||
|
||||
If your account has API access enabled, you can generate a token by clicking in the top right account menu and clicking <b>API tokens</b>.
|
||||
@@ -1,329 +0,0 @@
|
||||
name: Account
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/account/requests
|
||||
metadata:
|
||||
groupName: Account
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Display Requested Assets'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=qIWm6chVMaJXUcKG9E8EHhnb7F9wQT14AjEraiFE; expires=Sat, 18 Oct 2025 20:42:51 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/account/eulas
|
||||
metadata:
|
||||
groupName: Account
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Display Accepted EULAs'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=nhItaWioeRLO0dKBgjno1X73ttHn50uXRQ7L7BAc; expires=Sat, 18 Oct 2025 20:42:51 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/account/request/{asset_id}'
|
||||
metadata:
|
||||
groupName: Account
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Store Asset Request'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
asset_id:
|
||||
name: asset_id
|
||||
description: 'The ID of the asset.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
asset_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/account/request/{asset_id}/cancel'
|
||||
metadata:
|
||||
groupName: Account
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Cancel Asset Request'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
asset_id:
|
||||
name: asset_id
|
||||
description: 'The ID of the asset.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
asset_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/account/personal-access-tokens
|
||||
metadata:
|
||||
groupName: Account
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create API token'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/account/personal-access-tokens
|
||||
metadata:
|
||||
groupName: Account
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show API tokens'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=yUjH3zpUXM18qZVCvvVEp1y5zfNNok8NctCrwGof; expires=Sat, 18 Oct 2025 20:42:51 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/account/personal-access-tokens/{tokenId}'
|
||||
metadata:
|
||||
groupName: Account
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete API token'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
tokenId:
|
||||
name: tokenId
|
||||
description: ''
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
tokenId: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,636 +0,0 @@
|
||||
name: Accessories
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/accessories/{accessory}/checkedout'
|
||||
metadata:
|
||||
groupName: Accessories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Accessory Checkouts'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
accessory:
|
||||
name: accessory
|
||||
description: 'The accessory.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
accessory: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=QwqPH3txF8T3F17zuocUxlzlAourAOPvfWbLeuj9; expires=Sat, 18 Oct 2025 20:42:51 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/accessories/{accessory_id}/checkout'
|
||||
metadata:
|
||||
groupName: Accessories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Checkout Accessory'
|
||||
description: |-
|
||||
If Slack is enabled and/or asset acceptance is enabled, it will also
|
||||
trigger a Slack message and send an email.
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
accessory_id:
|
||||
name: accessory_id
|
||||
description: 'The ID of the accessory.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
accessory_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/accessories/{accessory}/checkin'
|
||||
metadata:
|
||||
groupName: Accessories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Checkin Accessory'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
accessory:
|
||||
name: accessory
|
||||
description: 'The accessory.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
accessory: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/accessories/selectlist
|
||||
metadata:
|
||||
groupName: Accessories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: Selectlist
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
search:
|
||||
name: search
|
||||
description: 'A search term to filter results by name.'
|
||||
required: false
|
||||
example: null
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=kCGqdKxExAZopEwv7oy5l7SRnyqXXXDCU5Jyu7jU; expires=Sat, 18 Oct 2025 20:42:51 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/accessories
|
||||
metadata:
|
||||
groupName: Accessories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List accessories'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
search:
|
||||
name: search
|
||||
description: 'A search term to filter results by.'
|
||||
required: false
|
||||
example: keyboard
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
'filter[<fieldname>]':
|
||||
name: 'filter[<fieldname>]'
|
||||
description: 'A field to filter by. Example'
|
||||
required: false
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
company_id:
|
||||
name: company_id
|
||||
description: 'Filter by company ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
category_id:
|
||||
name: category_id
|
||||
description: 'Filter by category ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
manufacturer_id:
|
||||
name: manufacturer_id
|
||||
description: 'Filter by manufacturer ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
supplier_id:
|
||||
name: supplier_id
|
||||
description: 'Filter by supplier ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
location_id:
|
||||
name: location_id
|
||||
description: 'Filter by location ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
notes:
|
||||
name: notes
|
||||
description: 'Filter by notes.'
|
||||
required: false
|
||||
example: 'For office use only'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
offset:
|
||||
name: offset
|
||||
description: 'The number of items to skip before starting to collect the result set.'
|
||||
required: false
|
||||
example: 0
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
limit:
|
||||
name: limit
|
||||
description: 'The number of items to return.'
|
||||
required: false
|
||||
example: 50
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
sort:
|
||||
name: sort
|
||||
description: 'The field to sort by.'
|
||||
required: false
|
||||
example: created_at
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
order:
|
||||
name: order
|
||||
description: 'The order to sort by.'
|
||||
required: false
|
||||
example: desc
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters:
|
||||
search: keyboard
|
||||
'filter[<fieldname>]': architecto
|
||||
company_id: 1
|
||||
category_id: 1
|
||||
manufacturer_id: 1
|
||||
supplier_id: 1
|
||||
location_id: 1
|
||||
notes: 'For office use only'
|
||||
offset: 0
|
||||
limit: 50
|
||||
sort: created_at
|
||||
order: desc
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=2HABGaRbPqMGeiNPKWTPnN0AwM4t7W2yN4TFOJqm; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/accessories
|
||||
metadata:
|
||||
groupName: Accessories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Accessory'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters:
|
||||
name:
|
||||
name: name
|
||||
description: 'The name of the accessory.'
|
||||
required: true
|
||||
example: 'Apple Bluetooth Keyboard'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
qty:
|
||||
name: qty
|
||||
description: 'The number of accessories to create.'
|
||||
required: true
|
||||
example: 10
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
category_id:
|
||||
name: category_id
|
||||
description: 'The ID of the category to assign this accessory to.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
image:
|
||||
name: image
|
||||
description: ''
|
||||
required: false
|
||||
example: null
|
||||
type: file
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanBodyParameters:
|
||||
name: 'Apple Bluetooth Keyboard'
|
||||
qty: 10
|
||||
category_id: 1
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/accessories/{id}'
|
||||
metadata:
|
||||
groupName: Accessories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Accessory'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the accessory.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=1Tv5gekmNofKNDwolDkOEcEH9JUfM9rX0PaTFfWI; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/accessories/{id}'
|
||||
metadata:
|
||||
groupName: Accessories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update accessory.'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the accessory.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/accessories/{id}'
|
||||
metadata:
|
||||
groupName: Accessories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Accessory'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the accessory.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,306 +0,0 @@
|
||||
name: Categories
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/categories/{item_type}/selectlist'
|
||||
metadata:
|
||||
groupName: Categories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: Selectlist
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
item_type:
|
||||
name: item_type
|
||||
description: ''
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
item_type: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=Wy5FSLyBn1xpLQy08hVrBlmoANJohF4ZIzpEcIZy; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/categories
|
||||
metadata:
|
||||
groupName: Categories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Categories'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=ErvltKvHZdVobMWCabFa83cWRCOTTtIgAPf7kLWS; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/categories
|
||||
metadata:
|
||||
groupName: Categories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Category'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/categories/{id}'
|
||||
metadata:
|
||||
groupName: Categories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Category'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the category.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=V2YFWiG0waCLFesMFr3kkLb0Io41yz4MPzVEfytq; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/categories/{id}'
|
||||
metadata:
|
||||
groupName: Categories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Category'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the category.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/categories/{id}'
|
||||
metadata:
|
||||
groupName: Categories
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Category'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the category.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,295 +0,0 @@
|
||||
name: Companies
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/companies/selectlist
|
||||
metadata:
|
||||
groupName: Companies
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: Selectlist
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=IqjgsK1DVTQS5qlZI7l96rTJH0m95aILfWx6eAS2; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/companies
|
||||
metadata:
|
||||
groupName: Companies
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Companies'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=cEVlfAwtjQtu004rU9aEgFwcozHbApb3l0gEpL3C; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/companies
|
||||
metadata:
|
||||
groupName: Companies
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Company'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/companies/{id}'
|
||||
metadata:
|
||||
groupName: Companies
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Company'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the company.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=YqczMPKZfCp7CKkULGsRoDqufIWQ9yGkni3Cto4R; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/companies/{id}'
|
||||
metadata:
|
||||
groupName: Companies
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Company'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the company.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/companies/{id}'
|
||||
metadata:
|
||||
groupName: Companies
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Company'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the company.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,394 +0,0 @@
|
||||
name: Departments
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/departments/selectlist
|
||||
metadata:
|
||||
groupName: Departments
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: Selectlist
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=0Ld2mnJEdBRIaREXQ37xGTuIS9SWJ4pT3WC79wc3; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/departments
|
||||
metadata:
|
||||
groupName: Departments
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Departments'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
search:
|
||||
name: search
|
||||
description: 'Search term to filter results.'
|
||||
required: false
|
||||
example: IT
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
name:
|
||||
name: name
|
||||
description: 'Filter by exact department name.'
|
||||
required: false
|
||||
example: IT
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
company_id:
|
||||
name: company_id
|
||||
description: 'Filter by exact company ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
manager_id:
|
||||
name: manager_id
|
||||
description: 'Filter by exact manager (user) ID. Example:'
|
||||
required: false
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
location_id:
|
||||
name: location_id
|
||||
description: 'Filter by exact location ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
sort:
|
||||
name: sort
|
||||
description: 'Column to sort results by. Allowed values: id, name, image, users_count, notes, created_at, updated_at, location, manager, company. Default: created_at.'
|
||||
required: false
|
||||
example: name
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
order:
|
||||
name: order
|
||||
description: 'Order of sorted results. Allowed values: asc, desc. Default: desc.'
|
||||
required: false
|
||||
example: asc
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
offset:
|
||||
name: offset
|
||||
description: 'Offset/starting position of the results. Default: 0.'
|
||||
required: false
|
||||
example: 0
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
limit:
|
||||
name: limit
|
||||
description: 'Limit the number of results returned. Default: 25. Maximum: 100.'
|
||||
required: false
|
||||
example: 50
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters:
|
||||
search: IT
|
||||
name: IT
|
||||
company_id: 1
|
||||
manager_id: 16
|
||||
location_id: 1
|
||||
sort: name
|
||||
order: asc
|
||||
offset: 0
|
||||
limit: 50
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=A3I9GYZHlismQEeDjfx7XM9EFccWImskxth6x9OH; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/departments
|
||||
metadata:
|
||||
groupName: Departments
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Department'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/departments/{id}'
|
||||
metadata:
|
||||
groupName: Departments
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Department'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the department.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=f5nA1I31NqT4m4T3BeSDmKt2LuBQs7KtcZZNRDKq; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/departments/{id}'
|
||||
metadata:
|
||||
groupName: Departments
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Department'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the department.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/departments/{id}'
|
||||
metadata:
|
||||
groupName: Departments
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Department'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the department.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,419 +0,0 @@
|
||||
name: Components
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/components/{component}/assets'
|
||||
metadata:
|
||||
groupName: Components
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Component Assets'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
component:
|
||||
name: component
|
||||
description: 'The component.'
|
||||
required: true
|
||||
example: 3
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
component: 3
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=wiPOiV7Xae1fyzS2Jv3w9d060WDRgnET70IrBjTj; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/components/{id}/checkin'
|
||||
metadata:
|
||||
groupName: Components
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Checkin Component'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the component.'
|
||||
required: true
|
||||
example: 3
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 3
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/components/{id}/checkout'
|
||||
metadata:
|
||||
groupName: Components
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Checkout Component'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the component.'
|
||||
required: true
|
||||
example: 3
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 3
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters:
|
||||
assigned_to:
|
||||
name: assigned_to
|
||||
description: 'The <code>id</code> of an existing record in the assets table.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
assigned_qty:
|
||||
name: assigned_qty
|
||||
description: ''
|
||||
required: false
|
||||
example: null
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanBodyParameters:
|
||||
assigned_to: architecto
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/components
|
||||
metadata:
|
||||
groupName: Components
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Categories'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=vXpBDH4e4puagaeAOAWHnpHEOQ7rCwXKeEDeGn5W; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/components
|
||||
metadata:
|
||||
groupName: Components
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Component'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/components/{id}'
|
||||
metadata:
|
||||
groupName: Components
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Component'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the component.'
|
||||
required: true
|
||||
example: 3
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 3
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=mIFtURJNZowrCIpSMAMYNVYW5XvKIReOCIJ57XgL; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/components/{id}'
|
||||
metadata:
|
||||
groupName: Components
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Component'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the component.'
|
||||
required: true
|
||||
example: 3
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 3
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/components/{id}'
|
||||
metadata:
|
||||
groupName: Components
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Component'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the component.'
|
||||
required: true
|
||||
example: 3
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 3
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,535 +0,0 @@
|
||||
name: Consumables
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/consumables/selectlist
|
||||
metadata:
|
||||
groupName: Consumables
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: Selectlist
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=9SzZeaG6J8yoJtsrcqY5kJPcLvX7ObZeYK0JivkB; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/consumables/{id}/users'
|
||||
metadata:
|
||||
groupName: Consumables
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'User Assignments'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the consumable.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=eO7NKRGNCHJ34NL6woGI5Ux80o2tg9rIBW0LuGGd; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/consumables/{consumable}/checkout'
|
||||
metadata:
|
||||
groupName: Consumables
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Checkout Consumable'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
consumable:
|
||||
name: consumable
|
||||
description: 'The consumable.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
consumable: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/consumables
|
||||
metadata:
|
||||
groupName: Consumables
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Consumables'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
filter:
|
||||
name: filter
|
||||
description: 'A JSON encoded array of key/value pairs to filter results by.'
|
||||
required: false
|
||||
example: '{"company":"1","location":"2"}'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
search:
|
||||
name: search
|
||||
description: 'A search term to filter results by.'
|
||||
required: false
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
name:
|
||||
name: name
|
||||
description: 'Filter by exact name.'
|
||||
required: false
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
company_id:
|
||||
name: company_id
|
||||
description: 'Filter by exact company ID.'
|
||||
required: false
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
category_id:
|
||||
name: category_id
|
||||
description: 'Filter by exact category ID.'
|
||||
required: false
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
model_number:
|
||||
name: model_number
|
||||
description: 'Filter by exact model number.'
|
||||
required: false
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
manufacturer_id:
|
||||
name: manufacturer_id
|
||||
description: 'Filter by exact manufacturer ID.'
|
||||
required: false
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
supplier_id:
|
||||
name: supplier_id
|
||||
description: 'Filter by exact supplier ID.'
|
||||
required: false
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
location_id:
|
||||
name: location_id
|
||||
description: 'Filter by exact location ID.'
|
||||
required: false
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
notes:
|
||||
name: notes
|
||||
description: 'Filter by exact notes.'
|
||||
required: false
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
sort:
|
||||
name: sort
|
||||
description: 'The column to sort results by. Must be one of the following: id, name, order_number, min_amt, purchase_date, purchase_cost, company, category, model_number, item_no, manufacturer, location, qty, image, company, location, category, supplier, manufacturer. Default is created_at.'
|
||||
required: false
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
order:
|
||||
name: order
|
||||
description: 'The order to sort results by. Must be one of the following: asc, desc. Default is desc.'
|
||||
required: false
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters:
|
||||
filter: '{"company":"1","location":"2"}'
|
||||
search: architecto
|
||||
name: architecto
|
||||
company_id: 16
|
||||
category_id: 16
|
||||
model_number: architecto
|
||||
manufacturer_id: 16
|
||||
supplier_id: 16
|
||||
location_id: 16
|
||||
notes: architecto
|
||||
sort: architecto
|
||||
order: architecto
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=WMv6quPUXaLnZTkEXk5aBwdTDMuUgt7fQTd6uLZf; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/consumables
|
||||
metadata:
|
||||
groupName: Consumables
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Store a newly created resource in storage.'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/consumables/{id}'
|
||||
metadata:
|
||||
groupName: Consumables
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Consumable'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the consumable.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=oTfWSAjrq9p5g7qEYt7eFY4Dl7io060HverF1daF; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/consumables/{id}'
|
||||
metadata:
|
||||
groupName: Consumables
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Consumable'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the consumable.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/consumables/{id}'
|
||||
metadata:
|
||||
groupName: Consumables
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Consumable'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the consumable.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,244 +0,0 @@
|
||||
name: Depreciations
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/depreciations
|
||||
metadata:
|
||||
groupName: Depreciations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Depreciations'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=TaZAI56rS9h74YByHlSA9ZrXGsTjQD4onwKaqiFF; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/depreciations
|
||||
metadata:
|
||||
groupName: Depreciations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Depreciation'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/depreciations/{depreciation_id}'
|
||||
metadata:
|
||||
groupName: Depreciations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Depreciation'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
depreciation_id:
|
||||
name: depreciation_id
|
||||
description: 'The ID of the depreciation.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
depreciation_id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=qFky4u180BfuHQB1d4a5A7K5Q4MOHcVdqELFA4ow; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/depreciations/{depreciation_id}'
|
||||
metadata:
|
||||
groupName: Depreciations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Depreciation'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
depreciation_id:
|
||||
name: depreciation_id
|
||||
description: 'The ID of the depreciation.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
depreciation_id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/depreciations/{depreciation_id}'
|
||||
metadata:
|
||||
groupName: Depreciations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Depreciation'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
depreciation_id:
|
||||
name: depreciation_id
|
||||
description: 'The ID of the depreciation.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
depreciation_id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,726 +0,0 @@
|
||||
name: 'Custom Fields'
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/fields/fieldsets/{id}/order'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Reorder Fields'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the fieldset.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/fields/{field}/associate'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Add Field to Fieldset'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
field:
|
||||
name: field
|
||||
description: 'The field.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
field: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/fields/{field}/disassociate'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Remove Field from Fieldset'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
field:
|
||||
name: field
|
||||
description: 'The field.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
field: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/fields
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Custom Fields'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=MTrOxDhLsWMBw1aLYKK9q1GA3VjT43PhCRp7KBa9; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/fields
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Field'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/fields/{field}'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Field'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
field:
|
||||
name: field
|
||||
description: 'The field.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
field: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=jdlBn85i46xp3MdUb7Dbb1igonFqeCNdzQwTOmnl; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/fields/{field}'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Field'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
field:
|
||||
name: field
|
||||
description: 'The field.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
field: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/fields/{field}'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Field'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
field:
|
||||
name: field
|
||||
description: 'The field.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
field: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/fieldsets/{fieldset}/fields'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: 'Custom Fieldsets'
|
||||
subgroupDescription: ''
|
||||
title: 'Show Fields in Fieldset'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
fieldset:
|
||||
name: fieldset
|
||||
description: 'The fieldset.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
fieldset: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/fieldsets/{fieldset}/fields/{model}'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: 'Custom Fieldsets'
|
||||
subgroupDescription: ''
|
||||
title: 'Fields in Fieldset with Default Values for Model'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
fieldset:
|
||||
name: fieldset
|
||||
description: 'The fieldset.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
model:
|
||||
name: model
|
||||
description: ''
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
fieldset: architecto
|
||||
model: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/fieldsets
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: 'Custom Fieldsets'
|
||||
subgroupDescription: ''
|
||||
title: 'List Fieldsets'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=DtH1Q5VV2HTu9NhlX5CxdYBImN4ZqxolMxRmhDyk; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/fieldsets
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: 'Custom Fieldsets'
|
||||
subgroupDescription: ''
|
||||
title: 'Create Fieldset'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/fieldsets/{id}'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: 'Custom Fieldsets'
|
||||
subgroupDescription: ''
|
||||
title: 'Show Fieldset and Fields'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the fieldset.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=haApTgbAdDCFdvIN3hU8DshPXbfKMRdlXqBMBKdM; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/fieldsets/{id}'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: 'Custom Fieldsets'
|
||||
subgroupDescription: ''
|
||||
title: 'Update Fieldset'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the fieldset.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/fieldsets/{id}'
|
||||
metadata:
|
||||
groupName: 'Custom Fields'
|
||||
groupDescription: ''
|
||||
subgroup: 'Custom Fieldsets'
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Fieldset'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the fieldset.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,244 +0,0 @@
|
||||
name: 'User Groups'
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/groups
|
||||
metadata:
|
||||
groupName: 'User Groups'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Display a listing of the resource.'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=evRZVbrjaLPlDGuAmSjuQxAfBkaXVVI3h6YJ8xCC; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/groups
|
||||
metadata:
|
||||
groupName: 'User Groups'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Group'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/groups/{id}'
|
||||
metadata:
|
||||
groupName: 'User Groups'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Group'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the group.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=lUFcyrjpTiMJiziJCYaZzhxr9o4YDOHuJhtyxe9O; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/groups/{id}'
|
||||
metadata:
|
||||
groupName: 'User Groups'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Group'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the group.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/groups/{id}'
|
||||
metadata:
|
||||
groupName: 'User Groups'
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Remove the specified resource from storage.'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the group.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,354 +0,0 @@
|
||||
name: Maintenances
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/maintenances
|
||||
metadata:
|
||||
groupName: Maintenances
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Maintenances'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
search:
|
||||
name: search
|
||||
description: 'Search term to filter results.'
|
||||
required: false
|
||||
example: repair
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
asset_id:
|
||||
name: asset_id
|
||||
description: 'Filter by exact asset ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
supplier_id:
|
||||
name: supplier_id
|
||||
description: 'Filter by exact supplier ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
created_by:
|
||||
name: created_by
|
||||
description: 'Filter by exact user ID who created the maintenance. Example'
|
||||
required: false
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
url:
|
||||
name: url
|
||||
description: 'Filter by exact URL.'
|
||||
required: false
|
||||
example: 'http://example.com'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
asset_maintenance_type:
|
||||
name: asset_maintenance_type
|
||||
description: 'Filter by exact maintenance type.'
|
||||
required: false
|
||||
example: repair
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
sort:
|
||||
name: sort
|
||||
description: 'Column to sort results by. Allowed values: id, name, asset_maintenance_time, asset_maintenance_type, cost, start_date, completion_date, notes, asset_tag, asset_name, serial, created_by, supplier, location, is_warranty, status_label. Default: created_at.'
|
||||
required: false
|
||||
example: name
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
order:
|
||||
name: order
|
||||
description: 'Order of sorted results. Allowed values: asc, desc. Default: desc.'
|
||||
required: false
|
||||
example: asc
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
offset:
|
||||
name: offset
|
||||
description: 'Offset/starting position of the results. Default: 0.'
|
||||
required: false
|
||||
example: 0
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
limit:
|
||||
name: limit
|
||||
description: 'Limit the number of results returned. Default: 25. Maximum: 100.'
|
||||
required: false
|
||||
example: 50
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters:
|
||||
search: repair
|
||||
asset_id: 1
|
||||
supplier_id: 1
|
||||
created_by: 16
|
||||
url: 'http://example.com'
|
||||
asset_maintenance_type: repair
|
||||
sort: name
|
||||
order: asc
|
||||
offset: 0
|
||||
limit: 50
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=HIPWn994ZVwWTllISCuyT1n0vLjhvE6GtJdyvVt5; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/maintenances
|
||||
metadata:
|
||||
groupName: Maintenances
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Maintenance'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/maintenances/{id}'
|
||||
metadata:
|
||||
groupName: Maintenances
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'View Maintenance'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the maintenance.'
|
||||
required: true
|
||||
example: 2
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 2
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=SMRgTfJyiKW4MwqoQkxPhRwZ7s0NG6iXfqrgvOF3; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/maintenances/{id}'
|
||||
metadata:
|
||||
groupName: Maintenances
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Maintenance'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the maintenance.'
|
||||
required: true
|
||||
example: 2
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 2
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/maintenances/{id}'
|
||||
metadata:
|
||||
groupName: Maintenances
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Maintenance'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the maintenance.'
|
||||
required: true
|
||||
example: 2
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 2
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,181 +0,0 @@
|
||||
name: Imports
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/imports/process/{import}'
|
||||
metadata:
|
||||
groupName: Imports
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Process Import'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
import:
|
||||
name: import
|
||||
description: ''
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
import: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/imports
|
||||
metadata:
|
||||
groupName: Imports
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Import Files'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=lj8o7doJNMvuEIVNyZKehmNRHGnHDPN2afmwMD6i; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/imports
|
||||
metadata:
|
||||
groupName: Imports
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Save Import File'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/imports/{id}'
|
||||
metadata:
|
||||
groupName: Imports
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Import File'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the import.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,116 +0,0 @@
|
||||
name: Labels
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/labels/{name}'
|
||||
metadata:
|
||||
groupName: Labels
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Label'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
name:
|
||||
name: name
|
||||
description: ''
|
||||
required: true
|
||||
example: '|{+-0p'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
name: '|{+-0p'
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=rEUcrmsA92vKXWOMa9gjkZircoRHtwh2NGzh46Ym; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/labels
|
||||
metadata:
|
||||
groupName: Labels
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Labels'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=uOfOzJMa5lIhRnkxrSV7W6Lh6At2caeav8pgRq3i; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,576 +0,0 @@
|
||||
name: Licenses
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/licenses/selectlist
|
||||
metadata:
|
||||
groupName: Licenses
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: Selectlist
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=WCUA668q64Tb6nEAAMH6QDj0KxiWwfnKfCVC1WL5; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/licenses
|
||||
metadata:
|
||||
groupName: Licenses
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Licenses'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
status:
|
||||
name: status
|
||||
description: 'Filter by license status. Options: active, inactive, expiring'
|
||||
required: false
|
||||
example: '?status=active'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
company_id:
|
||||
name: company_id
|
||||
description: 'Filter by exact company ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
name:
|
||||
name: name
|
||||
description: 'Filter by exact license name.'
|
||||
required: false
|
||||
example: 'Microsoft 365'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
product_key:
|
||||
name: product_key
|
||||
description: 'Filter by exact product key.'
|
||||
required: false
|
||||
example: W269N
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
order_number:
|
||||
name: order_number
|
||||
description: 'Filter by exact order number.'
|
||||
required: false
|
||||
example: '12345'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
purchase_order:
|
||||
name: purchase_order
|
||||
description: 'Filter by exact purchase order.'
|
||||
required: false
|
||||
example: PO12345
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
license_name:
|
||||
name: license_name
|
||||
description: 'Filter by exact licensee name.'
|
||||
required: false
|
||||
example: 'John Doe'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
license_email:
|
||||
name: license_email
|
||||
description: 'Filter by exact licensee email.'
|
||||
required: false
|
||||
example: john.d
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters:
|
||||
status: '?status=active'
|
||||
company_id: 1
|
||||
name: 'Microsoft 365'
|
||||
product_key: W269N
|
||||
order_number: '12345'
|
||||
purchase_order: PO12345
|
||||
license_name: 'John Doe'
|
||||
license_email: john.d
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=FsSfFEzLbFI2oqcTFwXV523YHYRteVgVbhwU1KjU; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/licenses
|
||||
metadata:
|
||||
groupName: Licenses
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create License'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/licenses/{license_id}'
|
||||
metadata:
|
||||
groupName: Licenses
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show License'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
license_id:
|
||||
name: license_id
|
||||
description: 'The ID of the license.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
license_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=fr7kJMaaASq4b53DwioCqOIG1A7k7COxiBsYFjXL; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/licenses/{license_id}'
|
||||
metadata:
|
||||
groupName: Licenses
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update License'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
license_id:
|
||||
name: license_id
|
||||
description: 'The ID of the license.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
license_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/licenses/{license_id}'
|
||||
metadata:
|
||||
groupName: Licenses
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete License'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
license_id:
|
||||
name: license_id
|
||||
description: 'The ID of the license.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
license_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/licenses/{license_id}/seats'
|
||||
metadata:
|
||||
groupName: Licenses
|
||||
groupDescription: ''
|
||||
subgroup: 'License Seats'
|
||||
subgroupDescription: ''
|
||||
title: 'List License Seats'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
license_id:
|
||||
name: license_id
|
||||
description: 'The ID of the license.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
license_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=StfngPkbKXNpOhusZSc3gJVfFrY1dHeurAa4otwt; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/licenses/{license_id}/seats/{id}'
|
||||
metadata:
|
||||
groupName: Licenses
|
||||
groupDescription: ''
|
||||
subgroup: 'License Seats'
|
||||
subgroupDescription: ''
|
||||
title: 'Show License Seat'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
license_id:
|
||||
name: license_id
|
||||
description: 'The ID of the license.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the seat.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
license_id: 1
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=4NcQjrTDkyy5Ps1lwLlvwwkW8zLNdvkt4jLniAbj; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/licenses/{license_id}/seats/{id}'
|
||||
metadata:
|
||||
groupName: Licenses
|
||||
groupDescription: ''
|
||||
subgroup: 'License Seats'
|
||||
subgroupDescription: ''
|
||||
title: 'Update License Seat'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
license_id:
|
||||
name: license_id
|
||||
description: 'The ID of the license.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the seat.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
license_id: 1
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,644 +0,0 @@
|
||||
name: Locations
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/locations/selectlist
|
||||
metadata:
|
||||
groupName: Locations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Gets a paginated collection for the select2 menus'
|
||||
description: |-
|
||||
This is handled slightly differently as of ~4.7.8-pre, as
|
||||
we have to do some recursive magic to get the hierarchy to display
|
||||
properly when looking at the parent/child relationship in the
|
||||
rich menus.
|
||||
|
||||
This means we can't use the normal pagination that we use elsewhere
|
||||
in our selectlists, since we have to get the full set before we can
|
||||
determine which location is parent/child/grandchild, etc.
|
||||
|
||||
This also means that hierarchy display gets a little funky when people
|
||||
use the Select2 search functionality, but there's not much we can do about
|
||||
that right now.
|
||||
|
||||
As a result, instead of paginating as part of the query, we have to grab
|
||||
the entire data set, and then invoke a paginator manually and pass that
|
||||
through to the SelectListTransformer.
|
||||
|
||||
Many thanks to @uberbrady for the help getting this working better.
|
||||
Recursion still sucks, but I guess he doesn't have to get in the
|
||||
sea... this time.
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=UpVwalXoUKqNpdc1JZOoxLIbtfuGTDjmXv2FL0U4; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/locations/{location_id}/assets'
|
||||
metadata:
|
||||
groupName: Locations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Assets with Default Location'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
location_id:
|
||||
name: location_id
|
||||
description: 'The ID of the location.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
location_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=s6eLrXoHfx9aHRHsGokhuXGIfcWMyMK6s8Y7CuQb; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/locations/{location_id}/assigned/assets'
|
||||
metadata:
|
||||
groupName: Locations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Assets Assigned to Location'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
location_id:
|
||||
name: location_id
|
||||
description: 'The ID of the location.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
location_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=6IjNjFVBRoxfcpk3lgt97JCcwcwkJ18MblUUArEa; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/locations/{location_id}/assigned/accessories'
|
||||
metadata:
|
||||
groupName: Locations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Accessories Assigned to Location'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
location_id:
|
||||
name: location_id
|
||||
description: 'The ID of the location.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
location_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=8QVLWPz9VFdTVM9oelFsOvXEnefwKOeIuos7D23G; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/locations
|
||||
metadata:
|
||||
groupName: Locations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Locations'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
search:
|
||||
name: search
|
||||
description: 'Search term to filter results.'
|
||||
required: false
|
||||
example: Headquarters
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
name:
|
||||
name: name
|
||||
description: 'Filter by exact location name.'
|
||||
required: false
|
||||
example: Headquarters
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
address:
|
||||
name: address
|
||||
description: 'Filter by exact address.'
|
||||
required: false
|
||||
example: '123 Main St'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
address2:
|
||||
name: address2
|
||||
description: 'Filter by exact address2.'
|
||||
required: false
|
||||
example: 'Suite 100'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
city:
|
||||
name: city
|
||||
description: 'Filter by exact city.'
|
||||
required: false
|
||||
example: Springfield
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
zip:
|
||||
name: zip
|
||||
description: 'Filter by exact zip code.'
|
||||
required: false
|
||||
example: '12345'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
country:
|
||||
name: country
|
||||
description: 'Filter by exact country.'
|
||||
required: false
|
||||
example: USA
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
manager_id:
|
||||
name: manager_id
|
||||
description: 'Filter by exact manager (user) ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
company_id:
|
||||
name: company_id
|
||||
description: 'Filter by exact company ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
parent_id:
|
||||
name: parent_id
|
||||
description: 'Filter by exact parent location ID.'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
status:
|
||||
name: status
|
||||
description: 'Filter by location status. Allowed values: active, deleted.'
|
||||
required: false
|
||||
example: active
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
sort:
|
||||
name: sort
|
||||
description: 'Column to sort results by. Allowed values: accessorries_count, address, address2, assets_count, assigned_assets_count, rtd_assets_count, accessories_count, assigned_accessories_count, components_count, consumables_count, users_count, children_count, city, country, created_at, currency, id, image, ldap_ou, company_id, manager_id, name, rtd_assets_count, state, updated_at, zip. Default: created_at.'
|
||||
required: false
|
||||
example: name
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
order:
|
||||
name: order
|
||||
description: 'Order of sorted results. Allowed values: asc, desc. Default: desc.'
|
||||
required: false
|
||||
example: asc
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters:
|
||||
search: Headquarters
|
||||
name: Headquarters
|
||||
address: '123 Main St'
|
||||
address2: 'Suite 100'
|
||||
city: Springfield
|
||||
zip: '12345'
|
||||
country: USA
|
||||
manager_id: 1
|
||||
company_id: 1
|
||||
parent_id: 1
|
||||
status: active
|
||||
sort: name
|
||||
order: asc
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=OrGO92pRr2bN1MO0HEk74EaOyIBpyNWW8nBBM9w1; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/locations
|
||||
metadata:
|
||||
groupName: Locations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Location'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/locations/{id}'
|
||||
metadata:
|
||||
groupName: Locations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Location'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the location.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=r40jhYlCjVborgeetW7XFFJzC3FPckbK3wiqaq9b; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/locations/{id}'
|
||||
metadata:
|
||||
groupName: Locations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Location'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the location.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/locations/{id}'
|
||||
metadata:
|
||||
groupName: Locations
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Location'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the location.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,462 +0,0 @@
|
||||
name: Manufacturers
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/manufacturers/selectlist
|
||||
metadata:
|
||||
groupName: Manufacturers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: Selectlist
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=wsdZCoP7veaDGNxSgmEVyiIXMCynDJaplPtmclKS; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/manufacturers/{id}/restore'
|
||||
metadata:
|
||||
groupName: Manufacturers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Restore Deleted Manufacturer'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the manufacturer.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/manufacturers
|
||||
metadata:
|
||||
groupName: Manufacturers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Manufacturers'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
search:
|
||||
name: search
|
||||
description: 'Search term to filter results.'
|
||||
required: false
|
||||
example: Dell
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
name:
|
||||
name: name
|
||||
description: 'Filter by exact manufacturer name.'
|
||||
required: false
|
||||
example: Dell
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
url:
|
||||
name: url
|
||||
description: 'Filter by exact URL.'
|
||||
required: false
|
||||
example: 'http://example.com'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
support_url:
|
||||
name: support_url
|
||||
description: 'Filter by exact support URL.'
|
||||
required: false
|
||||
example: 'http://support.example.com'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
warranty_lookup_url:
|
||||
name: warranty_lookup_url
|
||||
description: 'Filter by exact warranty lookup URL.'
|
||||
required: false
|
||||
example: 'http://warranty.example.com'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
support_phone:
|
||||
name: support_phone
|
||||
description: 'Filter by exact support phone number.'
|
||||
required: false
|
||||
example: 1-800-555-5555
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
support_email:
|
||||
name: support_email
|
||||
description: 'Filter by exact support email address.'
|
||||
required: false
|
||||
example: support@example.org
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
sort:
|
||||
name: sort
|
||||
description: 'Column to sort results by. Allowed values: id, name, url, support_url, support_email, warranty_lookup_url, support_phone, created_at, updated_at, assets_count, consumables_count, components_count, licenses_count. Default: created_at.'
|
||||
required: false
|
||||
example: name
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
order:
|
||||
name: order
|
||||
description: 'Order of sorted results. Allowed values: asc, desc. Default: desc.'
|
||||
required: false
|
||||
example: asc
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
offset:
|
||||
name: offset
|
||||
description: 'Offset/starting position of the results. Default: 0.'
|
||||
required: false
|
||||
example: 0
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
limit:
|
||||
name: limit
|
||||
description: 'Limit the number of results returned. Default: 25. Maximum: 100.'
|
||||
required: false
|
||||
example: 50
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters:
|
||||
search: Dell
|
||||
name: Dell
|
||||
url: 'http://example.com'
|
||||
support_url: 'http://support.example.com'
|
||||
warranty_lookup_url: 'http://warranty.example.com'
|
||||
support_phone: 1-800-555-5555
|
||||
support_email: support@example.org
|
||||
sort: name
|
||||
order: asc
|
||||
offset: 0
|
||||
limit: 50
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=hLpuGgLKlkZ3lxAdCVVQh6AknrP7V8ucHP12iJyL; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/manufacturers
|
||||
metadata:
|
||||
groupName: Manufacturers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Maintenance'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/manufacturers/{id}'
|
||||
metadata:
|
||||
groupName: Manufacturers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Manufacturer'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the manufacturer.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=AihyA0pGOpolpeaHgVkhwxZ48ZIGlH5C4cWn2ky1; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/manufacturers/{id}'
|
||||
metadata:
|
||||
groupName: Manufacturers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Manufacturer'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the manufacturer.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/manufacturers/{id}'
|
||||
metadata:
|
||||
groupName: Manufacturers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Manufacturer'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the manufacturer.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,357 +0,0 @@
|
||||
name: Models
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/models/selectlist
|
||||
metadata:
|
||||
groupName: Models
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Selectlist of Models'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=jwtFIyYGPRatDfntlAj40jo0O4Sj0FCnKi976PR2; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/models/assets
|
||||
metadata:
|
||||
groupName: Models
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Assets in Model'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the model.'
|
||||
required: true
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 16
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=nvMGTR69fETV88dw8dfKSbREZAJ66IYQUUNSpf7Y; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/models
|
||||
metadata:
|
||||
groupName: Models
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Models'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=QArLWCify7SZSmEfdwLa8MuiE73ySbcjczNWAP5t; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/models
|
||||
metadata:
|
||||
groupName: Models
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Model'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/models/{id}'
|
||||
metadata:
|
||||
groupName: Models
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Model'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the model.'
|
||||
required: true
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 16
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=Fi7bcrWvfZzmZFbGKAT0DPwaht8G2vkcbjoJPdZ1; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/models/{id}'
|
||||
metadata:
|
||||
groupName: Models
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Model'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the model.'
|
||||
required: true
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 16
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/models/{id}'
|
||||
metadata:
|
||||
groupName: Models
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Model'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the model.'
|
||||
required: true
|
||||
example: 16
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: 16
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,117 +0,0 @@
|
||||
name: Notes
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/notes/{asset_id}/store'
|
||||
metadata:
|
||||
groupName: Notes
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'Store Note'
|
||||
description: |-
|
||||
Checks authorization for updating assets, validates the presence of the 'note',
|
||||
attempts to find the asset by ID, and creates a new ActionLog entry if successful.
|
||||
Returns JSON responses indicating success or failure with appropriate HTTP status codes.
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
asset_id:
|
||||
name: asset_id
|
||||
description: 'The ID of the asset.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
asset_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/notes/{asset_id}/index'
|
||||
metadata:
|
||||
groupName: Notes
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'List Notes'
|
||||
description: |-
|
||||
Checks authorization to view assets, attempts to find the asset by ID,
|
||||
and fetches related action log entries of type 'note added', including
|
||||
user information for each note. Returns a JSON response with the notes or errors.
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
asset_id:
|
||||
name: asset_id
|
||||
description: 'The ID of the asset.'
|
||||
required: true
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
asset_id: 1
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=0996I9pgG6hTiplyAUfm6hARQqlLp2KcZRKbrsM4; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,398 +0,0 @@
|
||||
name: Settings
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/settings/ldaptest
|
||||
metadata:
|
||||
groupName: Settings
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Test LDAP Connection'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=sXQmK1seBet712r1kd4fxKvJ8eS1G5JIQGi7Jk76; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/settings/purge_barcodes
|
||||
metadata:
|
||||
groupName: Settings
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Barcode Cache'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/settings/login-attempts
|
||||
metadata:
|
||||
groupName: Settings
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Get a list of login attempts'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=3WvRIFmkRUjvmDyyocP7gGkeVA8nsKCstMlpD2ll; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/settings/ldaptestlogin
|
||||
metadata:
|
||||
groupName: Settings
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Test LDAP Login'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters:
|
||||
ldaptest_user:
|
||||
name: ldaptest_user
|
||||
description: ''
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
ldaptest_password:
|
||||
name: ldaptest_password
|
||||
description: ''
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanBodyParameters:
|
||||
ldaptest_user: architecto
|
||||
ldaptest_password: architecto
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/settings/mailtest
|
||||
metadata:
|
||||
groupName: Settings
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Test Email Configuration'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/settings/backups
|
||||
metadata:
|
||||
groupName: Settings
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Lists backup files'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=c1LnO2y90g9cXIQdH1B3ALRTwBznlJR0MPn7UYwI; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/settings/backups/download/latest
|
||||
metadata:
|
||||
groupName: Settings
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Determines and downloads the latest backup'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=h8vmsBd9n2ThBnox919dPAo17WMNdGSmFDgmUWbJ; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/settings/backups/download/{file}'
|
||||
metadata:
|
||||
groupName: Settings
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Downloads a backup file.'
|
||||
description: |-
|
||||
We use response()->download() here instead of Storage::download() because Storage::download()
|
||||
exhausts memory on larger files.
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
file:
|
||||
name: file
|
||||
description: ''
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
file: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=dEPJObU3yZeyRQ0ZNZQmLDg70DDH6mt8OLUoXk7b; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,539 +0,0 @@
|
||||
name: 'Status Labels'
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/statuslabels/selectlist
|
||||
metadata:
|
||||
groupName: 'Status Labels'
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: Selectlist
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=wkMPeN6kxHTgcy7pBWCmBb2skYp7Ozxo03ll2QRI; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/statuslabels/assets/name
|
||||
metadata:
|
||||
groupName: 'Status Labels'
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'Show Count for Pie Chart'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=BwSbIkmBBnKEl1eHDB5irvFrSmdOermismgPqdVt; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/statuslabels/assets/type
|
||||
metadata:
|
||||
groupName: 'Status Labels'
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'Show Count for Pie Chart by Meta Status'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=qgDpluENzw06DYesVDJ62VPNypFZR7TMXA5YuERD; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/statuslabels/{id}/assetlist'
|
||||
metadata:
|
||||
groupName: 'Status Labels'
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'Show Assets with Status Label'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the statuslabel.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=prHwFCnHCRfbaQBGGsb9zl9HAqpNQVahgTzOn5TU; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/statuslabels/{statuslabel}/deployable'
|
||||
metadata:
|
||||
groupName: 'Status Labels'
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'Check for Deployable Status'
|
||||
description: |-
|
||||
Returns a boolean response based on whether the status label
|
||||
is one that is deployable or pending.
|
||||
|
||||
This is used by the hardware create/edit view to determine whether
|
||||
we should provide a dropdown of users for them to check the asset out to,
|
||||
and whether we show a warning that the asset will be checked in if it's already
|
||||
assigned but the status is changed to one that isn't pending or deployable
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
statuslabel:
|
||||
name: statuslabel
|
||||
description: 'The statuslabel.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
statuslabel: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=gGlaRILsVZF4fEWWem29LTEhtwQLJo5jRgFzetFi; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/statuslabels
|
||||
metadata:
|
||||
groupName: 'Status Labels'
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'Show Status Labels'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
search:
|
||||
name: search
|
||||
description: 'Search term to filter results.'
|
||||
required: false
|
||||
example: Inventory
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters:
|
||||
search: Inventory
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=wZlTwk63tGu1kRBFJuzb8R1UY1k0ZU2YI5NAAZt8; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/statuslabels
|
||||
metadata:
|
||||
groupName: 'Status Labels'
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'Store a newly created resource in storage.'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/statuslabels/{id}'
|
||||
metadata:
|
||||
groupName: 'Status Labels'
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'Show Status Labels'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the statuslabel.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=BoPls7yDoCtaubgDPfK5nEabHin9oYkJpg9vZT3b; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/statuslabels/{id}'
|
||||
metadata:
|
||||
groupName: 'Status Labels'
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'Update Status Label'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the statuslabel.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/statuslabels/{id}'
|
||||
metadata:
|
||||
groupName: 'Status Labels'
|
||||
groupDescription: ''
|
||||
subgroup: Assets
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Status Label'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the statuslabel.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,482 +0,0 @@
|
||||
name: Suppliers
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/suppliers/selectlist
|
||||
metadata:
|
||||
groupName: Suppliers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: Selectlist
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=XCddlMqcqKqWUTBwJenBf996h9VUAuQn9onGzMNw; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/suppliers
|
||||
metadata:
|
||||
groupName: Suppliers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Suppliers'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
search:
|
||||
name: search
|
||||
description: 'Search term to filter results.'
|
||||
required: false
|
||||
example: Acme
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
name:
|
||||
name: name
|
||||
description: 'Filter by exact supplier name.'
|
||||
required: false
|
||||
example: 'Acme Corp'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
address:
|
||||
name: address
|
||||
description: 'Filter by exact address.'
|
||||
required: false
|
||||
example: '123 Main St'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
address2:
|
||||
name: address2
|
||||
description: 'Filter by exact address2.'
|
||||
required: false
|
||||
example: 'Suite 100'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
city:
|
||||
name: city
|
||||
description: 'Filter by exact city.'
|
||||
required: false
|
||||
example: Springfield
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
state:
|
||||
name: state
|
||||
description: 'Filter by exact state.'
|
||||
required: false
|
||||
example: IL
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
zip:
|
||||
name: zip
|
||||
description: 'Filter by exact zip code.'
|
||||
required: false
|
||||
example: '62701'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
country:
|
||||
name: country
|
||||
description: 'Filter by exact country.'
|
||||
required: false
|
||||
example: USA
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
phone:
|
||||
name: phone
|
||||
description: 'Filter by exact phone number.'
|
||||
required: false
|
||||
example: 555-1234
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
fax:
|
||||
name: fax
|
||||
description: 'Filter by exact fax number.'
|
||||
required: false
|
||||
example: 555-5678
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
email:
|
||||
name: email
|
||||
description: 'Filter by exact email address.'
|
||||
required: false
|
||||
example: info@example.org
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
url:
|
||||
name: url
|
||||
description: 'Filter by exact URL.'
|
||||
required: false
|
||||
example: 'http://example.com'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
notes:
|
||||
name: notes
|
||||
description: 'Filter by exact notes.'
|
||||
required: false
|
||||
example: 'This is a note.'
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
sort:
|
||||
name: sort
|
||||
description: 'Column to sort results by. Allowed values: id, name, address, address2, city, state, country, zip, phone, contact, fax, email, image, assets_count, licenses_count, accessories_count, components_count, consumables_count, url, notes. Default: created_at.'
|
||||
required: false
|
||||
example: name
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
order:
|
||||
name: order
|
||||
description: 'Order of sorted results. Allowed values: asc, desc. Default: desc.'
|
||||
required: false
|
||||
example: asc
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
offset:
|
||||
name: offset
|
||||
description: 'Offset/starting position of the results. Default: 0.'
|
||||
required: false
|
||||
example: 0
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
limit:
|
||||
name: limit
|
||||
description: 'Limit the number of results returned. Default: 25. Maximum: 100.'
|
||||
required: false
|
||||
example: 50
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters:
|
||||
search: Acme
|
||||
name: 'Acme Corp'
|
||||
address: '123 Main St'
|
||||
address2: 'Suite 100'
|
||||
city: Springfield
|
||||
state: IL
|
||||
zip: '62701'
|
||||
country: USA
|
||||
phone: 555-1234
|
||||
fax: 555-5678
|
||||
email: info@example.org
|
||||
url: 'http://example.com'
|
||||
notes: 'This is a note.'
|
||||
sort: name
|
||||
order: asc
|
||||
offset: 0
|
||||
limit: 50
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=R5PUii8mbVR2t8EyWTQHM80dstDyhZxcQR15nKb7; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: api/v1/suppliers
|
||||
metadata:
|
||||
groupName: Suppliers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Create Supplier'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/suppliers/{id}'
|
||||
metadata:
|
||||
groupName: Suppliers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Show Supplier'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the supplier.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=aqFNCFcjAl7hMG1Q0RCnYmK7HTNWcq0kYhd1R9NN; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- PUT
|
||||
- PATCH
|
||||
uri: 'api/v1/suppliers/{id}'
|
||||
metadata:
|
||||
groupName: Suppliers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Update Supplier'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the supplier.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/suppliers/{id}'
|
||||
metadata:
|
||||
groupName: Suppliers
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete Supplier'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the supplier.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,207 +0,0 @@
|
||||
name: Reports
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/reports/activity
|
||||
metadata:
|
||||
groupName: Reports
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Activity Report'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters:
|
||||
search:
|
||||
name: search
|
||||
description: 'Search term to filter results'
|
||||
required: false
|
||||
example: updated
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
target_type:
|
||||
name: target_type
|
||||
description: 'Filter by target type'
|
||||
required: false
|
||||
example: user
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
target_id:
|
||||
name: target_id
|
||||
description: 'Filter by target ID'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
item_type:
|
||||
name: item_type
|
||||
description: 'Filter by item type'
|
||||
required: false
|
||||
example: asset
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
item_id:
|
||||
name: item_id
|
||||
description: 'Filter by item ID'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
action_type:
|
||||
name: action_type
|
||||
description: 'Filter by action type'
|
||||
required: false
|
||||
example: create
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
created_by:
|
||||
name: created_by
|
||||
description: 'Filter by user ID who created the log'
|
||||
required: false
|
||||
example: 1
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
action_source:
|
||||
name: action_source
|
||||
description: 'Filter by action source'
|
||||
required: false
|
||||
example: web
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
remote_ip:
|
||||
name: remote_ip
|
||||
description: 'Filter by remote IP address Example:'
|
||||
required: false
|
||||
example: null
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
uploads:
|
||||
name: uploads
|
||||
description: 'Filter to only show logs with file uploads'
|
||||
required: false
|
||||
example: true
|
||||
type: boolean
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
sort:
|
||||
name: sort
|
||||
description: 'Column to sort by. Allowed values: id, created_at, target_id, created_by, accept_signature, action_type, note, remote_ip, user_agent, target_type, item_type, action_source, action_date. Default is created_at.'
|
||||
required: false
|
||||
example: created_at
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
order:
|
||||
name: order
|
||||
description: 'Order of sorting. Allowed values: asc, desc. Default is desc.'
|
||||
required: false
|
||||
example: desc
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
offset:
|
||||
name: offset
|
||||
description: 'Number of records to skip for pagination. Default is 0.'
|
||||
required: false
|
||||
example: 0
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
limit:
|
||||
name: limit
|
||||
description: 'Maximum number of records to return. Default is 25.'
|
||||
required: false
|
||||
example: 25
|
||||
type: integer
|
||||
enumValues: []
|
||||
exampleWasSpecified: true
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanQueryParameters:
|
||||
search: updated
|
||||
target_type: user
|
||||
target_id: 1
|
||||
item_type: asset
|
||||
item_id: 1
|
||||
action_type: create
|
||||
created_by: 1
|
||||
action_source: web
|
||||
uploads: true
|
||||
sort: created_at
|
||||
order: desc
|
||||
offset: 0
|
||||
limit: 25
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=Q7c7iu2qi9Mil7UrdGdQhd5UHhMHwIs9J7wKxvhY; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,54 +0,0 @@
|
||||
name: Misc
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: api/v1/version
|
||||
metadata:
|
||||
groupName: Misc
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Version API routes'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters: []
|
||||
cleanUrlParameters: []
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=4opUPyEuZlodDlaWWG7JNFN7lCuHNMim1KxZHPur; expires=Sat, 18 Oct 2025 20:42:52 GMT; Max-Age=719999; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,285 +0,0 @@
|
||||
name: Files
|
||||
description: ''
|
||||
endpoints:
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/{object_type}/{id}/files'
|
||||
metadata:
|
||||
groupName: Files
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'List Files for an Object'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
object_type:
|
||||
name: object_type
|
||||
description: ''
|
||||
required: true
|
||||
example: accessories|assets|components|consumables|hardware|licenses|locations|maintenances|models|users
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the {object type}.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
object_type: accessories|assets|components|consumables|hardware|licenses|locations|maintenances|models|users
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=HfR9HTwK8SuIGE2OuiaImTbUpBhp1HtUBHMeilHy; expires=Sat, 18 Oct 2025 20:42:53 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- GET
|
||||
uri: 'api/v1/{object_type}/{id}/files/{file_id}'
|
||||
metadata:
|
||||
groupName: Files
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Display File'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
object_type:
|
||||
name: object_type
|
||||
description: ''
|
||||
required: true
|
||||
example: accessories|assets|components|consumables|hardware|licenses|locations|maintenances|models|users
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the {object type}.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
file_id:
|
||||
name: file_id
|
||||
description: 'The ID of the file.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
object_type: accessories|assets|components|consumables|hardware|licenses|locations|maintenances|models|users
|
||||
id: architecto
|
||||
file_id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses:
|
||||
-
|
||||
status: 401
|
||||
content: '{"error":"Unauthorized or unauthenticated."}'
|
||||
headers:
|
||||
cache-control: 'max-age=0, must-revalidate, no-cache, no-store, private'
|
||||
content-type: application/json
|
||||
vary: Origin
|
||||
pragma: no-cache
|
||||
expires: 'Sun, 02 Jan 1990 00:00:00 GMT'
|
||||
x-content-type-options: nosniff
|
||||
feature-policy: "accelerometer 'none';autoplay 'none';camera 'none';display-capture 'none';document-domain 'none';encrypted-media 'none';fullscreen 'none';geolocation 'none';sync-xhr 'none';usb 'none';xr-spatial-tracking 'none'"
|
||||
referrer-policy: same-origin
|
||||
content-security-policy: "default-src 'self';style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline' 'unsafe-eval';connect-src 'self';object-src 'none';font-src 'self' data:;img-src 'self' data: https://snipe-it.test https://avatars.githubusercontent.com/u/ https://www.google.com/images/branding/googlelogo/2x/ https://snipe-flysystem-public-test.s3-us-west-2.amazonaws.com https://secure.gravatar.com http://gravatar.com maps.google.com maps.gstatic.com *.googleapis.com"
|
||||
set-cookie: 'snipe-dev_local=N688uqN5BWG2WKvT3v6TxAJAl1Il05lzaTycQ40x; expires=Sat, 18 Oct 2025 20:42:53 GMT; Max-Age=720000; path=/; secure; httponly; samesite=lax'
|
||||
description: null
|
||||
custom: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- POST
|
||||
uri: 'api/v1/{object_type}/{id}/files'
|
||||
metadata:
|
||||
groupName: Files
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Upload File to an Object'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
object_type:
|
||||
name: object_type
|
||||
description: ''
|
||||
required: true
|
||||
example: accessories|assets|components|consumables|hardware|licenses|locations|maintenances|models|users
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the {object type}.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
object_type: accessories|assets|components|consumables|hardware|licenses|locations|maintenances|models|users
|
||||
id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
-
|
||||
httpMethods:
|
||||
- DELETE
|
||||
uri: 'api/v1/{object_type}/{id}/files/{file_id}/delete'
|
||||
metadata:
|
||||
groupName: Files
|
||||
groupDescription: ''
|
||||
subgroup: ''
|
||||
subgroupDescription: ''
|
||||
title: 'Delete File'
|
||||
description: ''
|
||||
authenticated: true
|
||||
deprecated: false
|
||||
custom: []
|
||||
headers:
|
||||
Authorization: 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
urlParameters:
|
||||
object_type:
|
||||
name: object_type
|
||||
description: ''
|
||||
required: true
|
||||
example: accessories|assets|components|consumables|hardware|licenses|locations|maintenances|models|users
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
id:
|
||||
name: id
|
||||
description: 'The ID of the {object type}.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
file_id:
|
||||
name: file_id
|
||||
description: 'The ID of the file.'
|
||||
required: true
|
||||
example: architecto
|
||||
type: string
|
||||
enumValues: []
|
||||
exampleWasSpecified: false
|
||||
nullable: false
|
||||
custom: []
|
||||
cleanUrlParameters:
|
||||
object_type: accessories|assets|components|consumables|hardware|licenses|locations|maintenances|models|users
|
||||
id: architecto
|
||||
file_id: architecto
|
||||
queryParameters: []
|
||||
cleanQueryParameters: []
|
||||
bodyParameters: []
|
||||
cleanBodyParameters: []
|
||||
fileParameters: []
|
||||
responses: []
|
||||
responseFields: []
|
||||
auth:
|
||||
- headers
|
||||
- Authorization
|
||||
- 'Bearer 6g43cv8PD1aE5beadkZfhV6'
|
||||
controller: null
|
||||
method: null
|
||||
route: null
|
||||
custom: []
|
||||
@@ -1,53 +0,0 @@
|
||||
# To include an endpoint that isn't a part of your Laravel app (or belongs to a vendor package),
|
||||
# you can define it in a custom.*.yaml file, like this one.
|
||||
# Each custom file should contain an array of endpoints. Here's an example:
|
||||
# See https://scribe.knuckles.wtf/laravel/documenting/custom-endpoints#extra-sorting-groups-in-custom-endpoint-files for more options
|
||||
|
||||
#- httpMethods:
|
||||
# - POST
|
||||
# uri: api/doSomething/{param}
|
||||
# metadata:
|
||||
# groupName: The group the endpoint belongs to. Can be a new group or an existing group.
|
||||
# groupDescription: A description for the group. You don't need to set this for every endpoint; once is enough.
|
||||
# subgroup: You can add a subgroup, too.
|
||||
# title: Do something
|
||||
# description: 'This endpoint allows you to do something.'
|
||||
# authenticated: false
|
||||
# headers:
|
||||
# Content-Type: application/json
|
||||
# Accept: application/json
|
||||
# urlParameters:
|
||||
# param:
|
||||
# name: param
|
||||
# description: A URL param for no reason.
|
||||
# required: true
|
||||
# example: 2
|
||||
# type: integer
|
||||
# queryParameters:
|
||||
# speed:
|
||||
# name: speed
|
||||
# description: How fast the thing should be done. Can be `slow` or `fast`.
|
||||
# required: false
|
||||
# example: fast
|
||||
# type: string
|
||||
# bodyParameters:
|
||||
# something:
|
||||
# name: something
|
||||
# description: The things we should do.
|
||||
# required: true
|
||||
# example:
|
||||
# - string 1
|
||||
# - string 2
|
||||
# type: 'string[]'
|
||||
# responses:
|
||||
# - status: 200
|
||||
# description: 'When the thing was done smoothly.'
|
||||
# content: # Your response content can be an object, an array, a string or empty.
|
||||
# {
|
||||
# "hey": "ho ho ho"
|
||||
# }
|
||||
# responseFields:
|
||||
# hey:
|
||||
# name: hey
|
||||
# description: Who knows?
|
||||
# type: string # This is optional
|
||||
@@ -1,11 +0,0 @@
|
||||
# Introduction
|
||||
|
||||
This documentation aims to provide the information you need to work with the Snipe-IT JSON REST API.
|
||||
|
||||
<aside>
|
||||
<strong>Base URL</strong>: <code>https://snipe-it.test/api/v1</code>
|
||||
</aside>
|
||||
|
||||
<aside>As you scroll, you'll see code examples for working with the API in different programming languages in the dark area to the right (or as part of the content on mobile).
|
||||
You can switch the language used with the tabs at the top right (or from the nav menu at the top left on mobile).</aside>
|
||||
|
||||
+2
-1
@@ -68,7 +68,8 @@ Thanks goes to all of these wonderful people ([emoji key](https://github.com/ken
|
||||
| [<img src="https://avatars.githubusercontent.com/u/181059?v=4" width="110px;"/><br /><sub>Juan Font</sub>](https://github.com/juanfont)<br />[💻](https://github.com/snipe/snipe-it/commits?author=juanfont "Code") | [<img src="https://avatars.githubusercontent.com/u/13137708?v=4" width="110px;"/><br /><sub>Juho Taipale</sub>](https://github.com/juhotaipale)<br />[💻](https://github.com/snipe/snipe-it/commits?author=juhotaipale "Code") | [<img src="https://avatars.githubusercontent.com/u/1007419?v=4" width="110px;"/><br /><sub>Korvin Szanto</sub>](https://github.com/KorvinSzanto)<br />[💻](https://github.com/snipe/snipe-it/commits?author=KorvinSzanto "Code") | [<img src="https://avatars.githubusercontent.com/u/8513053?v=4" width="110px;"/><br /><sub>Lewis Foster</sub>](https://lewisfoster.foo/)<br />[💻](https://github.com/snipe/snipe-it/commits?author=sniff122 "Code") | [<img src="https://avatars.githubusercontent.com/u/33877541?v=4" width="110px;"/><br /><sub>Logan Swartzendruber</sub>](https://github.com/loganswartz)<br />[💻](https://github.com/snipe/snipe-it/commits?author=loganswartz "Code") | [<img src="https://avatars.githubusercontent.com/u/1156208?v=4" width="110px;"/><br /><sub>Lorenzo P.</sub>](https://github.com/lopezio)<br />[💻](https://github.com/snipe/snipe-it/commits?author=lopezio "Code") | [<img src="https://avatars.githubusercontent.com/u/33946590?v=4" width="110px;"/><br /><sub>Lukas Jung</sub>](https://github.com/m4us1ne)<br />[💻](https://github.com/snipe/snipe-it/commits?author=m4us1ne "Code") |
|
||||
| [<img src="https://avatars.githubusercontent.com/u/10965027?v=4" width="110px;"/><br /><sub>Ellie</sub>](https://leafedfox.xyz/)<br />[💻](https://github.com/snipe/snipe-it/commits?author=LeafedFox "Code") | [<img src="https://avatars.githubusercontent.com/u/20960555?v=4" width="110px;"/><br /><sub>GA Stamper</sub>](https://github.com/gastamper)<br />[💻](https://github.com/snipe/snipe-it/commits?author=gastamper "Code") | [<img src="https://avatars.githubusercontent.com/u/206553556?v=4" width="110px;"/><br /><sub>Guillaume Lefranc</sub>](https://github.com/gl-pup)<br />[💻](https://github.com/snipe/snipe-it/commits?author=gl-pup "Code") | [<img src="https://avatars.githubusercontent.com/u/733892?v=4" width="110px;"/><br /><sub>Hajo Möller</sub>](https://github.com/dasjoe)<br />[💻](https://github.com/snipe/snipe-it/commits?author=dasjoe "Code") | [<img src="https://avatars.githubusercontent.com/u/3420063?v=4" width="110px;"/><br /><sub>Istvan Basa</sub>](https://github.com/pottom)<br />[💻](https://github.com/snipe/snipe-it/commits?author=pottom "Code") | [<img src="https://avatars.githubusercontent.com/u/810824?v=4" width="110px;"/><br /><sub>JJ Asghar</sub>](https://jjasghar.github.io/)<br />[💻](https://github.com/snipe/snipe-it/commits?author=jjasghar "Code") | [<img src="https://avatars.githubusercontent.com/u/40404495?v=4" width="110px;"/><br /><sub>James E. Msenga</sub>](https://github.com/JemCdo)<br />[💻](https://github.com/snipe/snipe-it/commits?author=JemCdo "Code") |
|
||||
| [<img src="https://avatars.githubusercontent.com/u/6865786?v=4" width="110px;"/><br /><sub>Jan Felix Wiebe</sub>](https://github.com/jfwiebe)<br />[💻](https://github.com/snipe/snipe-it/commits?author=jfwiebe "Code") | [<img src="https://avatars.githubusercontent.com/u/43412008?v=4" width="110px;"/><br /><sub>Jo Drexl</sub>](https://www.nfon.com/)<br />[💻](https://github.com/snipe/snipe-it/commits?author=drexljo "Code") | [<img src="https://avatars.githubusercontent.com/u/4807843?v=4" width="110px;"/><br /><sub>Austin Sasko</sub>](https://github.com/austinsasko)<br />[💻](https://github.com/snipe/snipe-it/commits?author=austinsasko "Code") | [<img src="https://avatars.githubusercontent.com/u/4875039?v=4" width="110px;"/><br /><sub>Jasson</sub>](http://jassoncordones.github.io)<br />[💻](https://github.com/snipe/snipe-it/commits?author=JassonCordones "Code") | [<img src="https://avatars.githubusercontent.com/u/76069640?v=4" width="110px;"/><br /><sub>Okean</sub>](https://github.com/Tinyblargon)<br />[💻](https://github.com/snipe/snipe-it/commits?author=Tinyblargon "Code") | [<img src="https://avatars.githubusercontent.com/u/6515064?v=4" width="110px;"/><br /><sub>Alejandro Medrano</sub>](https://www.lst.tfo.upm.es/alejandro-medrano/)<br />[💻](https://github.com/snipe/snipe-it/commits?author=amedranogil "Code") | [<img src="https://avatars.githubusercontent.com/u/58696401?v=4" width="110px;"/><br /><sub>Lukas Kraic</sub>](https://github.com/lukaskraic)<br />[💻](https://github.com/snipe/snipe-it/commits?author=lukaskraic "Code") |
|
||||
| [<img src="https://avatars.githubusercontent.com/u/1571724?v=4" width="110px;"/><br /><sub>Герхард PICCORO Lenz McKAY </sub>](https://github-readme-stats.vercel.app/api?username=mckaygerhard)<br />[💻](https://github.com/snipe/snipe-it/commits?author=mckaygerhard "Code") | [<img src="https://avatars.githubusercontent.com/u/15015119?v=4" width="110px;"/><br /><sub>Johannes Pollitt</sub>](https://github.com/FlorestanII)<br />[💻](https://github.com/snipe/snipe-it/commits?author=FlorestanII "Code") | [<img src="https://avatars.githubusercontent.com/u/14185442?v=4" width="110px;"/><br /><sub>Michael Strobel</sub>](https://strobelm.de)<br />[💻](https://github.com/snipe/snipe-it/commits?author=strobelm "Code") | [<img src="https://avatars.githubusercontent.com/u/634790?v=4" width="110px;"/><br /><sub>Nicky West</sub>](http://nickwest.me)<br />[💻](https://github.com/snipe/snipe-it/commits?author=nickwest "Code") | [<img src="https://avatars.githubusercontent.com/u/1347327?v=4" width="110px;"/><br /><sub>akaspeh1</sub>](https://github.com/akaspeh1)<br />[💻](https://github.com/snipe/snipe-it/commits?author=akaspeh1 "Code") |
|
||||
| [<img src="https://avatars.githubusercontent.com/u/1571724?v=4" width="110px;"/><br /><sub>Герхард PICCORO Lenz McKAY </sub>](https://github-readme-stats.vercel.app/api?username=mckaygerhard)<br />[💻](https://github.com/snipe/snipe-it/commits?author=mckaygerhard "Code") | [<img src="https://avatars.githubusercontent.com/u/15015119?v=4" width="110px;"/><br /><sub>Johannes Pollitt</sub>](https://github.com/FlorestanII)<br />[💻](https://github.com/snipe/snipe-it/commits?author=FlorestanII "Code") | [<img src="https://avatars.githubusercontent.com/u/14185442?v=4" width="110px;"/><br /><sub>Michael Strobel</sub>](https://strobelm.de)<br />[💻](https://github.com/snipe/snipe-it/commits?author=strobelm "Code") | [<img src="https://avatars.githubusercontent.com/u/634790?v=4" width="110px;"/><br /><sub>Nicky West</sub>](http://nickwest.me)<br />[💻](https://github.com/snipe/snipe-it/commits?author=nickwest "Code") | [<img src="https://avatars.githubusercontent.com/u/1347327?v=4" width="110px;"/><br /><sub>akaspeh1</sub>](https://github.com/akaspeh1)<br />[💻](https://github.com/snipe/snipe-it/commits?author=akaspeh1 "Code") | [<img src="https://avatars.githubusercontent.com/u/2880129?v=4" width="110px;"/><br /><sub>Sebastian Marsching</sub>](http://sebastian.marsching.com/)<br />[💻](https://github.com/snipe/snipe-it/commits?author=smarsching "Code") | [<img src="https://avatars.githubusercontent.com/u/40658372?v=4" width="110px;"/><br /><sub>Mo</sub>](https://github.com/mohammad-ahmadi1)<br />[💻](https://github.com/snipe/snipe-it/commits?author=mohammad-ahmadi1 "Code") |
|
||||
| [<img src="https://avatars.githubusercontent.com/u/20994684?v=4" width="110px;"/><br /><sub>Owen V. Hayes</sub>](https://github.com/MarvelousAnything)<br />[💻](https://github.com/snipe/snipe-it/commits?author=MarvelousAnything "Code") |
|
||||
<!-- ALL-CONTRIBUTORS-LIST:END -->
|
||||
|
||||
This project follows the [all-contributors](https://github.com/kentcdodds/all-contributors) specification. Contributions of any kind welcome!
|
||||
|
||||
@@ -83,6 +83,7 @@ Since the release of the JSON REST API, several third-party developers have been
|
||||
- [jamf2snipe](https://github.com/grokability/jamf2snipe) - Python script to sync assets between a JAMFPro instance and a Snipe-IT instance
|
||||
- [jamf-snipe-rename](https://macblog.org/jamf-snipe-rename/) - Python script to rename computers in Jamf from Snipe-IT
|
||||
- [Snipe-IT plugin for Jira Service Desk](https://marketplace.atlassian.com/apps/1220964/snipe-it-for-jira)
|
||||
- [Rudder2Snipe](https://github.com/norbertoaquino/rudder2snipe) by [@norbertoaquino](https://github.com/norbertoaquino) - Rudder.io integration for Snipe-IT
|
||||
- [Python 3 CSV importer](https://github.com/gastamper/snipeit-csvimporter) - allows importing assets into Snipe-IT based on Item Name rather than Asset Tag.
|
||||
- [Snipe-IT Kubernetes Helm Chart](https://github.com/t3n/helm-charts/tree/master/snipeit) - For more information, [click here](https://hub.helm.sh/charts/t3n/snipeit).
|
||||
- [Snipe-IT Bulk Edit](https://github.com/bricelabelle/snipe-it-bulkedit) - Google Script files to use Google Sheets as a bulk checkout/checkin/edit tool for Snipe-IT.
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
<?php
|
||||
|
||||
namespace App\Actions\Categories;
|
||||
|
||||
use App\Exceptions\ItemStillHasAccessories;
|
||||
use App\Exceptions\ItemStillHasAssetModels;
|
||||
use App\Exceptions\ItemStillHasAssets;
|
||||
use App\Exceptions\ItemStillHasComponents;
|
||||
use App\Exceptions\ItemStillHasConsumables;
|
||||
use App\Exceptions\ItemStillHasLicenses;
|
||||
use App\Models\Category;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
|
||||
class DestroyCategoryAction
|
||||
{
|
||||
/**
|
||||
* @throws ItemStillHasAssets
|
||||
* @throws ItemStillHasAssetModels
|
||||
* @throws ItemStillHasComponents
|
||||
* @throws ItemStillHasAccessories
|
||||
* @throws ItemStillHasLicenses
|
||||
* @throws ItemStillHasConsumables
|
||||
*/
|
||||
static function run(Category $category): bool
|
||||
{
|
||||
$category->loadCount([
|
||||
'assets as assets_count',
|
||||
'accessories as accessories_count',
|
||||
'consumables as consumables_count',
|
||||
'components as components_count',
|
||||
'licenses as licenses_count',
|
||||
'models as models_count'
|
||||
]);
|
||||
|
||||
if ($category->assets_count > 0) {
|
||||
throw new ItemStillHasAssets($category);
|
||||
}
|
||||
if ($category->accessories_count > 0) {
|
||||
throw new ItemStillHasAccessories($category);
|
||||
}
|
||||
if ($category->consumables_count > 0) {
|
||||
throw new ItemStillHasConsumables($category);
|
||||
}
|
||||
if ($category->components_count > 0) {
|
||||
throw new ItemStillHasComponents($category);
|
||||
}
|
||||
if ($category->licenses_count > 0) {
|
||||
throw new ItemStillHasLicenses($category);
|
||||
}
|
||||
if ($category->models_count > 0) {
|
||||
throw new ItemStillHasAssetModels($category);
|
||||
}
|
||||
|
||||
Storage::disk('public')->delete('categories'.'/'.$category->image);
|
||||
$category->delete();
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
<?php
|
||||
|
||||
namespace App\Actions\Manufacturers;
|
||||
|
||||
use App\Exceptions\ItemStillHasAccessories;
|
||||
use App\Exceptions\ItemStillHasAssets;
|
||||
use App\Exceptions\ItemStillHasComponents;
|
||||
use App\Exceptions\ItemStillHasConsumables;
|
||||
use App\Exceptions\ItemStillHasLicenses;
|
||||
use App\Models\Manufacturer;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
|
||||
class DeleteManufacturerAction
|
||||
{
|
||||
/**
|
||||
* @throws ItemStillHasAssets
|
||||
* @throws ItemStillHasComponents
|
||||
* @throws ItemStillHasAccessories
|
||||
* @throws ItemStillHasLicenses
|
||||
* @throws ItemStillHasConsumables
|
||||
*/
|
||||
static function run(Manufacturer $manufacturer): bool
|
||||
{
|
||||
$manufacturer->loadCount([
|
||||
'assets as assets_count',
|
||||
'accessories as accessories_count',
|
||||
'consumables as consumables_count',
|
||||
'components as components_count',
|
||||
'licenses as licenses_count',
|
||||
]);
|
||||
|
||||
if ($manufacturer->assets_count > 0) {
|
||||
throw new ItemStillHasAssets($manufacturer);
|
||||
}
|
||||
if ($manufacturer->accessories_count > 0) {
|
||||
throw new ItemStillHasAccessories($manufacturer);
|
||||
}
|
||||
if ($manufacturer->consumables_count > 0) {
|
||||
throw new ItemStillHasConsumables($manufacturer);
|
||||
}
|
||||
if ($manufacturer->components_count > 0) {
|
||||
throw new ItemStillHasComponents($manufacturer);
|
||||
}
|
||||
if ($manufacturer->licenses_count > 0) {
|
||||
throw new ItemStillHasLicenses($manufacturer);
|
||||
}
|
||||
|
||||
if ($manufacturer->image) {
|
||||
try {
|
||||
Storage::disk('public')->delete('manufacturers/'.$manufacturer->image);
|
||||
} catch (\Exception $e) {
|
||||
Log::info($e);
|
||||
}
|
||||
}
|
||||
|
||||
$manufacturer->delete();
|
||||
//dd($manufacturer);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
<?php
|
||||
|
||||
namespace App\Actions\Suppliers;
|
||||
|
||||
use App\Exceptions\ItemStillHasAccessories;
|
||||
use App\Exceptions\ItemStillHasComponents;
|
||||
use App\Exceptions\ItemStillHasConsumables;
|
||||
use App\Models\Supplier;
|
||||
use App\Exceptions\ItemStillHasAssets;
|
||||
use App\Exceptions\ItemStillHasMaintenances;
|
||||
use App\Exceptions\ItemStillHasLicenses;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
|
||||
class DestroySupplierAction
|
||||
{
|
||||
/**
|
||||
*
|
||||
* @throws ItemStillHasLicenses
|
||||
* @throws ItemStillHasAssets
|
||||
* @throws ItemStillHasMaintenances
|
||||
* @throws ItemStillHasAccessories
|
||||
* @throws ItemStillHasConsumables
|
||||
* @throws ItemStillHasComponents
|
||||
*/
|
||||
static function run(Supplier $supplier): bool
|
||||
{
|
||||
$supplier->loadCount([
|
||||
'maintenances as maintenances_count',
|
||||
'assets as assets_count',
|
||||
'licenses as licenses_count',
|
||||
'accessories as accessories_count',
|
||||
'consumables as consumables_count',
|
||||
'components as components_count',
|
||||
]);
|
||||
if ($supplier->assets_count > 0) {
|
||||
throw new ItemStillHasAssets($supplier);
|
||||
}
|
||||
|
||||
if ($supplier->maintenances_count > 0) {
|
||||
throw new ItemStillHasMaintenances($supplier);
|
||||
}
|
||||
|
||||
if ($supplier->licenses_count > 0) {
|
||||
throw new ItemStillHasLicenses($supplier);
|
||||
}
|
||||
|
||||
if ($supplier->accessories_count > 0) {
|
||||
throw new ItemStillHasAccessories($supplier);
|
||||
}
|
||||
|
||||
if ($supplier->consumables_count > 0) {
|
||||
throw new ItemStillHasConsumables($supplier);
|
||||
}
|
||||
|
||||
if ($supplier->components_count > 0) {
|
||||
throw new ItemStillHasComponents($supplier);
|
||||
}
|
||||
|
||||
if ($supplier->image) {
|
||||
try {
|
||||
Storage::disk('public')->delete('suppliers/'.$supplier->image);
|
||||
} catch (\Exception $e) {
|
||||
Log::info($e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
$supplier->delete();
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -317,9 +317,21 @@ class LdapSync extends Command
|
||||
if($ldap_map["jobtitle"] != null){
|
||||
$user->jobtitle = $item['jobtitle'];
|
||||
}
|
||||
if($ldap_map["address"] != null){
|
||||
$user->address = $item['address'];
|
||||
}
|
||||
if($ldap_map["city"] != null){
|
||||
$user->city = $item['city'];
|
||||
}
|
||||
if($ldap_map["state"] != null){
|
||||
$user->state = $item['state'];
|
||||
}
|
||||
if($ldap_map["country"] != null){
|
||||
$user->country = $item['country'];
|
||||
}
|
||||
if($ldap_map["zip"] != null){
|
||||
$user->zip = $item['zip'];
|
||||
}
|
||||
if($ldap_map["dept"] != null){
|
||||
$user->department_id = $department->id;
|
||||
}
|
||||
|
||||
@@ -8,8 +8,6 @@ use Symfony\Component\Console\Input\InputOption;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Symfony\Component\Console\Helper\ProgressIndicator;
|
||||
|
||||
ini_set('max_execution_time', env('IMPORT_TIME_LIMIT', 600)); //600 seconds = 10 minutes
|
||||
ini_set('memory_limit', env('IMPORT_MEMORY_LIMIT', '500M'));
|
||||
|
||||
/**
|
||||
* Class ObjectImportCommand
|
||||
@@ -52,10 +50,13 @@ class ObjectImportCommand extends Command
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
ini_set('max_execution_time', env('IMPORT_TIME_LIMIT', 600)); //600 seconds = 10 minutes
|
||||
ini_set('memory_limit', env('IMPORT_MEMORY_LIMIT', '500M'));
|
||||
|
||||
$this->progressIndicator = new ProgressIndicator($this->output);
|
||||
|
||||
$filename = $this->argument('filename');
|
||||
$class = title_case($this->option('item-type'));
|
||||
$class = ucfirst($this->option('item-type'));
|
||||
$classString = "App\\Importer\\{$class}Importer";
|
||||
$importer = new $classString($filename);
|
||||
$importer->setCallbacks([$this, 'log'], [$this, 'progress'], [$this, 'errorCallback'])
|
||||
|
||||
@@ -49,14 +49,15 @@ class ResetDemoSettings extends Command
|
||||
$settings->logo = 'snipe-logo.png';
|
||||
$settings->alert_email = 'service@snipe-it.io';
|
||||
$settings->login_note = 'Use `admin` / `password` to login to the demo.';
|
||||
$settings->header_color = null;
|
||||
$settings->header_color = '#3c8dbc';
|
||||
$settings->link_dark_color = '#86cbf2';
|
||||
$settings->link_light_color = '#084d73;';
|
||||
$settings->label2_2d_type = 'QRCODE';
|
||||
$settings->default_currency = 'USD';
|
||||
$settings->brand = 2;
|
||||
$settings->ldap_enabled = 0;
|
||||
$settings->full_multiple_companies_support = 0;
|
||||
$settings->label2_1d_type = 'C128';
|
||||
$settings->skin = '';
|
||||
$settings->email_domain = 'snipeitapp.com';
|
||||
$settings->email_format = 'filastname';
|
||||
$settings->username_format = 'filastname';
|
||||
@@ -80,6 +81,8 @@ class ResetDemoSettings extends Command
|
||||
|
||||
if ($user = User::where('username', '=', 'admin')->first()) {
|
||||
$user->locale = 'en-US';
|
||||
$user->enable_confetti = 1;
|
||||
$user->enable_sounds = 1;
|
||||
$user->save();
|
||||
}
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ class SQLStreamer {
|
||||
/* we *could* have made the ^INSERT INTO blah VALUES$ turn on the capturing state, and closed it with
|
||||
a ^(blahblah);$ but it's cleaner to not have to manage the state machine. We're just going to
|
||||
assume that (blahblah), or (blahblah); are values for INSERT and are always acceptable. */
|
||||
"<^/\*!40101 SET NAMES '?[a-zA-Z0-9_-]+'? \*/;$>" => false, //using weird delimiters (<,>) for readability. allow quoted or unquoted charsets
|
||||
"<^/\*![0-9]{5} SET NAMES '?[a-zA-Z0-9_-]+'? \*/;$>" => false, //using weird delimiters (<,>) for readability. allow quoted or unquoted charsets
|
||||
"<^/\*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' \*/;$>" => false, //same, now handle zero-values
|
||||
];
|
||||
|
||||
|
||||
@@ -3,13 +3,18 @@
|
||||
namespace App\Console\Commands;
|
||||
|
||||
use App\Mail\UnacceptedAssetReminderMail;
|
||||
use App\Models\Accessory;
|
||||
use App\Models\Asset;
|
||||
use App\Models\CheckoutAcceptance;
|
||||
use App\Models\Component;
|
||||
use App\Models\Consumable;
|
||||
use App\Models\LicenseSeat;
|
||||
use App\Models\Setting;
|
||||
use App\Models\User;
|
||||
use App\Notifications\CheckoutAssetNotification;
|
||||
use App\Notifications\CurrentInventory;
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Database\Eloquent\Relations\MorphTo;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
|
||||
class SendAcceptanceReminder extends Command
|
||||
@@ -26,7 +31,7 @@ class SendAcceptanceReminder extends Command
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'This will resend users with unaccepted assets a reminder to accept or decline them.';
|
||||
protected $description = 'This will resend users with unaccepted items a reminder to accept or decline them.';
|
||||
|
||||
/**
|
||||
* Create a new command instance.
|
||||
@@ -45,19 +50,30 @@ class SendAcceptanceReminder extends Command
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
$pending = CheckoutAcceptance::pending()->where('checkoutable_type', 'App\Models\Asset')
|
||||
->whereHas('checkoutable', function($query) {
|
||||
$query->where('accepted_at', null)
|
||||
->where('declined_at', null);
|
||||
})
|
||||
->with(['assignedTo', 'checkoutable.assignedTo', 'checkoutable.model', 'checkoutable.adminuser'])
|
||||
->get();
|
||||
$pending = CheckoutAcceptance::query()
|
||||
->with([
|
||||
'checkoutable' => function (MorphTo $morph) {
|
||||
$morph->morphWith([
|
||||
Asset::class => ['model.category', 'assignedTo', 'adminuser', 'company', 'checkouts'],
|
||||
Accessory::class => ['category', 'company', 'checkouts'],
|
||||
LicenseSeat::class => ['user', 'license', 'checkouts'],
|
||||
Component::class => ['assignedTo', 'company', 'checkouts'],
|
||||
Consumable::class => ['company', 'checkouts'],
|
||||
]);
|
||||
},
|
||||
'assignedTo',
|
||||
])
|
||||
->whereHasMorph(
|
||||
'checkoutable',
|
||||
[Asset::class, Accessory::class, LicenseSeat::class, Component::class, Consumable::class],
|
||||
fn ($q) => $q->whereNull('accepted_at')
|
||||
->whereNull('declined_at')
|
||||
)
|
||||
->pending()
|
||||
->get();
|
||||
|
||||
$count = 0;
|
||||
$unacceptedAssetGroups = $pending
|
||||
->filter(function($acceptance) {
|
||||
return $acceptance->checkoutable_type == 'App\Models\Asset';
|
||||
})
|
||||
->map(function($acceptance) {
|
||||
return ['assetItem' => $acceptance->checkoutable, 'acceptance' => $acceptance];
|
||||
})
|
||||
|
||||
@@ -9,6 +9,8 @@ use App\Notifications\ExpectedCheckinAdminNotification;
|
||||
use App\Notifications\ExpectedCheckinNotification;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Support\Facades\Notification;
|
||||
use App\Helpers\Helper;
|
||||
|
||||
class SendExpectedCheckinAlerts extends Command
|
||||
{
|
||||
@@ -17,7 +19,7 @@ class SendExpectedCheckinAlerts extends Command
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $name = 'snipeit:expected-checkin';
|
||||
protected $signature = 'snipeit:expected-checkin {--with-output : Display the results in a table in your console in addition to sending the email}';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
@@ -42,19 +44,47 @@ class SendExpectedCheckinAlerts extends Command
|
||||
public function handle()
|
||||
{
|
||||
$settings = Setting::getSettings();
|
||||
$interval = $settings->audit_warning_days ?? 0;
|
||||
$interval = $settings->due_checkin_days ?? 0;
|
||||
$today = Carbon::now();
|
||||
$interval_date = $today->copy()->addDays($interval);
|
||||
|
||||
$count = 0;
|
||||
|
||||
if (!$this->option('with-output')) {
|
||||
$this->info('Run this command with the --with-output option to see the full list in the console.');
|
||||
}
|
||||
|
||||
$assets = Asset::whereNull('deleted_at')->DueOrOverdueForCheckin($settings)->orderBy('assets.expected_checkin', 'desc')->get();
|
||||
|
||||
$this->info($assets->count().' assets must be checked in on or before '.$interval_date.' is deadline');
|
||||
$this->info($assets->count().' assets must be checked on or before '.Helper::getFormattedDateObject($interval_date, 'date', false));
|
||||
|
||||
|
||||
foreach ($assets as $asset) {
|
||||
if ($asset->assignedTo && (isset($asset->assignedTo->email)) && ($asset->assignedTo->email!='') && $asset->checkedOutToUser()) {
|
||||
$this->info('Sending User ExpectedCheckinNotification to: '.$asset->assignedTo->email);
|
||||
$asset->assignedTo->notify((new ExpectedCheckinNotification($asset)));
|
||||
$count++;
|
||||
}
|
||||
}
|
||||
|
||||
if ($this->option('with-output')) {
|
||||
if (($assets) && ($assets->count() > 0) && ($settings->alert_email != '')) {
|
||||
$this->table(
|
||||
[
|
||||
trans('general.id'),
|
||||
trans('admin/hardware/form.tag'),
|
||||
trans('admin/hardware/form.model'),
|
||||
trans('general.model_no'),
|
||||
trans('general.purchase_date'),
|
||||
trans('admin/hardware/form.expected_checkin'),
|
||||
],
|
||||
$assets->map(fn($assets) => [
|
||||
trans('general.id') => $assets->id,
|
||||
trans('admin/hardware/form.tag') => $assets->asset_tag,
|
||||
trans('admin/hardware/form.model') => $assets->model->name,
|
||||
trans('general.model_no') => $assets->model->model_number,
|
||||
trans('general.purchase_date') => $assets->purchase_date_formatted,
|
||||
trans('admin/hardware/form.eol_date') => $assets->expected_checkin_formattedDate ? $assets->expected_checkin_formattedDate . ' (' . $assets->expected_checkin_diff_for_humans . ')' : '',
|
||||
])
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -63,10 +93,11 @@ class SendExpectedCheckinAlerts extends Command
|
||||
$recipients = collect(explode(',', $settings->alert_email))->map(function ($item) {
|
||||
return new AlertRecipient($item);
|
||||
});
|
||||
|
||||
$this->info('Sending Admin ExpectedCheckinNotification to: '.$settings->alert_email);
|
||||
\Notification::send($recipients, new ExpectedCheckinAdminNotification($assets));
|
||||
Notification::send($recipients, new ExpectedCheckinAdminNotification($assets));
|
||||
|
||||
}
|
||||
|
||||
$this->info('Sent checkin reminders to to '.$count.' users.');
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,11 +14,11 @@ use Illuminate\Support\Facades\Mail;
|
||||
class SendExpirationAlerts extends Command
|
||||
{
|
||||
/**
|
||||
* The console command name.
|
||||
*
|
||||
* The name and signature of the console command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $name = 'snipeit:expiring-alerts';
|
||||
protected $signature = 'snipeit:expiring-alerts {--expired-licenses}';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
@@ -85,7 +85,7 @@ class SendExpirationAlerts extends Command
|
||||
}
|
||||
|
||||
// Expiring licenses
|
||||
$licenses = License::query()->ExpiringLicenses($alert_interval)
|
||||
$licenses = License::query()->ExpiringLicenses($alert_interval, $this->option('expired-licenses'))
|
||||
->with('manufacturer','category')
|
||||
->orderBy('expiration_date', 'ASC')
|
||||
->orderBy('termination_date', 'ASC')
|
||||
@@ -107,7 +107,7 @@ class SendExpirationAlerts extends Command
|
||||
trans('general.name') => $item->name,
|
||||
trans('general.purchase_date') => $item->purchase_date_formatted,
|
||||
trans('admin/licenses/form.expiration') => $item->expires_formatted_date,
|
||||
trans('mail.expires') => $item->expires_diff_for_humans,
|
||||
trans('mail.expires') => $item->expires_formatted_date ? $item->expires_diff_for_humans : '',
|
||||
trans('admin/licenses/form.termination_date') => $item->terminates_formatted_date,
|
||||
trans('mail.terminates') => $item->terminates_diff_for_humans
|
||||
])
|
||||
|
||||
@@ -52,7 +52,9 @@ class SendInventoryAlerts extends Command
|
||||
return new AlertRecipient($item);
|
||||
});
|
||||
|
||||
\Notification::send($recipients, new InventoryAlert($items, $settings->alert_threshold));
|
||||
Notification::send($recipients, new InventoryAlert($items, $settings->alert_threshold));
|
||||
} else {
|
||||
$this->info('No low inventory items found. No mail sent.');
|
||||
}
|
||||
} else {
|
||||
if ($settings->alert_email == '') {
|
||||
|
||||
@@ -16,7 +16,7 @@ class SendUpcomingAuditReport extends Command
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'snipeit:upcoming-audits';
|
||||
protected $signature = 'snipeit:upcoming-audits {--with-output : Display the results in a table in your console in addition to sending the email}';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
@@ -47,43 +47,69 @@ class SendUpcomingAuditReport extends Command
|
||||
$today = Carbon::now();
|
||||
$interval_date = $today->copy()->addDays($interval);
|
||||
|
||||
$assets = Asset::whereNull('deleted_at')->dueOrOverdueForAudit($settings)->orderBy('assets.next_audit_date', 'asc')->get();
|
||||
$this->info($assets->count() . ' assets must be audited in on or before ' . $interval_date . ' is deadline');
|
||||
|
||||
|
||||
if ((count($assets) !== 0) && ($assets->count() > 0) && ($settings->alert_email != '')) {
|
||||
// Send a rollup to the admin, if settings dictate
|
||||
$recipients = collect(explode(',', $settings->alert_email))
|
||||
->map(fn($item) => trim($item))
|
||||
->filter(fn($item) => !empty($item))
|
||||
->all();
|
||||
|
||||
|
||||
$this->info('Sending Admin SendUpcomingAuditNotification to: ' . $settings->alert_email);
|
||||
Mail::to($recipients)->send(new SendUpcomingAuditMail($assets, $settings->audit_warning_days));
|
||||
|
||||
$this->table(
|
||||
[
|
||||
trans('general.id'),
|
||||
trans('general.name'),
|
||||
trans('general.last_audit'),
|
||||
trans('general.next_audit_date'),
|
||||
trans('mail.Days'),
|
||||
trans('mail.supplier'),
|
||||
trans('mail.assigned_to'),
|
||||
|
||||
],
|
||||
$assets->map(fn($item) => [
|
||||
trans('general.id') => $item->id,
|
||||
trans('general.name') => $item->display_name,
|
||||
trans('general.last_audit') => $item->last_audit_formatted_date,
|
||||
trans('general.next_audit_date') => $item->next_audit_formatted_date,
|
||||
trans('mail.Days') => round($item->next_audit_diff_in_days),
|
||||
trans('mail.supplier') => $item->supplier ? $item->supplier->name : '',
|
||||
trans('mail.assigned_to') => $item->assignedTo ? $item->assignedTo->display_name : '',
|
||||
])
|
||||
);
|
||||
$assets_query = Asset::whereNull('deleted_at')->dueOrOverdueForAudit($settings)->orderBy('assets.next_audit_date', 'asc')->with('supplier');
|
||||
$asset_count = $assets_query->count();
|
||||
$this->info(number_format($asset_count) . ' assets must be audited on or before ' . $interval_date);
|
||||
if (!$this->option('with-output')) {
|
||||
$this->info('Run this command with the --with-output option to see the full list in the console.');
|
||||
}
|
||||
|
||||
|
||||
if ($asset_count > 0) {
|
||||
|
||||
$assets_for_email = $assets_query->limit(30)->get();
|
||||
|
||||
// Send a rollup to the admin, if settings dictate
|
||||
if ($settings->alert_email != '') {
|
||||
|
||||
$recipients = collect(explode(',', $settings->alert_email))
|
||||
->map(fn($item) => trim($item))
|
||||
->filter(fn($item) => !empty($item))
|
||||
->all();
|
||||
|
||||
Mail::to($recipients)->send(new SendUpcomingAuditMail($assets_for_email, $settings->audit_warning_days, $asset_count));
|
||||
$this->info('Audit notification sent to: ' . $settings->alert_email);
|
||||
|
||||
} else {
|
||||
$this->info('There is no admin alert email set so no email will be sent.');
|
||||
}
|
||||
|
||||
|
||||
|
||||
if ($this->option('with-output')) {
|
||||
|
||||
|
||||
// Get the full list if the user wants output in the console
|
||||
$assets_for_output = $assets_query->limit(null)->get();
|
||||
|
||||
$this->table(
|
||||
[
|
||||
trans('general.id'),
|
||||
trans('general.name'),
|
||||
trans('general.last_audit'),
|
||||
trans('general.next_audit_date'),
|
||||
trans('mail.Days'),
|
||||
trans('mail.supplier'),
|
||||
trans('mail.assigned_to'),
|
||||
|
||||
],
|
||||
$assets_for_output->map(fn($item) => [
|
||||
trans('general.id') => $item->id,
|
||||
trans('general.name') => $item->display_name,
|
||||
trans('general.last_audit') => $item->last_audit_formatted_date,
|
||||
trans('general.next_audit_date') => $item->next_audit_formatted_date,
|
||||
trans('mail.Days') => round($item->next_audit_diff_in_days),
|
||||
trans('mail.supplier') => $item->supplier ? $item->supplier->name : '',
|
||||
trans('mail.assigned_to') => $item->assignedTo ? $item->assignedTo->display_name : '',
|
||||
])
|
||||
);
|
||||
}
|
||||
|
||||
} else {
|
||||
$this->info('There are no assets due for audit in the next ' . $interval . ' days.');
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,6 +37,8 @@ class SystemBackup extends Command
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
ini_set('max_execution_time', env('BACKUP_TIME_LIMIT', 600)); //600 seconds = 10 minutes
|
||||
|
||||
if ($this->option('filename')) {
|
||||
$filename = $this->option('filename');
|
||||
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
namespace App\Enums;
|
||||
enum ActionType: string
|
||||
{
|
||||
// General
|
||||
case Create = 'create';
|
||||
case Update = 'update';
|
||||
case Delete = 'delete';
|
||||
case Restore = 'restore';
|
||||
|
||||
// Assets/Accessories/Components/Licenses/Consumables
|
||||
case Checkout = 'checkout';
|
||||
case CheckinFrom = 'checkin from';
|
||||
case Requested = 'requested';
|
||||
case RequestCanceled = 'request canceled';
|
||||
case Accepted = 'accepted';
|
||||
case Declined = 'declined';
|
||||
case Audit = 'audit';
|
||||
case NoteAdded = 'note added';
|
||||
|
||||
// Users
|
||||
case TwoFactorReset = '2FA reset';
|
||||
case Merged = 'merged';
|
||||
|
||||
// Licenses
|
||||
case DeleteSeats = 'delete seats';
|
||||
case AddSeats = 'add seats';
|
||||
|
||||
// File Uploads
|
||||
case Uploaded = 'uploaded';
|
||||
case UploadDeleted = 'upload deleted';
|
||||
}
|
||||
@@ -94,7 +94,7 @@ class Handler extends ExceptionHandler
|
||||
|
||||
// Handle API requests that fail because Carbon cannot parse the date on validation (when a submitted date value is definitely not a date)
|
||||
if ($e instanceof InvalidFormatException) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('validation.date', ['attribute' => 'date'])), config('app.validation_status_code'));
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('validation.date', ['attribute' => 'date'])), 200);
|
||||
}
|
||||
|
||||
// Handle API requests that fail because the model doesn't exist
|
||||
@@ -124,7 +124,7 @@ class Handler extends ExceptionHandler
|
||||
// never even get to the controller where we normally nicely format JSON responses
|
||||
if ($e instanceof ValidationException) {
|
||||
$response = $this->invalidJson($request, $e);
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $e->errors()), config('app.validation_status_code'));
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $e->errors()), 200);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -198,7 +198,7 @@ class Handler extends ExceptionHandler
|
||||
|
||||
protected function invalidJson($request, ValidationException $exception)
|
||||
{
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $exception->errors()), config('app.validation_status_code'));
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $exception->errors()), 200);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exceptions;
|
||||
|
||||
use Exception;
|
||||
|
||||
class ItemStillHasAccessories extends ItemStillHasChildren
|
||||
{
|
||||
//
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exceptions;
|
||||
|
||||
use Exception;
|
||||
|
||||
class ItemStillHasAssetModels extends ItemStillHasChildren
|
||||
{
|
||||
//
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exceptions;
|
||||
|
||||
use Exception;
|
||||
|
||||
class ItemStillHasAssets extends ItemStillHasChildren
|
||||
{
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exceptions;
|
||||
|
||||
use Exception;
|
||||
|
||||
class ItemStillHasChildren extends Exception
|
||||
{
|
||||
//public function __construct($message, $code = 0, Exception $previous = null, $parent, $children)
|
||||
//{
|
||||
// trans()
|
||||
//
|
||||
//}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exceptions;
|
||||
|
||||
use Exception;
|
||||
|
||||
class ItemStillHasComponents extends ItemStillHasChildren
|
||||
{
|
||||
//
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exceptions;
|
||||
|
||||
use Exception;
|
||||
|
||||
class ItemStillHasConsumables extends ItemStillHasChildren
|
||||
{
|
||||
//
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exceptions;
|
||||
|
||||
use Exception;
|
||||
|
||||
class ItemStillHasLicenses extends ItemStillHasChildren
|
||||
{
|
||||
//
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Exceptions;
|
||||
|
||||
use Exception;
|
||||
|
||||
class ItemStillHasMaintenances extends ItemStillHasChildren
|
||||
{
|
||||
//
|
||||
}
|
||||
@@ -784,7 +784,7 @@ class Helper
|
||||
|
||||
foreach ($consumables as $consumable) {
|
||||
$avail = $consumable->numRemaining();
|
||||
if ($avail < ($consumable->min_amt) + $alert_threshold) {
|
||||
if ($avail <= ($consumable->min_amt) + $alert_threshold) {
|
||||
if ($consumable->qty > 0) {
|
||||
$percent = number_format((($avail / $consumable->qty) * 100), 0);
|
||||
} else {
|
||||
@@ -803,7 +803,7 @@ class Helper
|
||||
|
||||
foreach ($accessories as $accessory) {
|
||||
$avail = $accessory->qty - $accessory->checkouts_count;
|
||||
if ($avail < ($accessory->min_amt) + $alert_threshold) {
|
||||
if ($avail <= ($accessory->min_amt) + $alert_threshold) {
|
||||
if ($accessory->qty > 0) {
|
||||
$percent = number_format((($avail / $accessory->qty) * 100), 0);
|
||||
} else {
|
||||
@@ -822,7 +822,7 @@ class Helper
|
||||
|
||||
foreach ($components as $component) {
|
||||
$avail = $component->numRemaining();
|
||||
if ($avail < ($component->min_amt) + $alert_threshold) {
|
||||
if ($avail <= ($component->min_amt) + $alert_threshold) {
|
||||
if ($component->qty > 0) {
|
||||
$percent = number_format((($avail / $component->qty) * 100), 0);
|
||||
} else {
|
||||
@@ -845,7 +845,7 @@ class Helper
|
||||
$total_owned = $asset->where('model_id', '=', $asset_model->id)->count();
|
||||
$avail = $asset->where('model_id', '=', $asset_model->id)->whereNull('assigned_to')->count();
|
||||
|
||||
if ($avail < ($asset_model->min_amt) + $alert_threshold) {
|
||||
if ($avail <= ($asset_model->min_amt) + $alert_threshold) {
|
||||
if ($avail > 0) {
|
||||
$percent = number_format((($avail / $total_owned) * 100), 0);
|
||||
} else {
|
||||
@@ -863,7 +863,7 @@ class Helper
|
||||
|
||||
foreach ($licenses as $license){
|
||||
$avail = $license->remaincount();
|
||||
if ($avail < ($license->min_amt) + $alert_threshold) {
|
||||
if ($avail <= ($license->min_amt) + $alert_threshold) {
|
||||
if ($avail > 0) {
|
||||
$percent = number_format((($avail / $license->min_amt) * 100), 0);
|
||||
} else {
|
||||
|
||||
@@ -40,6 +40,8 @@ class IconHelper
|
||||
return 'fa-solid fa-trash-arrow-up';
|
||||
case 'external-link':
|
||||
return 'fa fa-external-link';
|
||||
case 'link':
|
||||
return 'fa fa-link';
|
||||
case 'email':
|
||||
return 'fa-regular fa-envelope';
|
||||
case 'phone':
|
||||
@@ -195,6 +197,10 @@ class IconHelper
|
||||
case 'note':
|
||||
case 'notes':
|
||||
return 'fas fa-sticky-note';
|
||||
case 'tip':
|
||||
return 'fa-solid fa-lightbulb';
|
||||
case 'highlight':
|
||||
return 'fa-solid fa-highlighter';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -182,7 +182,11 @@ class AccessoriesController extends Controller
|
||||
|
||||
$accessory = $request->handleImages($accessory);
|
||||
|
||||
session()->put(['redirect_option' => $request->get('redirect_option')]);
|
||||
if($request->get('redirect_option') === 'back'){
|
||||
session()->put(['redirect_option' => 'index']);
|
||||
} else {
|
||||
session()->put(['redirect_option' => $request->get('redirect_option')]);
|
||||
}
|
||||
|
||||
if ($accessory->save()) {
|
||||
return Helper::getRedirectOption($request, $accessory->id, 'Accessories')
|
||||
|
||||
@@ -13,9 +13,9 @@ use App\Models\Company;
|
||||
use App\Models\Contracts\Acceptable;
|
||||
use App\Models\Setting;
|
||||
use App\Models\User;
|
||||
use App\Notifications\AcceptanceAssetAcceptedNotification;
|
||||
use App\Notifications\AcceptanceAssetAcceptedToUserNotification;
|
||||
use App\Notifications\AcceptanceAssetDeclinedNotification;
|
||||
use App\Notifications\AcceptanceItemAcceptedNotification;
|
||||
use App\Notifications\AcceptanceItemAcceptedToUserNotification;
|
||||
use App\Notifications\AcceptanceItemDeclinedNotification;
|
||||
use Exception;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
@@ -116,8 +116,6 @@ class AcceptanceController extends Controller
|
||||
|
||||
$item = $acceptance->checkoutable_type::find($acceptance->checkoutable_id);
|
||||
|
||||
|
||||
|
||||
// If signatures are required, make sure we have one
|
||||
if (Setting::getSettings()->require_accept_signature == '1') {
|
||||
|
||||
@@ -140,14 +138,14 @@ class AcceptanceController extends Controller
|
||||
// Convert PDF logo to base64 for TCPDF
|
||||
// This is needed for TCPDF to properly embed the image if it's a png and the cache isn't writable
|
||||
$encoded_logo = null;
|
||||
if ($settings->acceptance_pdf_logo) {
|
||||
if (($settings->acceptance_pdf_logo) && (Storage::disk('public')->exists($settings->acceptance_pdf_logo))) {
|
||||
$encoded_logo = base64_encode(file_get_contents(public_path() . '/uploads/' . $settings->acceptance_pdf_logo));
|
||||
}
|
||||
|
||||
// Get the data array ready for the notifications and PDF generation
|
||||
$data = [
|
||||
'item_tag' => $item->asset_tag,
|
||||
'item_name' => $item->name, // this handles licenses seats, which don't have a 'name' field
|
||||
'item_name' => $item->display_name, // this handles licenses seats, which don't have a 'name' field
|
||||
'item_model' => $item->model?->name,
|
||||
'item_serial' => $item->serial,
|
||||
'item_status' => $item->assetstatus?->name,
|
||||
@@ -164,11 +162,9 @@ class AcceptanceController extends Controller
|
||||
'signature' => (($sig_filename && array_key_exists('1', $encoded_image))) ? $encoded_image[1] : null,
|
||||
'logo' => ($encoded_logo) ?? null,
|
||||
'date_settings' => $settings->date_display_format,
|
||||
'admin' => auth()->user()->present()?->fullName,
|
||||
'qty' => $acceptance->qty ?? 1,
|
||||
];
|
||||
|
||||
|
||||
if ($request->input('asset_acceptance') == 'accepted') {
|
||||
|
||||
|
||||
@@ -187,13 +183,13 @@ class AcceptanceController extends Controller
|
||||
// Add the attachment for the signing user into the $data array
|
||||
$data['file'] = $pdf_filename;
|
||||
try {
|
||||
$assigned_user->notify((new AcceptanceAssetAcceptedToUserNotification($data))->locale($assigned_user->locale));
|
||||
$assigned_user->notify((new AcceptanceItemAcceptedToUserNotification($data))->locale($assigned_user->locale));
|
||||
} catch (\Exception $e) {
|
||||
Log::warning($e);
|
||||
}
|
||||
}
|
||||
try {
|
||||
$acceptance->notify((new AcceptanceAssetAcceptedNotification($data))->locale(Setting::getSettings()->locale));
|
||||
$acceptance->notify((new AcceptanceItemAcceptedNotification($data))->locale(Setting::getSettings()->locale));
|
||||
} catch (\Exception $e) {
|
||||
Log::warning($e);
|
||||
}
|
||||
@@ -208,7 +204,7 @@ class AcceptanceController extends Controller
|
||||
$acceptance->decline($sig_filename, $request->input('note'));
|
||||
}
|
||||
|
||||
$acceptance->notify(new AcceptanceAssetDeclinedNotification($data));
|
||||
$acceptance->notify(new AcceptanceItemDeclinedNotification($data));
|
||||
Log::debug('New event acceptance.');
|
||||
event(new CheckoutDeclined($acceptance));
|
||||
$return_msg = trans('admin/users/message.declined');
|
||||
@@ -220,7 +216,7 @@ class AcceptanceController extends Controller
|
||||
try {
|
||||
$recipient = User::find($acceptance->alert_on_response_id);
|
||||
|
||||
if ($recipient) {
|
||||
if ($recipient?->email) {
|
||||
Log::debug('Attempting to send email acceptance.');
|
||||
Mail::to($recipient)->send(new CheckoutAcceptanceResponseMail(
|
||||
$acceptance,
|
||||
|
||||
@@ -11,9 +11,12 @@ use App\Http\Requests\StoreAccessoryRequest;
|
||||
use App\Http\Transformers\AccessoriesTransformer;
|
||||
use App\Http\Transformers\SelectlistTransformer;
|
||||
use App\Models\Accessory;
|
||||
use App\Models\Company;
|
||||
use App\Models\User;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Http\Requests\ImageUploadRequest;
|
||||
use App\Models\AccessoryCheckout;
|
||||
@@ -23,25 +26,11 @@ class AccessoriesController extends Controller
|
||||
use CheckInOutRequest;
|
||||
|
||||
/**
|
||||
* List accessories
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Accessories
|
||||
* @queryParam search string A search term to filter results by. Example: keyboard
|
||||
* @queryParam filter[<fieldname>] string A field to filter by. Example
|
||||
* @queryParam company_id int Filter by company ID. Example: 1
|
||||
* @queryParam category_id int Filter by category ID. Example: 1
|
||||
* @queryParam manufacturer_id int Filter by manufacturer ID. Example: 1
|
||||
* @queryParam supplier_id int Filter by supplier ID. Example: 1
|
||||
* @queryParam location_id int Filter by location ID. Example: 1
|
||||
* @queryParam notes string Filter by notes. Example: For office use only
|
||||
* @queryParam offset int The number of items to skip before starting to collect the result set. Example: 0
|
||||
* @queryParam limit int The number of items to return. Example: 50
|
||||
* @queryParam sort string The field to sort by. Example: created_at
|
||||
* @queryParam order string The order to sort by. Example: desc
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*@since [v4.0]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index(Request $request)
|
||||
{
|
||||
@@ -162,13 +151,9 @@ class AccessoriesController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Create Accessory
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Accessories
|
||||
* @bodyParam name string required The name of the accessory. Example: Apple Bluetooth Keyboard
|
||||
* @bodyParam qty int required The number of accessories to create. Example: 10
|
||||
* @bodyParam category_id int required The ID of the category to assign this accessory to. Example: 1
|
||||
* @bodyParam image file No-example
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
@@ -188,9 +173,8 @@ class AccessoriesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Accessory
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Accessories
|
||||
* @param int $id
|
||||
* @return array
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
@@ -205,11 +189,26 @@ class AccessoriesController extends Controller
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @param int $id
|
||||
* @return array
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
public function accessory_detail($id)
|
||||
{
|
||||
$this->authorize('view', Accessory::class);
|
||||
$accessory = Accessory::findOrFail($id);
|
||||
|
||||
return (new AccessoriesTransformer)->transformAccessory($accessory);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Show Accessory Checkouts
|
||||
* Get the list of checkouts for a specific accessory
|
||||
*
|
||||
* @group Accessories
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -239,9 +238,8 @@ class AccessoriesController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Update accessory.
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Accessories
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -263,9 +261,8 @@ class AccessoriesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Accessory
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Accessories
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -288,12 +285,11 @@ class AccessoriesController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Checkout Accessory
|
||||
* Save the Accessory checkout information.
|
||||
*
|
||||
* If Slack is enabled and/or asset acceptance is enabled, it will also
|
||||
* trigger a Slack message and send an email.
|
||||
*
|
||||
* @group Accessories
|
||||
* @param int $accessoryId
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
@@ -336,9 +332,8 @@ class AccessoriesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Checkin Accessory
|
||||
* Check in the item so that it can be checked out again to someone else
|
||||
*
|
||||
* @group Accessories
|
||||
* @param Request $request
|
||||
* @param int $accessoryUserId
|
||||
* @param string $backto
|
||||
@@ -380,10 +375,8 @@ class AccessoriesController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Selectlist
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Accessories
|
||||
* @queryParam search string A search term to filter results by name. No-example
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
*
|
||||
*/
|
||||
|
||||
@@ -25,9 +25,8 @@ use Illuminate\Http\JsonResponse;
|
||||
class AssetModelsController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Models
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Models
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
@@ -173,9 +172,8 @@ class AssetModelsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Create Model
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Models
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\StoreAssetModelRequest $request
|
||||
@@ -196,12 +194,11 @@ class AssetModelsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Model
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Models
|
||||
* @urlParam id int required The ID of the model.
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
*/
|
||||
public function show($id) : array
|
||||
{
|
||||
@@ -212,13 +209,11 @@ class AssetModelsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* List Assets in Model
|
||||
* Display the specified resource's assets
|
||||
*
|
||||
* @group Models
|
||||
* @urlParam id int required The ID of the model.
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*
|
||||
* @param int $id
|
||||
*/
|
||||
public function assets($id) : array
|
||||
{
|
||||
@@ -230,12 +225,12 @@ class AssetModelsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Update Model
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Models
|
||||
* @urlParam id int required The ID of the model.
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function update(StoreAssetModelRequest $request, $id) : JsonResponse
|
||||
@@ -266,12 +261,11 @@ class AssetModelsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Model
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Models
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @urlParam id int required The ID of the model.
|
||||
* @param int $id
|
||||
*/
|
||||
public function destroy($id) : JsonResponse
|
||||
{
|
||||
@@ -297,9 +291,8 @@ class AssetModelsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Selectlist of Models
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Models
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0.16]
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
|
||||
@@ -3,37 +3,38 @@
|
||||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Events\CheckoutableCheckedIn;
|
||||
use App\Http\Requests\StoreAssetRequest;
|
||||
use App\Http\Requests\UpdateAssetRequest;
|
||||
use App\Http\Traits\MigratesLegacyAssetLocations;
|
||||
use App\Http\Transformers\ComponentsTransformer;
|
||||
use App\Models\AccessoryCheckout;
|
||||
use App\Models\CheckoutAcceptance;
|
||||
use App\Models\LicenseSeat;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Support\Facades\Crypt;
|
||||
use Illuminate\Support\Facades\Gate;
|
||||
use App\Helpers\Helper;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Requests\AssetCheckoutRequest;
|
||||
use App\Http\Requests\FilterRequest;
|
||||
use App\Http\Requests\StoreAssetRequest;
|
||||
use App\Http\Requests\UpdateAssetRequest;
|
||||
use App\Http\Traits\MigratesLegacyAssetLocations;
|
||||
use App\Http\Transformers\AssetsTransformer;
|
||||
use App\Http\Transformers\ComponentsTransformer;
|
||||
use App\Http\Transformers\LicensesTransformer;
|
||||
use App\Http\Transformers\SelectlistTransformer;
|
||||
use App\Models\AccessoryCheckout;
|
||||
use App\Models\Asset;
|
||||
use App\Models\AssetModel;
|
||||
use App\Models\CheckoutAcceptance;
|
||||
use App\Models\Company;
|
||||
use App\Models\CustomField;
|
||||
use App\Models\License;
|
||||
use App\Models\LicenseSeat;
|
||||
use App\Models\Location;
|
||||
use App\Models\Setting;
|
||||
use App\Models\User;
|
||||
use App\View\Label;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Crypt;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\Gate;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use App\View\Label;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
|
||||
@@ -50,35 +51,13 @@ class AssetsController extends Controller
|
||||
use MigratesLegacyAssetLocations;
|
||||
|
||||
/**
|
||||
* List Assets
|
||||
* Returns JSON listing of all assets
|
||||
*
|
||||
* @group Assets
|
||||
* @queryParam action string The action to filter by: audits, checkins. No-example
|
||||
* @queryParam upcoming_status string The status to filter by: `due`, `overdue`, `due-or-overdue`. No-example
|
||||
* @queryParam status string The asset status to filter by: `RTD`, `Deployed`, `Pending`, `Undeployable`, `Archived`, `Requestable`. No-example
|
||||
* @queryParam status_id int The asset status ID to filter by. No-example
|
||||
* @queryParam asset_tag string The asset tag to filter by. No-example
|
||||
* @queryParam serial string The serial number to filter by. No-example
|
||||
* @queryParam requestable boolean Filter by requestable assets. No-example
|
||||
* @queryParam model_id int The model ID or IDs to filter by. No-example
|
||||
* @queryParam category_id int The category ID to filter by. No-example
|
||||
* @queryParam location_id int The location ID to filter by. No-example
|
||||
* @queryParam rtd_location_id int The RTD location ID to filter by. No-example
|
||||
* @queryParam supplier_id int The supplier ID to filter by. No-example
|
||||
* @queryParam asset_eol_date date The asset end-of-life date to filter by. No-example
|
||||
* @queryParam assigned_to int The user ID or department ID the asset is assigned to. No-example
|
||||
* @queryParam assigned_type string The type of assignment, either 'user' or 'asset' or 'location'. Example: user
|
||||
* @queryParam company_id int The company ID to filter by. No-example
|
||||
* @queryParam manufacturer_id int The manufacturer ID to filter by. No-example
|
||||
* @queryParam depreciation_id int The depreciation ID to filter by. No-example
|
||||
* @queryParam byod boolean Filter by BYOD assets. Example: true
|
||||
* @queryParam order_number string The order number to filter by. Example: No-example
|
||||
* @queryParam search string A text string to search for. Example: No-example
|
||||
* @queryParam filter string A JSON object of key/value pairs to filter by. No-example
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $assetId
|
||||
* @since [v4.0]
|
||||
*/
|
||||
public function index(Request $request, $action = null, $upcoming_status = null) : JsonResponse | array
|
||||
public function index(FilterRequest $request, $action = null, $upcoming_status = null) : JsonResponse | array
|
||||
{
|
||||
|
||||
|
||||
@@ -205,7 +184,7 @@ class AssetsController extends Controller
|
||||
// Search custom fields by column name
|
||||
foreach ($all_custom_fields as $field) {
|
||||
if ($request->filled($field->db_column_name()) && $field->db_column_name()) {
|
||||
$assets->where($field->db_column_name(), '=', $request->input($field->db_column_name()));
|
||||
$assets->where('assets.'.$field->db_column_name(), '=', $request->input($field->db_column_name()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -497,10 +476,9 @@ class AssetsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Lookup by Tag
|
||||
* Returns JSON with information about an asset (by tag) for detail view.
|
||||
*
|
||||
* @group Assets
|
||||
* @urlParam $tag string required The asset tag. Example: 1
|
||||
* @param string $tag
|
||||
* @since [v4.2.1]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
*/
|
||||
@@ -533,11 +511,10 @@ class AssetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Lookup by Serial
|
||||
* Returns JSON with information about an asset (by serial) for detail view.
|
||||
*
|
||||
* @group Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @urlParam $serial string
|
||||
* @param string $serial
|
||||
* @since [v4.2.1]
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*/
|
||||
@@ -577,11 +554,10 @@ class AssetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Asset
|
||||
* Returns JSON with information about an asset for detail view.
|
||||
*
|
||||
* @group Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @queryParam $assetId int required The asset ID. Example: 1
|
||||
* @param int $assetId
|
||||
* @since [v4.0]
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*/
|
||||
@@ -598,13 +574,6 @@ class AssetsController extends Controller
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('admin/hardware/message.does_not_exist')), 200);
|
||||
}
|
||||
|
||||
/**
|
||||
* Licenses Assigned to Asset
|
||||
*
|
||||
* @group Assets
|
||||
* @queryParam $assetId int required The asset ID. Example: 1
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*/
|
||||
public function licenses(Request $request, $id): array
|
||||
{
|
||||
$this->authorize('view', Asset::class);
|
||||
@@ -617,12 +586,8 @@ class AssetsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Selectlist
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Assets
|
||||
* @queryParam $search string String to search on. No-example
|
||||
* @queryParam $companyId int Company ID to filter by. No-example
|
||||
* @queryParam $assetStatusType string The asset status type to filter by: `RTD`. No-example
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0.16]
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
@@ -680,9 +645,8 @@ class AssetsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Create Asset
|
||||
* Accepts a POST request to create a new asset
|
||||
*
|
||||
* @group Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
* @since [v4.0]
|
||||
@@ -776,15 +740,8 @@ class AssetsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Update Asset
|
||||
* Accepts a POST request to update an asset
|
||||
*
|
||||
* @group Assets
|
||||
* @queryParam model_id int The model ID to associate the asset with. Example: 1
|
||||
* @queryParam company_id int The company ID to associate the asset with. Example: 1
|
||||
* @queryParam rtd_location_id int The RTD location ID to associate the asset with. Example: 1
|
||||
* @queryParam last_audit_date date The last audit date for the asset. Example: 2023-12-31
|
||||
* @queryParam image file The image file to upload for the asset. Example: (binary)
|
||||
* @param \App\Http\Requests\UpdateAssetRequest $request
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
@@ -875,10 +832,8 @@ class AssetsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Delete Asset
|
||||
* Delete a given asset (mark as deleted).
|
||||
*
|
||||
* @group Assets
|
||||
* @param int $id
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $assetId
|
||||
* @since [v4.0]
|
||||
@@ -912,9 +867,8 @@ class AssetsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Restore Asset
|
||||
* Restore a soft-deleted asset.
|
||||
*
|
||||
* @group Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $assetId
|
||||
* @since [v5.1.18]
|
||||
@@ -941,9 +895,8 @@ class AssetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Checkout by Asset Tag
|
||||
* Checkout an asset by its tag.
|
||||
*
|
||||
* @group Assets
|
||||
* @author [N. Butler]
|
||||
* @param string $tag
|
||||
* @since [v6.0.5]
|
||||
@@ -957,9 +910,8 @@ class AssetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Checkout Asset
|
||||
* Checkout an asset
|
||||
*
|
||||
* @group Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $assetId
|
||||
* @since [v4.0]
|
||||
@@ -1033,9 +985,8 @@ class AssetsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Checkin Asset
|
||||
* Checkin an asset
|
||||
*
|
||||
* @group Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $assetId
|
||||
* @since [v4.0]
|
||||
@@ -1119,9 +1070,8 @@ class AssetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Checkin by Asset Tag
|
||||
* Checkin an asset by asset tag
|
||||
*
|
||||
* @group Assets
|
||||
* @author [A. Janes] [<ajanes@adagiohealth.org>]
|
||||
* @since [v6.0]
|
||||
*/
|
||||
@@ -1144,9 +1094,8 @@ class AssetsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Audit Asset
|
||||
* Mark an asset as audited
|
||||
*
|
||||
* @group Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $id
|
||||
* @since [v4.0]
|
||||
@@ -1270,9 +1219,8 @@ class AssetsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Show Requestable Assets
|
||||
* Returns JSON listing of all requestable assets
|
||||
*
|
||||
* @group Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
@@ -1359,11 +1307,6 @@ class AssetsController extends Controller
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* List Assets Assigned to Asset
|
||||
*
|
||||
* @group Assets
|
||||
*/
|
||||
public function assignedAssets(Request $request, Asset $asset) : JsonResponse | array
|
||||
{
|
||||
$this->authorize('view', Asset::class);
|
||||
@@ -1381,11 +1324,6 @@ class AssetsController extends Controller
|
||||
return (new AssetsTransformer)->transformAssets($assets, $total);
|
||||
}
|
||||
|
||||
/**
|
||||
* List Accessories Assigned to Asset
|
||||
*
|
||||
* @group Assets
|
||||
*/
|
||||
public function assignedAccessories(Request $request, Asset $asset) : JsonResponse | array
|
||||
{
|
||||
$this->authorize('view', Asset::class);
|
||||
@@ -1403,11 +1341,6 @@ class AssetsController extends Controller
|
||||
return (new AssetsTransformer)->transformCheckedoutAccessories($accessory_checkouts, $total);
|
||||
}
|
||||
|
||||
/**
|
||||
* List Components Assigned to Asset
|
||||
*
|
||||
* @group Assets
|
||||
*/
|
||||
public function assignedComponents(Request $request, Asset $asset): JsonResponse|array
|
||||
{
|
||||
$this->authorize('view', Asset::class);
|
||||
@@ -1422,10 +1355,10 @@ class AssetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate Label by Asset Tag
|
||||
*
|
||||
* @group Assets
|
||||
* Generate asset labels by tag
|
||||
*
|
||||
* @author [Nebelkreis] [https://github.com/NebelKreis]
|
||||
*
|
||||
* @param Request $request Contains asset_tags array of asset tags to generate labels for
|
||||
* @return JsonResponse Returns base64 encoded PDF on success, error message on failure
|
||||
*/
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
|
||||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Actions\Categories\DestroyCategoryAction;
|
||||
use App\Exceptions\ItemStillHasChildren;
|
||||
use App\Helpers\Helper;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Transformers\CategoriesTransformer;
|
||||
@@ -15,9 +17,8 @@ use Illuminate\Support\Facades\Storage;
|
||||
class CategoriesController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Categories
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Categories
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @return \Illuminate\Http\Response
|
||||
@@ -42,6 +43,7 @@ class CategoriesController extends Controller
|
||||
'created_at',
|
||||
'updated_at',
|
||||
'image',
|
||||
'tag_color',
|
||||
'notes',
|
||||
];
|
||||
|
||||
@@ -56,6 +58,7 @@ class CategoriesController extends Controller
|
||||
'require_acceptance',
|
||||
'checkin_email',
|
||||
'image',
|
||||
'tag_color',
|
||||
'notes',
|
||||
])
|
||||
->with('adminuser')
|
||||
@@ -149,9 +152,8 @@ class CategoriesController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Create Category
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Categories
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -173,9 +175,8 @@ class CategoriesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Category
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Categories
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -190,9 +191,8 @@ class CategoriesController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Update Category
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Categories
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -221,34 +221,36 @@ class CategoriesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Category
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Categories
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function destroy($id) : JsonResponse
|
||||
public function destroy(Category $category): JsonResponse
|
||||
{
|
||||
$this->authorize('delete', Category::class);
|
||||
$category = Category::withCount('assets as assets_count', 'accessories as accessories_count', 'consumables as consumables_count', 'components as components_count', 'licenses as licenses_count', 'models as models_count')->findOrFail($id);
|
||||
|
||||
if (! $category->isDeletable()) {
|
||||
try {
|
||||
DestroyCategoryAction::run(category: $category);
|
||||
} catch (ItemStillHasChildren $e) {
|
||||
return response()->json(
|
||||
Helper::formatStandardApiResponse('error', null, trans('admin/categories/message.assoc_items', ['asset_type'=>$category->category_type]))
|
||||
Helper::formatStandardApiResponse('error', null, trans('general.bulk_delete_associations.general_assoc_warning', ['asset_type' => $category->category_type]))
|
||||
);
|
||||
} catch (\Exception $e) {
|
||||
report($e);
|
||||
return response()->json(
|
||||
Helper::formatStandardApiResponse('error', null, trans('general.something_went_wrong'))
|
||||
);
|
||||
}
|
||||
$category->delete();
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('success', null, trans('admin/categories/message.delete.success')));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Selectlist
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Categories
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0.16]
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
|
||||
@@ -14,11 +14,6 @@ use Exception;
|
||||
|
||||
class CheckoutRequest extends Controller
|
||||
{
|
||||
/**
|
||||
* Store Asset Request
|
||||
*
|
||||
* @group Account
|
||||
*/
|
||||
public function store(Asset $asset): JsonResponse
|
||||
{
|
||||
try {
|
||||
@@ -34,11 +29,6 @@ class CheckoutRequest extends Controller
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Cancel Asset Request
|
||||
*
|
||||
* @group Account
|
||||
*/
|
||||
public function destroy(Asset $asset): JsonResponse
|
||||
{
|
||||
try {
|
||||
|
||||
@@ -15,9 +15,8 @@ use Illuminate\Http\JsonResponse;
|
||||
class CompaniesController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Companies
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Companies
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
@@ -39,6 +38,7 @@ class CompaniesController extends Controller
|
||||
'accessories_count',
|
||||
'consumables_count',
|
||||
'components_count',
|
||||
'tag_color',
|
||||
'notes',
|
||||
];
|
||||
|
||||
@@ -65,6 +65,11 @@ class CompaniesController extends Controller
|
||||
$companies->where('created_by', '=', $request->input('created_by'));
|
||||
}
|
||||
|
||||
if ($request->filled('tag_color')) {
|
||||
$companies->where('tag_color', '=', $request->input('tag_color'));
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Make sure the offset and limit are actually integers and do not exceed system limits
|
||||
$offset = ($request->input('offset') > $companies->count()) ? $companies->count() : app('api_offset_value');
|
||||
@@ -91,12 +96,11 @@ class CompaniesController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Create Company
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Companies
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
*@since [v4.0]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
*/
|
||||
public function store(ImageUploadRequest $request) : JsonResponse
|
||||
{
|
||||
@@ -114,12 +118,11 @@ class CompaniesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Company
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Companies
|
||||
* @param int $id
|
||||
* @since [v4.0]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
*/
|
||||
public function show($id) : array
|
||||
{
|
||||
@@ -132,13 +135,12 @@ class CompaniesController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Update Company
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Companies
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
* @param int $id
|
||||
*@author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
public function update(ImageUploadRequest $request, $id) : JsonResponse
|
||||
{
|
||||
@@ -158,12 +160,11 @@ class CompaniesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Company
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Companies
|
||||
* @param int $id
|
||||
* @since [v4.0]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
*/
|
||||
public function destroy($id) : JsonResponse
|
||||
{
|
||||
@@ -182,9 +183,8 @@ class CompaniesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Selectlist
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Companies
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0.16]
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
@@ -197,6 +197,7 @@ class CompaniesController extends Controller
|
||||
'companies.name',
|
||||
'companies.email',
|
||||
'companies.image',
|
||||
'companies.tag_color',
|
||||
]);
|
||||
|
||||
|
||||
|
||||
@@ -20,9 +20,8 @@ use Carbon\Carbon;
|
||||
class ComponentsController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Categories
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Components
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*
|
||||
@@ -59,8 +58,8 @@ class ComponentsController extends Controller
|
||||
];
|
||||
|
||||
$components = Component::select('components.*')
|
||||
->with('company', 'location', 'category', 'assets', 'supplier', 'adminuser', 'manufacturer', 'uncontrainedAssets')
|
||||
->withSum('uncontrainedAssets', 'components_assets.assigned_qty');
|
||||
->with('company', 'location', 'category', 'supplier', 'adminuser', 'manufacturer')
|
||||
->withSum('uncontrainedAssets as sum_unconstrained_assets', 'components_assets.assigned_qty');
|
||||
|
||||
$filter = [];
|
||||
|
||||
@@ -113,7 +112,8 @@ class ComponentsController extends Controller
|
||||
}
|
||||
|
||||
// Make sure the offset and limit are actually integers and do not exceed system limits
|
||||
$offset = ($request->input('offset') > $components->count()) ? $components->count() : app('api_offset_value');
|
||||
$components_count = $components->count();
|
||||
$offset = ($request->input('offset') > $components_count) ? $components_count : app('api_offset_value');
|
||||
$limit = app('api_limit_value');
|
||||
|
||||
$order = $request->input('order') === 'asc' ? 'asc' : 'desc';
|
||||
@@ -144,7 +144,7 @@ class ComponentsController extends Controller
|
||||
break;
|
||||
}
|
||||
|
||||
$total = $components->count();
|
||||
$total = $components_count;
|
||||
$components = $components->skip($offset)->take($limit)->get();
|
||||
|
||||
return (new ComponentsTransformer)->transformComponents($components, $total);
|
||||
@@ -152,9 +152,8 @@ class ComponentsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Create Component
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Components
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -174,9 +173,8 @@ class ComponentsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Component
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Components
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $id
|
||||
*/
|
||||
@@ -191,9 +189,8 @@ class ComponentsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Component
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Components
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -215,9 +212,8 @@ class ComponentsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Component
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Components
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -238,9 +234,8 @@ class ComponentsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Component Assets
|
||||
* Display all assets attached to a component
|
||||
*
|
||||
* @group Components
|
||||
* @author [A. Bergamasco] [@vjandrea]
|
||||
* @since [v4.0]
|
||||
* @param Request $request
|
||||
@@ -280,10 +275,10 @@ class ComponentsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Checkout Component
|
||||
* Validate and checkout the component.
|
||||
*
|
||||
* @group Components
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* t
|
||||
* @since [v5.1.8]
|
||||
* @param Request $request
|
||||
* @param int $componentId
|
||||
@@ -335,9 +330,8 @@ class ComponentsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Checkin Component
|
||||
* Validate and store checkin data.
|
||||
*
|
||||
* @group Components
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v5.1.8]
|
||||
* @param Request $request
|
||||
|
||||
@@ -19,21 +19,8 @@ use Illuminate\Http\JsonResponse;
|
||||
class ConsumablesController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Consumables
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Consumables
|
||||
* @queryParam filter string A JSON encoded array of key/value pairs to filter results by. Example: {"company":"1","location":"2"}
|
||||
* @queryParam search string A search term to filter results by.
|
||||
* @queryParam name string Filter by exact name.
|
||||
* @queryParam company_id integer Filter by exact company ID.
|
||||
* @queryParam category_id integer Filter by exact category ID.
|
||||
* @queryParam model_number string Filter by exact model number.
|
||||
* @queryParam manufacturer_id integer Filter by exact manufacturer ID.
|
||||
* @queryParam supplier_id integer Filter by exact supplier ID.
|
||||
* @queryParam location_id integer Filter by exact location ID.
|
||||
* @queryParam notes string Filter by exact notes.
|
||||
* @queryParam sort string The column to sort results by. Must be one of the following: id, name, order_number, min_amt, purchase_date, purchase_cost, company, category, model_number, item_no, manufacturer, location, qty, image, company, location, category, supplier, manufacturer. Default is created_at.
|
||||
* @queryParam order string The order to sort results by. Must be one of the following: asc, desc. Default is desc.
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
@@ -166,7 +153,6 @@ class ConsumablesController extends Controller
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Consumables
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -186,9 +172,8 @@ class ConsumablesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Consumable
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Consumables
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $id
|
||||
*/
|
||||
@@ -201,9 +186,8 @@ class ConsumablesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Consumable
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Consumables
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -224,9 +208,8 @@ class ConsumablesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Consumable
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Consumables
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -242,9 +225,8 @@ class ConsumablesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* User Assignments
|
||||
* Returns a JSON response containing details on the users associated with this consumable.
|
||||
*
|
||||
* @group Consumables
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @see \App\Http\Controllers\Consumables\ConsumablesController::getView() method that returns the form.
|
||||
* @since [v1.0]
|
||||
@@ -290,9 +272,8 @@ class ConsumablesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Checkout Consumable
|
||||
* Checkout a consumable
|
||||
*
|
||||
* @group Consumables
|
||||
* @author [A. Gutierrez] [<andres@baller.tv>]
|
||||
* @param int $id
|
||||
* @since [v4.9.5]
|
||||
@@ -353,9 +334,8 @@ class ConsumablesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Selectlist
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Consumables
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
*/
|
||||
public function selectlist(Request $request) : array
|
||||
|
||||
@@ -14,9 +14,8 @@ use Illuminate\Http\JsonResponse;
|
||||
class CustomFieldsController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Custom Fields
|
||||
* Reorder the custom fields within a fieldset
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @author [Brady Wetherington] [<uberbrady@gmail.com>]
|
||||
* @param int $id
|
||||
* @since [v3.0]
|
||||
@@ -31,9 +30,7 @@ class CustomFieldsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Field
|
||||
*
|
||||
* @group Custom Fields
|
||||
* Shows the given field
|
||||
* @author [V. Cordes] [<volker@fdatek.de>]
|
||||
* @param int $id
|
||||
* @since [v4.1.10]
|
||||
@@ -49,9 +46,8 @@ class CustomFieldsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Field
|
||||
* Update the specified field
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @author [V. Cordes] [<volker@fdatek.de>]
|
||||
* @since [v4.1.10]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
@@ -84,9 +80,8 @@ class CustomFieldsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Create Field
|
||||
* Store a newly created field.
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @author [V. Cordes] [<volker@fdatek.de>]
|
||||
* @since [v4.1.10]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
@@ -117,12 +112,6 @@ class CustomFieldsController extends Controller
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $field->getErrors()));
|
||||
}
|
||||
|
||||
/**
|
||||
* Reorder Fields
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*/
|
||||
public function postReorder(Request $request, $id)
|
||||
{
|
||||
$fieldset = CustomFieldset::find($id);
|
||||
@@ -145,12 +134,6 @@ class CustomFieldsController extends Controller
|
||||
return $fieldset->fields()->sync($fields);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add Field to Fieldset
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*/
|
||||
public function associate(Request $request, $field_id) : JsonResponse
|
||||
{
|
||||
$this->authorize('update', CustomFieldset::class);
|
||||
@@ -170,12 +153,6 @@ class CustomFieldsController extends Controller
|
||||
return response()->json(Helper::formatStandardApiResponse('success', $fieldset, trans('admin/custom_fields/message.fieldset.update.success')));
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove Field from Fieldset
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*/
|
||||
public function disassociate(Request $request, $field_id) : JsonResponse
|
||||
{
|
||||
$this->authorize('update', CustomFieldset::class);
|
||||
@@ -195,9 +172,8 @@ class CustomFieldsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Field
|
||||
* Delete a custom field.
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @author [Brady Wetherington] [<uberbrady@gmail.com>]
|
||||
* @since [v1.8]
|
||||
*/
|
||||
|
||||
@@ -24,10 +24,7 @@ use Illuminate\Http\JsonResponse;
|
||||
class CustomFieldsetsController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Fieldsets
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @subgroup Custom Fieldsets
|
||||
* Shows the given fieldset and its fields
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @author [Josh Gibson]
|
||||
* @param int $id
|
||||
@@ -42,13 +39,10 @@ class CustomFieldsetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Fieldset and Fields
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @subgroup Custom Fieldsets
|
||||
* @param int $id
|
||||
* @author [Josh Gibson]
|
||||
* Shows the given fieldset and its fields
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @author [Josh Gibson]
|
||||
* @param int $id
|
||||
* @since [v1.8]
|
||||
*/
|
||||
public function show($id) : JsonResponse | array
|
||||
@@ -62,14 +56,12 @@ class CustomFieldsetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Fieldset
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @subgroup Custom Fieldsets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
*@author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
public function update(Request $request, $id) : JsonResponse
|
||||
{
|
||||
@@ -85,13 +77,11 @@ class CustomFieldsetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Create Fieldset
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @subgroup Custom Fieldsets
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*@since [v4.0]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*/
|
||||
public function store(Request $request) : JsonResponse
|
||||
{
|
||||
@@ -119,10 +109,8 @@ class CustomFieldsetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Fieldset
|
||||
* Delete a custom fieldset.
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @subgroup Custom Fieldsets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
@@ -146,14 +134,12 @@ class CustomFieldsetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Fields in Fieldset
|
||||
* Return JSON containing a list of fields belonging to a fieldset.
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @subgroup Custom Fieldsets
|
||||
* @param $fieldsetId
|
||||
* @return string JSON
|
||||
* @author [V. Cordes] [<volker@fdatek.de>]
|
||||
* @since [v4.1.10]
|
||||
* @param $fieldsetId
|
||||
* @return string JSON
|
||||
*/
|
||||
public function fields($id) : array
|
||||
{
|
||||
@@ -165,10 +151,9 @@ class CustomFieldsetsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Fields in Fieldset with Default Values for Model
|
||||
* Return JSON containing a list of fields belonging to a fieldset with the
|
||||
* default values for a given model
|
||||
*
|
||||
* @group Custom Fields
|
||||
* @subgroup Custom Fieldsets
|
||||
* @param $modelId
|
||||
* @param $fieldsetId
|
||||
* @return string JSON
|
||||
|
||||
@@ -4,6 +4,7 @@ namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Helpers\Helper;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Requests\StoreDepartmentRequest;
|
||||
use App\Http\Transformers\DepartmentsTransformer;
|
||||
use App\Http\Transformers\SelectlistTransformer;
|
||||
use App\Models\Department;
|
||||
@@ -15,39 +16,31 @@ use Illuminate\Http\JsonResponse;
|
||||
class DepartmentsController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Departments
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Departments
|
||||
* @queryParam search string Search term to filter results. Example: IT
|
||||
* @queryParam name string Filter by exact department name. Example: IT
|
||||
* @queryParam company_id integer Filter by exact company ID. Example: 1
|
||||
* @queryParam manager_id integer Filter by exact manager (user) ID. Example:
|
||||
* @queryParam location_id integer Filter by exact location ID. Example: 1
|
||||
* @queryParam sort string Column to sort results by. Allowed values: id, name, image, users_count, notes, created_at, updated_at, location, manager, company. Default: created_at. Example: name
|
||||
* @queryParam order string Order of sorted results. Allowed values: asc, desc. Default: desc. Example: asc
|
||||
* @queryParam offset integer Offset/starting position of the results. Default: 0. Example: 0
|
||||
* @queryParam limit integer Limit the number of results returned. Default: 25. Maximum: 100. Example: 50
|
||||
* @author [Godfrey Martinez] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
public function index(Request $request) : JsonResponse | array
|
||||
{
|
||||
$this->authorize('view', Department::class);
|
||||
$allowed_columns = ['id', 'name', 'image', 'users_count', 'notes'];
|
||||
$allowed_columns = ['id', 'name', 'image', 'users_count', 'notes', 'tag_color'];
|
||||
|
||||
$departments = Department::select(
|
||||
'departments.id',
|
||||
'departments.name',
|
||||
'departments.phone',
|
||||
'departments.fax',
|
||||
'departments.location_id',
|
||||
'departments.company_id',
|
||||
'departments.manager_id',
|
||||
'departments.created_at',
|
||||
'departments.updated_at',
|
||||
'departments.image',
|
||||
'departments.notes',
|
||||
)->with('users')->with('location')->with('manager')->with('company')->withCount('users as users_count');
|
||||
[
|
||||
'departments.id',
|
||||
'departments.name',
|
||||
'departments.phone',
|
||||
'departments.fax',
|
||||
'departments.location_id',
|
||||
'departments.company_id',
|
||||
'departments.manager_id',
|
||||
'departments.created_at',
|
||||
'departments.updated_at',
|
||||
'departments.image',
|
||||
'departments.tag_color',
|
||||
'departments.notes'
|
||||
])->with('location')->with('manager')->with('company')->withCount('users as users_count');
|
||||
|
||||
if ($request->filled('search')) {
|
||||
$departments = $departments->TextSearch($request->input('search'));
|
||||
@@ -69,6 +62,10 @@ class DepartmentsController extends Controller
|
||||
$departments->where('location_id', '=', $request->input('location_id'));
|
||||
}
|
||||
|
||||
if ($request->filled('tag_color')) {
|
||||
$departments->where('tag_color', '=', $request->input('departments.tag_color'));
|
||||
}
|
||||
|
||||
// Make sure the offset and limit are actually integers and do not exceed system limits
|
||||
$offset = ($request->input('offset') > $departments->count()) ? $departments->count() : app('api_offset_value');
|
||||
$limit = app('api_limit_value');
|
||||
@@ -98,34 +95,31 @@ class DepartmentsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Create Department
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Departments
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
*/
|
||||
public function store(ImageUploadRequest $request) : JsonResponse
|
||||
public function store(StoreDepartmentRequest $request): JsonResponse
|
||||
{
|
||||
$this->authorize('create', Department::class);
|
||||
$department = new Department;
|
||||
$department->fill($request->all());
|
||||
$department->fill($request->validated());
|
||||
$department = $request->handleImages($department);
|
||||
|
||||
$department->created_by = auth()->id();
|
||||
$department->manager_id = ($request->filled('manager_id') ? $request->input('manager_id') : null);
|
||||
|
||||
if ($department->save()) {
|
||||
return response()->json(Helper::formatStandardApiResponse('success', $department, trans('admin/departments/message.create.success')));
|
||||
return response()->json(Helper::formatStandardApiResponse('success', (new DepartmentsTransformer)->transformDepartment($department), trans('admin/departments/message.create.success')));
|
||||
}
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $department->getErrors()));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Department
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Departments
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -133,14 +127,13 @@ class DepartmentsController extends Controller
|
||||
public function show($id) : array
|
||||
{
|
||||
$this->authorize('view', Department::class);
|
||||
$department = Department::findOrFail($id);
|
||||
$department = Department::withCount('users as users_count')->findOrFail($id);
|
||||
return (new DepartmentsTransformer)->transformDepartment($department);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Department
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Departments
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v5.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -154,7 +147,7 @@ class DepartmentsController extends Controller
|
||||
$department = $request->handleImages($department);
|
||||
|
||||
if ($department->save()) {
|
||||
return response()->json(Helper::formatStandardApiResponse('success', $department, trans('admin/departments/message.update.success')));
|
||||
return response()->json(Helper::formatStandardApiResponse('success', (new DepartmentsTransformer)->transformDepartment($department), trans('admin/departments/message.update.success')));
|
||||
}
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $department->getErrors()));
|
||||
@@ -162,9 +155,8 @@ class DepartmentsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Delete Department
|
||||
* Validates and deletes selected department.
|
||||
*
|
||||
* @group Departments
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $locationId
|
||||
* @since [v4.0]
|
||||
@@ -185,9 +177,8 @@ class DepartmentsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Selectlist
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Departments
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0.16]
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
@@ -200,6 +191,7 @@ class DepartmentsController extends Controller
|
||||
'id',
|
||||
'name',
|
||||
'image',
|
||||
'tag_color',
|
||||
]);
|
||||
|
||||
if ($request->filled('search')) {
|
||||
|
||||
@@ -12,9 +12,8 @@ use Illuminate\Http\JsonResponse;
|
||||
class DepreciationsController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Depreciations
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Depreciations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
@@ -66,9 +65,8 @@ class DepreciationsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Create Depreciation
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Depreciations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
@@ -87,9 +85,8 @@ class DepreciationsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Depreciation
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Depreciations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -103,9 +100,8 @@ class DepreciationsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Depreciation
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Depreciations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
@@ -125,9 +121,8 @@ class DepreciationsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Depreciation
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Depreciations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
|
||||
@@ -15,7 +15,6 @@ class GroupsController extends Controller
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group User Groups
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
@@ -25,7 +24,7 @@ class GroupsController extends Controller
|
||||
|
||||
$this->authorize('view', Group::class);
|
||||
|
||||
$groups = Group::select('id', 'name', 'permissions', 'notes', 'created_at', 'updated_at', 'created_by')->with('adminuser')->withCount('users as users_count');
|
||||
$groups = Group::select(['id', 'name', 'permissions', 'notes', 'created_at', 'updated_at', 'created_by'])->with('adminuser')->withCount('users as users_count');
|
||||
|
||||
if ($request->filled('search')) {
|
||||
$groups = $groups->TextSearch($request->input('search'));
|
||||
@@ -51,6 +50,7 @@ class GroupsController extends Controller
|
||||
'id',
|
||||
'name',
|
||||
'created_at',
|
||||
'updated_at',
|
||||
'users_count',
|
||||
];
|
||||
|
||||
@@ -66,9 +66,8 @@ class GroupsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Create Group
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group User Groups
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
@@ -94,9 +93,8 @@ class GroupsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Group
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group User Groups
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -109,9 +107,8 @@ class GroupsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Group
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group User Groups
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
@@ -136,7 +133,6 @@ class GroupsController extends Controller
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group User Groups
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
|
||||
@@ -15,6 +15,7 @@ use Illuminate\Database\Eloquent\JsonEncodingException;
|
||||
use Illuminate\Support\Facades\Request;
|
||||
use Illuminate\Support\Facades\Session;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use Illuminate\Support\Str;
|
||||
use League\Csv\Reader;
|
||||
use Onnov\DetectEncoding\EncodingDetector;
|
||||
use Symfony\Component\HttpFoundation\File\Exception\FileException;
|
||||
@@ -24,9 +25,8 @@ use Illuminate\Http\JsonResponse;
|
||||
class ImportController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Import Files
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Imports
|
||||
*/
|
||||
public function index() : JsonResponse | array
|
||||
{
|
||||
@@ -36,9 +36,8 @@ class ImportController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Save Import File
|
||||
* Process and store a CSV upload file.
|
||||
*
|
||||
* @group Imports
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*/
|
||||
public function store() : JsonResponse
|
||||
@@ -151,7 +150,9 @@ class ImportController extends Controller
|
||||
}
|
||||
|
||||
$date = date('Y-m-d-his');
|
||||
$fixed_filename = str_slug($file->getClientOriginalName());
|
||||
|
||||
$fixed_filename = Str::of($file->getClientOriginalName())->basename('.csv').'.csv';
|
||||
|
||||
try {
|
||||
$file->move($path, $date.'-'.$fixed_filename);
|
||||
} catch (FileException $exception) {
|
||||
@@ -186,9 +187,8 @@ class ImportController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Process Import
|
||||
* Processes the specified Import.
|
||||
*
|
||||
* @group Imports
|
||||
* @param int $import_id
|
||||
*/
|
||||
public function process(ItemImportRequest $request, $import_id) : JsonResponse
|
||||
@@ -214,36 +214,47 @@ class ImportController extends Controller
|
||||
$redirectTo = 'hardware.index';
|
||||
switch ($request->get('import-type')) {
|
||||
case 'asset':
|
||||
$model_perms = 'App\Models\Asset';
|
||||
$redirectTo = 'hardware.index';
|
||||
break;
|
||||
case 'assetModel':
|
||||
$model_perms = 'App\Models\AssetModel';
|
||||
$redirectTo = 'models.index';
|
||||
break;
|
||||
case 'accessory':
|
||||
$model_perms = 'App\Models\Accessory';
|
||||
$redirectTo = 'accessories.index';
|
||||
break;
|
||||
case 'consumable':
|
||||
$model_perms = 'App\Models\Consumable';
|
||||
$redirectTo = 'consumables.index';
|
||||
break;
|
||||
case 'component':
|
||||
$model_perms = 'App\Models\Component';
|
||||
$redirectTo = 'components.index';
|
||||
break;
|
||||
case 'license':
|
||||
$model_perms = 'App\Models\License';
|
||||
$redirectTo = 'licenses.index';
|
||||
break;
|
||||
case 'user':
|
||||
$model_perms = 'App\Models\User';
|
||||
$redirectTo = 'users.index';
|
||||
break;
|
||||
case 'location':
|
||||
$model_perms = 'App\Models\Location';
|
||||
$redirectTo = 'locations.index';
|
||||
break;
|
||||
case 'supplier':
|
||||
$model_perms = 'App\Models\Supplier';
|
||||
$redirectTo = 'suppliers.index';
|
||||
break;
|
||||
case 'manufacturer':
|
||||
$model_perms = 'App\Models\Manufacturer';
|
||||
$redirectTo = 'manufacturers.index';
|
||||
break;
|
||||
case 'category':
|
||||
$model_perms = 'App\Models\Category';
|
||||
$redirectTo = 'categories.index';
|
||||
break;
|
||||
}
|
||||
@@ -254,20 +265,30 @@ class ImportController extends Controller
|
||||
//Flash message before the redirect
|
||||
Session::flash('success', trans('admin/hardware/message.import.success'));
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('success', null, ['redirect_url' => route($redirectTo)]));
|
||||
if (auth()->user()->can('view', $model_perms)) {
|
||||
return response()->json(Helper::formatStandardApiResponse('success', null, ['redirect_url' => route($redirectTo)]));
|
||||
}
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('success', null, ['redirect_url' => route('imports.index')]));
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Import File
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Imports
|
||||
* @param int $import_id
|
||||
*/
|
||||
public function destroy($import_id) : JsonResponse
|
||||
{
|
||||
$this->authorize('create', Asset::class);
|
||||
$this->authorize('import');
|
||||
|
||||
if ($import = Import::find($import_id)) {
|
||||
|
||||
|
||||
if ((auth()->user()->id != $import->created_by) && (!auth()->user()->isSuperUser())) {
|
||||
return response()->json(Helper::formatStandardApiResponse('warning', null, trans('admin/hardware/message.import.file_not_deleted_warning')));
|
||||
}
|
||||
|
||||
|
||||
try {
|
||||
// Try to delete the file
|
||||
Storage::delete('imports/'.$import->file_path);
|
||||
@@ -284,4 +305,6 @@ class ImportController extends Controller
|
||||
}
|
||||
return response()->json(Helper::formatStandardApiResponse('warning', null, trans('admin/hardware/message.import.file_not_deleted_warning')));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -13,9 +13,8 @@ use Illuminate\Http\JsonResponse;
|
||||
class LabelsController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Labels
|
||||
* Returns JSON listing of all labels.
|
||||
*
|
||||
* @group Labels
|
||||
* @author Grant Le Roux <grant.leroux+snipe-it@gmail.com>
|
||||
*/
|
||||
public function index(Request $request) : JsonResponse | array
|
||||
@@ -46,9 +45,8 @@ class LabelsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Label
|
||||
* Returns JSON with information about a label for detail view.
|
||||
*
|
||||
* @group Labels
|
||||
* @author Grant Le Roux <grant.leroux+snipe-it@gmail.com>
|
||||
* @param string $labelName
|
||||
*/
|
||||
|
||||
@@ -15,10 +15,8 @@ use Illuminate\Http\Request;
|
||||
class LicenseSeatsController extends Controller
|
||||
{
|
||||
/**
|
||||
* List License Seats
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Licenses
|
||||
* @subgroup License Seats
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $licenseId
|
||||
*/
|
||||
@@ -28,11 +26,11 @@ class LicenseSeatsController extends Controller
|
||||
if ($license = License::find($licenseId)) {
|
||||
$this->authorize('view', $license);
|
||||
|
||||
$seats = LicenseSeat::with('license', 'user', 'asset', 'user.department')
|
||||
$seats = LicenseSeat::with('license', 'user', 'asset', 'user.department', 'user.company', 'asset.company')
|
||||
->where('license_seats.license_id', $licenseId);
|
||||
|
||||
if ($request->input('status') == 'available') {
|
||||
$seats->whereNull('license_seats.assigned_to');
|
||||
$seats->whereNull('license_seats.assigned_to')->whereNull('license_seats.asset_id');
|
||||
}
|
||||
|
||||
if ($request->input('status') == 'assigned') {
|
||||
@@ -42,8 +40,10 @@ class LicenseSeatsController extends Controller
|
||||
|
||||
$order = $request->input('order') === 'asc' ? 'asc' : 'desc';
|
||||
|
||||
if ($request->input('sort') == 'department') {
|
||||
if ($request->input('sort') == 'assigned_user.department') {
|
||||
$seats->OrderDepartments($order);
|
||||
} elseif ($request->input('sort') == 'assigned_user.company') {
|
||||
$seats->OrderCompany($order);
|
||||
} else {
|
||||
$seats->orderBy('updated_at', $order);
|
||||
}
|
||||
@@ -70,10 +70,8 @@ class LicenseSeatsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show License Seat
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Licenses
|
||||
* @subgroup License Seats
|
||||
* @param int $licenseId
|
||||
* @param int $seatId
|
||||
*/
|
||||
@@ -81,24 +79,19 @@ class LicenseSeatsController extends Controller
|
||||
{
|
||||
|
||||
$this->authorize('view', License::class);
|
||||
// sanity checks:
|
||||
// 1. does the license seat exist?
|
||||
if (! $licenseSeat = LicenseSeat::find($seatId)) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, 'Seat not found'));
|
||||
}
|
||||
// 2. does the seat belong to the specified license?
|
||||
if (! $license = $licenseSeat->license()->first() || $license->id != intval($licenseId)) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, 'Seat does not belong to the specified license'));
|
||||
|
||||
if ($licenseSeat = LicenseSeat::where('license_id', $licenseId)->find($seatId)) {
|
||||
return (new LicenseSeatsTransformer)->transformLicenseSeat($licenseSeat);
|
||||
}
|
||||
|
||||
return (new LicenseSeatsTransformer)->transformLicenseSeat($licenseSeat);
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, 'Seat ID or license not found or the seat does not belong to this license'));
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Update License Seat
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Licenses
|
||||
* @subgroup License Seats
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $licenseId
|
||||
* @param int $seatId
|
||||
@@ -126,17 +119,22 @@ class LicenseSeatsController extends Controller
|
||||
|
||||
// check if this update is a checkin operation
|
||||
// 1. are relevant fields touched at all?
|
||||
$touched = $licenseSeat->isDirty('assigned_to') || $licenseSeat->isDirty('asset_id');
|
||||
// 2. are they cleared? if yes then this is a checkin operation
|
||||
$is_checkin = ($touched && $licenseSeat->assigned_to === null && $licenseSeat->asset_id === null);
|
||||
$assignmentTouched = $licenseSeat->isDirty('assigned_to') || $licenseSeat->isDirty('asset_id');
|
||||
$anythingTouched = $licenseSeat->isDirty();
|
||||
|
||||
if (! $touched) {
|
||||
// nothing to update
|
||||
return response()->json(Helper::formatStandardApiResponse('success', $licenseSeat, trans('admin/licenses/message.update.success')));
|
||||
if (! $anythingTouched) {
|
||||
return response()->json(
|
||||
Helper::formatStandardApiResponse('success', $licenseSeat, trans('admin/licenses/message.update.success'))
|
||||
);
|
||||
}
|
||||
if( $touched && $licenseSeat->unreassignable_seat) {
|
||||
if( $assignmentTouched && $licenseSeat->unreassignable_seat) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('admin/licenses/message.checkout.unavailable')));
|
||||
}
|
||||
|
||||
// 2. are they cleared? if yes then this is a checkin operation
|
||||
$is_checkin = ($assignmentTouched && $licenseSeat->assigned_to === null && $licenseSeat->asset_id === null);
|
||||
$target = null;
|
||||
|
||||
// the logging functions expect only one "target". if both asset and user are present in the request,
|
||||
// we simply let assets take precedence over users...
|
||||
if ($licenseSeat->isDirty('assigned_to')) {
|
||||
@@ -146,25 +144,23 @@ class LicenseSeatsController extends Controller
|
||||
$target = $is_checkin ? $oldAsset : Asset::find($licenseSeat->asset_id);
|
||||
}
|
||||
|
||||
if (is_null($target)){
|
||||
if ($assignmentTouched && is_null($target)){
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, 'Target not found'));
|
||||
}
|
||||
|
||||
if ($licenseSeat->save()) {
|
||||
|
||||
if ($is_checkin) {
|
||||
if(!$licenseSeat->license->reassignable){
|
||||
$licenseSeat->unreassignable_seat = true;
|
||||
$licenseSeat->save();
|
||||
if($assignmentTouched) {
|
||||
if ($is_checkin) {
|
||||
if (!$licenseSeat->license->reassignable) {
|
||||
$licenseSeat->unreassignable_seat = true;
|
||||
$licenseSeat->save();
|
||||
}
|
||||
$licenseSeat->logCheckin($target, $licenseSeat->notes);
|
||||
} else {
|
||||
// in this case, relevant fields are touched but it's not a checkin operation. so it must be a checkout operation.
|
||||
$licenseSeat->logCheckout($request->input('notes'), $target);
|
||||
}
|
||||
$licenseSeat->logCheckin($target, $licenseSeat->notes);
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('success', $licenseSeat, trans('admin/licenses/message.update.success')));
|
||||
}
|
||||
|
||||
// in this case, relevant fields are touched but it's not a checkin operation. so it must be a checkout operation.
|
||||
$licenseSeat->logCheckout($request->input('notes'), $target);
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('success', $licenseSeat, trans('admin/licenses/message.update.success')));
|
||||
}
|
||||
|
||||
|
||||
@@ -15,17 +15,8 @@ use Illuminate\Http\JsonResponse;
|
||||
class LicensesController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Licenses
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Licenses
|
||||
* @queryParam status string Filter by license status. Options: active, inactive, expiring Example: ?status=active
|
||||
* @queryParam company_id integer Filter by exact company ID. Example: 1
|
||||
* @queryParam name string Filter by exact license name. Example: Microsoft 365
|
||||
* @queryParam product_key string Filter by exact product key. Example: W269N
|
||||
* @queryParam order_number string Filter by exact order number. Example: 12345
|
||||
* @queryParam purchase_order string Filter by exact purchase order. Example: PO12345
|
||||
* @queryParam license_name string Filter by exact licensee name. Example: John Doe
|
||||
* @queryParam license_email string Filter by exact licensee email. Example: john.d
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*
|
||||
@@ -175,9 +166,8 @@ class LicensesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Create License
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Licenses
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
@@ -196,9 +186,8 @@ class LicensesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show License
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Licenses
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $id
|
||||
*/
|
||||
@@ -212,9 +201,8 @@ class LicensesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update License
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Licenses
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
@@ -236,9 +224,8 @@ class LicensesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete License
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Licenses
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -266,9 +253,8 @@ class LicensesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Selectlist
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Licenses
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
*/
|
||||
public function selectlist(Request $request) : array
|
||||
|
||||
@@ -23,26 +23,11 @@ use Illuminate\Support\Collection;
|
||||
class LocationsController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Locations
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Locations
|
||||
* @queryParam search string Search term to filter results. Example: Headquarters
|
||||
* @queryParam name string Filter by exact location name. Example: Headquarters
|
||||
* @queryParam address string Filter by exact address. Example: 123 Main St
|
||||
* @queryParam address2 string Filter by exact address2. Example: Suite 100
|
||||
* @queryParam city string Filter by exact city. Example: Springfield
|
||||
* @queryParam zip string Filter by exact zip code. Example: 12345
|
||||
* @queryParam country string Filter by exact country. Example: USA
|
||||
* @queryParam manager_id integer Filter by exact manager (user) ID. Example: 1
|
||||
* @queryParam company_id integer Filter by exact company ID. Example: 1
|
||||
* @queryParam parent_id integer Filter by exact parent location ID. Example: 1
|
||||
* @queryParam status string Filter by location status. Allowed values: active, deleted. Example: active
|
||||
* @queryParam sort string Column to sort results by. Allowed values: accessorries_count, address, address2, assets_count, assigned_assets_count, rtd_assets_count, accessories_count, assigned_accessories_count, components_count, consumables_count, users_count, children_count, city, country, created_at, currency, id, image, ldap_ou, company_id, manager_id, name, rtd_assets_count, state, updated_at, zip. Default: created_at. Example: name
|
||||
* @queryParam order string Order of sorted results. Allowed values: asc, desc. Default: desc. Example: asc
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
* @since [v4.0]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index(Request $request) : JsonResponse | array
|
||||
{
|
||||
@@ -74,6 +59,7 @@ class LocationsController extends Controller
|
||||
'state',
|
||||
'updated_at',
|
||||
'zip',
|
||||
'tag_color',
|
||||
'notes',
|
||||
];
|
||||
|
||||
@@ -96,6 +82,8 @@ class LocationsController extends Controller
|
||||
'locations.ldap_ou',
|
||||
'locations.currency',
|
||||
'locations.company_id',
|
||||
'locations.tag_color',
|
||||
'locations.tag_color',
|
||||
'locations.notes',
|
||||
'locations.created_by',
|
||||
'locations.deleted_at',
|
||||
@@ -160,6 +148,10 @@ class LocationsController extends Controller
|
||||
$locations->onlyTrashed();
|
||||
}
|
||||
|
||||
if ($request->filled('tag_color')) {
|
||||
$locations->where('tag_color', '=', $request->input('locations.tag_color'));
|
||||
}
|
||||
|
||||
// Make sure the offset and limit are actually integers and do not exceed system limits
|
||||
$offset = ($request->input('offset') > $locations->count()) ? $locations->count() : app('api_offset_value');
|
||||
$limit = app('api_limit_value');
|
||||
@@ -167,6 +159,8 @@ class LocationsController extends Controller
|
||||
$order = $request->input('order') === 'asc' ? 'asc' : 'desc';
|
||||
$sort = in_array($request->input('sort'), $allowed_columns) ? $request->input('sort') : 'created_at';
|
||||
|
||||
|
||||
|
||||
switch ($request->input('sort')) {
|
||||
case 'parent':
|
||||
$locations->OrderParent($order);
|
||||
@@ -191,9 +185,8 @@ class LocationsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Create Location
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Locations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -222,9 +215,8 @@ class LocationsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Location
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Locations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -250,6 +242,7 @@ class LocationsController extends Controller
|
||||
'locations.currency',
|
||||
'locations.company_id',
|
||||
'locations.notes',
|
||||
'locations.tag_color',
|
||||
])
|
||||
->withCount('assignedAssets as assigned_assets_count')
|
||||
->withCount('assets as assets_count')
|
||||
@@ -267,9 +260,8 @@ class LocationsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Update Location
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Locations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -311,13 +303,7 @@ class LocationsController extends Controller
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $location->getErrors()));
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Assets with Default Location
|
||||
*
|
||||
* @group Locations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $id
|
||||
*/
|
||||
|
||||
public function assets(Request $request, Location $location) : JsonResponse | array
|
||||
{
|
||||
$this->authorize('view', Asset::class);
|
||||
@@ -327,13 +313,6 @@ class LocationsController extends Controller
|
||||
return (new AssetsTransformer)->transformAssets($assets, $assets->count(), $request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Assets Assigned to Location
|
||||
*
|
||||
* @group Locations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $id
|
||||
*/
|
||||
public function assignedAssets(Request $request, Location $location) : JsonResponse | array
|
||||
{
|
||||
$this->authorize('view', Asset::class);
|
||||
@@ -343,13 +322,6 @@ class LocationsController extends Controller
|
||||
return (new AssetsTransformer)->transformAssets($assets, $assets->count(), $request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Accessories Assigned to Location
|
||||
*
|
||||
* @group Locations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @param int $id
|
||||
*/
|
||||
public function assignedAccessories(Request $request, Location $location) : JsonResponse | array
|
||||
{
|
||||
$this->authorize('view', Accessory::class);
|
||||
@@ -365,9 +337,8 @@ class LocationsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Location
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Locations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -421,7 +392,6 @@ class LocationsController extends Controller
|
||||
* Recursion still sucks, but I guess he doesn't have to get in the
|
||||
* sea... this time.
|
||||
*
|
||||
* @group Locations
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0.16]
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
@@ -440,6 +410,7 @@ class LocationsController extends Controller
|
||||
'locations.name',
|
||||
'locations.parent_id',
|
||||
'locations.image',
|
||||
'locations.tag_color',
|
||||
]);
|
||||
|
||||
// Only scope locations if the setting is enabled
|
||||
|
||||
@@ -22,19 +22,8 @@ class MaintenancesController extends Controller
|
||||
{
|
||||
|
||||
/**
|
||||
* List Maintenances
|
||||
* Generates the JSON response for asset maintenances listing view.
|
||||
*
|
||||
* @group Maintenances
|
||||
* @queryParam search string Search term to filter results. Example: repair
|
||||
* @queryParam asset_id integer Filter by exact asset ID. Example: 1
|
||||
* @queryParam supplier_id integer Filter by exact supplier ID. Example: 1
|
||||
* @queryParam created_by integer Filter by exact user ID who created the maintenance. Example
|
||||
* @queryParam url string Filter by exact URL. Example: http://example.com
|
||||
* @queryParam asset_maintenance_type string Filter by exact maintenance type. Example: repair
|
||||
* @queryParam sort string Column to sort results by. Allowed values: id, name, asset_maintenance_time, asset_maintenance_type, cost, start_date, completion_date, notes, asset_tag, asset_name, serial, created_by, supplier, location, is_warranty, status_label. Default: created_at. Example: name
|
||||
* @queryParam order string Order of sorted results. Allowed values: asc, desc. Default: desc. Example: asc
|
||||
* @queryParam offset integer Offset/starting position of the results. Default: 0. Example: 0
|
||||
* @queryParam limit integer Limit the number of results returned. Default: 25. Maximum: 100. Example: 50
|
||||
* @see MaintenancesController::getIndex() method that generates view
|
||||
* @author Vincent Sposato <vincent.sposato@gmail.com>
|
||||
* @version v1.0
|
||||
@@ -134,9 +123,8 @@ class MaintenancesController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Create Maintenance
|
||||
* Validates and stores the new asset maintenance
|
||||
*
|
||||
* @group Maintenances
|
||||
* @see MaintenancesController::getCreate() method for the form
|
||||
* @author Vincent Sposato <vincent.sposato@gmail.com>
|
||||
* @version v1.0
|
||||
@@ -162,9 +150,8 @@ class MaintenancesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Maintenance
|
||||
* Validates and stores an update to an asset maintenance
|
||||
*
|
||||
* @group Maintenances
|
||||
* @author A. Gianotto <snipe@snipe.net>
|
||||
* @param int $id
|
||||
* @param int $request
|
||||
@@ -201,9 +188,8 @@ class MaintenancesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Maintenance
|
||||
* Delete an asset maintenance
|
||||
*
|
||||
* @group Maintenances
|
||||
* @author A. Gianotto <snipe@snipe.net>
|
||||
* @param int $maintenanceId
|
||||
* @version v1.0
|
||||
@@ -224,9 +210,8 @@ class MaintenancesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* View Maintenance
|
||||
* View an asset maintenance
|
||||
*
|
||||
* @group Maintenances
|
||||
* @author A. Gianotto <snipe@snipe.net>
|
||||
* @param int $maintenanceId
|
||||
* @version v1.0
|
||||
|
||||
@@ -2,6 +2,13 @@
|
||||
|
||||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Actions\Manufacturers\DeleteManufacturerAction;
|
||||
use App\Exceptions\ItemStillHasAccessories;
|
||||
use App\Exceptions\ItemStillHasAssets;
|
||||
use App\Exceptions\ItemStillHasChildren;
|
||||
use App\Exceptions\ItemStillHasComponents;
|
||||
use App\Exceptions\ItemStillHasConsumables;
|
||||
use App\Exceptions\ItemStillHasLicenses;
|
||||
use App\Helpers\Helper;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Transformers\ManufacturersTransformer;
|
||||
@@ -16,20 +23,8 @@ use Illuminate\Http\JsonResponse;
|
||||
class ManufacturersController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Manufacturers
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Manufacturers
|
||||
* @queryParam search string Search term to filter results. Example: Dell
|
||||
* @queryParam name string Filter by exact manufacturer name. Example: Dell
|
||||
* @queryParam url string Filter by exact URL. Example: http://example.com
|
||||
* @queryParam support_url string Filter by exact support URL. Example: http://support.example.com
|
||||
* @queryParam warranty_lookup_url string Filter by exact warranty lookup URL. Example: http://warranty.example.com
|
||||
* @queryParam support_phone string Filter by exact support phone number. Example: 1-800-555-5555
|
||||
* @queryParam support_email string Filter by exact support email address. Example: support@example.org
|
||||
* @queryParam sort string Column to sort results by. Allowed values: id, name, url, support_url, support_email, warranty_lookup_url, support_phone, created_at, updated_at, assets_count, consumables_count, components_count, licenses_count. Default: created_at. Example: name
|
||||
* @queryParam order string Order of sorted results. Allowed values: asc, desc. Default: desc. Example: asc
|
||||
* @queryParam offset integer Offset/starting position of the results. Default: 0. Example: 0
|
||||
* @queryParam limit integer Limit the number of results returned. Default: 25. Maximum: 100. Example: 50
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @return \Illuminate\Http\Response
|
||||
@@ -52,6 +47,7 @@ class ManufacturersController extends Controller
|
||||
'consumables_count',
|
||||
'components_count',
|
||||
'licenses_count',
|
||||
'tag_color',
|
||||
'notes',
|
||||
];
|
||||
|
||||
@@ -68,6 +64,7 @@ class ManufacturersController extends Controller
|
||||
'updated_at',
|
||||
'image',
|
||||
'deleted_at',
|
||||
'tag_color',
|
||||
'notes',
|
||||
])
|
||||
->with('adminuser')
|
||||
@@ -81,10 +78,16 @@ class ManufacturersController extends Controller
|
||||
$manufacturers->onlyTrashed();
|
||||
}
|
||||
|
||||
if ($request->input('status') == 'deleted') {
|
||||
$manufacturers->onlyTrashed();
|
||||
}
|
||||
|
||||
if ($request->filled('search')) {
|
||||
$manufacturers = $manufacturers->TextSearch($request->input('search'));
|
||||
}
|
||||
|
||||
|
||||
|
||||
if ($request->filled('name')) {
|
||||
$manufacturers->where('name', '=', $request->input('name'));
|
||||
}
|
||||
@@ -109,6 +112,10 @@ class ManufacturersController extends Controller
|
||||
$manufacturers->where('support_email', '=', $request->input('support_email'));
|
||||
}
|
||||
|
||||
if ($request->filled('tag_color')) {
|
||||
$manufacturers->where('tag_color', '=', $request->input('manufacturers.tag_color'));
|
||||
}
|
||||
|
||||
// Make sure the offset and limit are actually integers and do not exceed system limits
|
||||
$offset = ($request->input('offset') > $manufacturers->count()) ? $manufacturers->count() : app('api_offset_value');
|
||||
$limit = app('api_limit_value');
|
||||
@@ -132,9 +139,8 @@ class ManufacturersController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Create Maintenance
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Manufacturers
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -154,9 +160,8 @@ class ManufacturersController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Manufacturer
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Manufacturers
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
@@ -170,9 +175,8 @@ class ManufacturersController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Manufacturer
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Manufacturers
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \App\Http\Requests\ImageUploadRequest $request
|
||||
@@ -193,32 +197,30 @@ class ManufacturersController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Manufacturer
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Manufacturers
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
*/
|
||||
public function destroy($id) : JsonResponse
|
||||
public function destroy(Manufacturer $manufacturer): JsonResponse
|
||||
{
|
||||
$this->authorize('delete', Manufacturer::class);
|
||||
$manufacturer = Manufacturer::findOrFail($id);
|
||||
$this->authorize('delete', $manufacturer);
|
||||
|
||||
if ($manufacturer->isDeletable()) {
|
||||
$manufacturer->delete();
|
||||
return response()->json(Helper::formatStandardApiResponse('success', null, trans('admin/manufacturers/message.delete.success')));
|
||||
try {
|
||||
DeleteManufacturerAction::run($manufacturer);
|
||||
} catch (ItemStillHasChildren $e) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('general.bulk_delete_associations.general_assoc_warning', ['item' => trans('general.manufacturer')])));
|
||||
} catch (\Exception $e) {
|
||||
report($e);
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('general.something_went_wrong')));
|
||||
}
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('admin/manufacturers/message.assoc_users')));
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('success', null, trans('admin/manufacturers/message.delete.success')));
|
||||
}
|
||||
|
||||
/**
|
||||
* Restore Deleted Manufacturer
|
||||
* Restore a given Manufacturer (mark as un-deleted)
|
||||
*
|
||||
* @group Manufacturers
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v6.3.4]
|
||||
* @param int $id
|
||||
@@ -254,9 +256,8 @@ class ManufacturersController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Selectlist
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Manufacturers
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0.16]
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
@@ -269,6 +270,7 @@ class ManufacturersController extends Controller
|
||||
'id',
|
||||
'name',
|
||||
'image',
|
||||
'tag_color',
|
||||
]);
|
||||
|
||||
if ($request->filled('search')) {
|
||||
|
||||
@@ -19,14 +19,12 @@ use Illuminate\Support\Facades\Log;
|
||||
class NotesController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Notes
|
||||
* Retrieve a list of manual notes (action logs) for a given asset.
|
||||
*
|
||||
* Checks authorization to view assets, attempts to find the asset by ID,
|
||||
* and fetches related action log entries of type 'note added', including
|
||||
* user information for each note. Returns a JSON response with the notes or errors.
|
||||
*
|
||||
* @group Notes
|
||||
* @subgroup Assets
|
||||
* @param \Illuminate\Http\Request $request The incoming HTTP request.
|
||||
* @param Asset $asset The ID of the asset whose notes to retrieve.
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
@@ -61,14 +59,12 @@ class NotesController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Store Note
|
||||
* Store a manual note on a specified asset and log the action.
|
||||
*
|
||||
* Checks authorization for updating assets, validates the presence of the 'note',
|
||||
* attempts to find the asset by ID, and creates a new ActionLog entry if successful.
|
||||
* Returns JSON responses indicating success or failure with appropriate HTTP status codes.
|
||||
*
|
||||
* @group Notes
|
||||
* @subgroup Assets
|
||||
* @param \Illuminate\Http\Request $request The incoming HTTP request containing the 'note'.
|
||||
* @param Asset $asset The ID of the asset to attach the note to.
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
|
||||
@@ -16,9 +16,8 @@ use App\Http\Transformers\SelectlistTransformer;
|
||||
class PredefinedKitsController extends Controller
|
||||
{
|
||||
/**
|
||||
* List Kits
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index(Request $request) : JsonResponse | array
|
||||
@@ -63,9 +62,8 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Create Kit
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*/
|
||||
public function store(Request $request) : JsonResponse
|
||||
@@ -82,10 +80,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Kit
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $id int required The ID of the kit. Example: 1
|
||||
* @param int $id
|
||||
*/
|
||||
public function show($id) : array
|
||||
{
|
||||
@@ -96,10 +93,10 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Kit
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $id int required The ID of the kit. Example: 1
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id kit id
|
||||
*/
|
||||
public function update(Request $request, $id) : JsonResponse
|
||||
{
|
||||
@@ -115,10 +112,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Kit
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $id int required The ID of the kit. Example: 1
|
||||
* @param int $id
|
||||
*/
|
||||
public function destroy($id) : JsonResponse
|
||||
{
|
||||
@@ -137,9 +133,8 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Selectlist
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
*/
|
||||
public function selectlist(Request $request) : array
|
||||
@@ -159,10 +154,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* List Licenses in Kit
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function indexLicenses($kit_id) : array
|
||||
@@ -175,12 +169,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Add License to Kit
|
||||
* Store the specified resource.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @bodyParam license int required The ID of the license. Example: 1
|
||||
* @bodyParam quantity int The quantity of the license. Example: 1
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function storeLicense(Request $request, $kit_id) : JsonResponse
|
||||
@@ -205,11 +196,10 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update License in Kit
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @urlParam $license_id int required The ID of the license. Example: 1
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function updateLicense(Request $request, $kit_id, $license_id) : JsonResponse
|
||||
{
|
||||
@@ -225,11 +215,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove License from Kit
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @urlParam $license_id int required The ID of the license. Example: 1
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function detachLicense($kit_id, $license_id) : JsonResponse
|
||||
{
|
||||
@@ -242,10 +230,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* List Models in Kit
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function indexModels($kit_id) : array
|
||||
{
|
||||
@@ -257,11 +244,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Add Model to Kit
|
||||
* Store the specified resource.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @bodyParam model int required The ID of the model. Example: 1
|
||||
* @param int $id
|
||||
*/
|
||||
public function storeModel(Request $request, $kit_id) : JsonResponse
|
||||
{
|
||||
@@ -285,11 +270,10 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Model in Kit
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @bodyParam quantity int required The quantity of the model. Example: 1
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function updateModel(Request $request, $kit_id, $model_id) : JsonResponse
|
||||
{
|
||||
@@ -305,11 +289,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Model from Kit
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @urlParam $model_id int required The ID of the model. Example: 1
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function detachModel($kit_id, $model_id) : JsonResponse
|
||||
{
|
||||
@@ -322,10 +304,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* List Consumables in Kit
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function indexConsumables($kit_id) : array
|
||||
{
|
||||
@@ -337,12 +318,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Add Consumable to Kit
|
||||
* Store the specified resource.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @bodyParam consumable int required The ID of the consumable. Example: 1
|
||||
* @bodyParam quantity int The quantity of the consumable. Example: 1
|
||||
* @param int $id
|
||||
*/
|
||||
public function storeConsumable(Request $request, $kit_id) : JsonResponse
|
||||
{
|
||||
@@ -366,12 +344,10 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Consumable in Kit
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @urlParam $consumable_id int required The ID of the consumable. Example: 1
|
||||
* @bodyParam quantity int The quantity of the consumable. Example: 1
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function updateConsumable(Request $request, $kit_id, $consumable_id) : JsonResponse
|
||||
{
|
||||
@@ -387,11 +363,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove Consumable from Kit
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @urlParam $consumable_id int required The ID of the consumable. Example: 1
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function detachConsumable($kit_id, $consumable_id) : JsonResponse
|
||||
{
|
||||
@@ -404,10 +378,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* List Accessories in Kit
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function indexAccessories($kit_id) : array
|
||||
{
|
||||
@@ -419,12 +392,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Add Accessory to Kit
|
||||
* Store the specified resource.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @bodyParam accessory int required The ID of the accessory. Example: 1
|
||||
* @bodyParam quantity int The quantity of the accessory. Example: 1
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function storeAccessory(Request $request, $kit_id) : JsonResponse
|
||||
{
|
||||
@@ -448,12 +418,10 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Accessory in Kit
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @urlParam $accessory_id int required The ID of the accessory. Example: 1
|
||||
* @bodyParam quantity int The quantity of the accessory. Example: 1
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function updateAccessory(Request $request, $kit_id, $accessory_id) : JsonResponse
|
||||
{
|
||||
@@ -469,11 +437,9 @@ class PredefinedKitsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove Accessory from Kit
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Predefined Kits
|
||||
* @urlParam $kit_id int required The ID of the kit. Example: 1
|
||||
* @urlParam $accessory_id int required The ID of the accessory. Example: 1
|
||||
* @param int $kit_id
|
||||
*/
|
||||
public function detachAccessory($kit_id, $accessory_id) : JsonResponse
|
||||
{
|
||||
|
||||
@@ -14,6 +14,7 @@ use Laravel\Passport\TokenRepository;
|
||||
use Illuminate\Contracts\Validation\Factory as ValidationFactory;
|
||||
use Illuminate\Support\Facades\Gate;
|
||||
use App\Models\CustomField;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Symfony\Component\HttpFoundation\BinaryFileResponse;
|
||||
@@ -42,9 +43,8 @@ class ProfileController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Display Requested Assets
|
||||
* Display a listing of requested assets.
|
||||
*
|
||||
* @group Account
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.3.0]
|
||||
*/
|
||||
@@ -94,8 +94,8 @@ class ProfileController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Create API token
|
||||
* @group Account
|
||||
* Delete an API token
|
||||
*
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v6.0.5]
|
||||
*/
|
||||
@@ -123,9 +123,8 @@ class ProfileController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Delete API token
|
||||
* Delete an API token
|
||||
*
|
||||
* @group Account
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v6.0.5]
|
||||
*/
|
||||
@@ -152,9 +151,8 @@ class ProfileController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Show API tokens
|
||||
* Show user's API tokens
|
||||
*
|
||||
* @group Account
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v6.0.5]
|
||||
*/
|
||||
@@ -175,18 +173,24 @@ class ProfileController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Display Accepted EULAs
|
||||
* Display the EULAs accepted by the user.
|
||||
*
|
||||
* @group Account
|
||||
* @param \App\Http\Transformers\ActionlogsTransformer $transformer
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
* @since [v8.1.16]
|
||||
* @param \App\Http\Transformers\ActionlogsTransformer $transformer
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*@since [v8.1.16]
|
||||
* @author [Godfrey Martinez] [<gmartinez@grokability.com>]
|
||||
*/
|
||||
public function eulas(ProfileTransformer $transformer)
|
||||
public function eulas(ProfileTransformer $transformer, Request $request)
|
||||
{
|
||||
// Only return this user's EULAs
|
||||
$eulas = auth()->user()->eulas;
|
||||
if($request->filled('user_id') && $request->input('user_id') != 0) {
|
||||
// Return selected user's EULAs
|
||||
$eulas = User::find($request->input('user_id'))->eulas;
|
||||
}
|
||||
else {
|
||||
// Only return this user's EULAs
|
||||
$eulas = auth()->user()->eulas;
|
||||
}
|
||||
|
||||
return response()->json(
|
||||
$transformer->transformFiles($eulas, $eulas->count())
|
||||
);
|
||||
|
||||
@@ -13,23 +13,8 @@ use Illuminate\Http\JsonResponse;
|
||||
class ReportsController extends Controller
|
||||
{
|
||||
/**
|
||||
* Activity Report
|
||||
* Returns Activity Report JSON.
|
||||
*
|
||||
* @group Reports
|
||||
* @queryParam search string Search term to filter results Example: updated
|
||||
* @queryParam target_type string Filter by target type Example: user
|
||||
* @queryParam target_id integer Filter by target ID Example: 1
|
||||
* @queryParam item_type string Filter by item type Example: asset
|
||||
* @queryParam item_id integer Filter by item ID Example: 1
|
||||
* @queryParam action_type string Filter by action type Example: create
|
||||
* @queryParam created_by integer Filter by user ID who created the log Example: 1
|
||||
* @queryParam action_source string Filter by action source Example: web
|
||||
* @queryParam remote_ip string Filter by remote IP address Example: No-example
|
||||
* @queryParam uploads boolean Filter to only show logs with file uploads Example: true
|
||||
* @queryParam sort string Column to sort by. Allowed values: id, created_at, target_id, created_by, accept_signature, action_type, note, remote_ip, user_agent, target_type, item_type, action_source, action_date. Default is created_at. Example: created_at
|
||||
* @queryParam order string Order of sorting. Allowed values: asc, desc. Default is desc. Example: desc
|
||||
* @queryParam offset integer Number of records to skip for pagination. Default is 0. Example: 0
|
||||
* @queryParam limit integer Maximum number of records to return. Default is 25. Example: 25
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
|
||||
@@ -23,12 +23,6 @@ class SettingsController extends Controller
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* Test LDAP Connection
|
||||
*
|
||||
* @group Settings
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function ldaptest() : JsonResponse
|
||||
{
|
||||
$settings = Setting::getSettings();
|
||||
@@ -101,13 +95,6 @@ class SettingsController extends Controller
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Test LDAP Login
|
||||
*
|
||||
* @group Settings
|
||||
* @param Request $request
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function ldaptestlogin(Request $request) : JsonResponse
|
||||
{
|
||||
|
||||
@@ -164,9 +151,8 @@ class SettingsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Test Email Configuration
|
||||
* Test the email configuration
|
||||
*
|
||||
* @group Settings
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v3.0]
|
||||
*/
|
||||
@@ -189,9 +175,8 @@ class SettingsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Delete Barcode Cache
|
||||
* Delete server-cached barcodes
|
||||
*
|
||||
* @group Settings
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v5.0.0]
|
||||
*/
|
||||
@@ -231,7 +216,6 @@ class SettingsController extends Controller
|
||||
/**
|
||||
* Get a list of login attempts
|
||||
*
|
||||
* @group Settings
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v5.0.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
@@ -255,7 +239,6 @@ class SettingsController extends Controller
|
||||
/**
|
||||
* Lists backup files
|
||||
*
|
||||
* @group Settings
|
||||
* @author [A. Gianotto]
|
||||
*/
|
||||
public function listBackups() : array
|
||||
@@ -296,11 +279,9 @@ class SettingsController extends Controller
|
||||
|
||||
/**
|
||||
* Downloads a backup file.
|
||||
*
|
||||
* We use response()->download() here instead of Storage::download() because Storage::download()
|
||||
* exhausts memory on larger files.
|
||||
*
|
||||
* @group Settings
|
||||
* @author [A. Gianotto]
|
||||
*/
|
||||
public function downloadBackup($file) : JsonResponse | BinaryFileResponse
|
||||
@@ -320,7 +301,6 @@ class SettingsController extends Controller
|
||||
/**
|
||||
* Determines and downloads the latest backup
|
||||
*
|
||||
* @group Settings
|
||||
* @author [A. Gianotto]
|
||||
* @since [v6.3.1]
|
||||
*/
|
||||
|
||||
@@ -17,11 +17,7 @@ use Illuminate\Http\JsonResponse;
|
||||
class StatuslabelsController extends Controller
|
||||
{
|
||||
/**
|
||||
* Show Status Labels
|
||||
*
|
||||
* @group Status Labels
|
||||
* @subgroup Assets
|
||||
* @queryParam search string Search term to filter results. Example: Inventory
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
@@ -89,11 +85,9 @@ class StatuslabelsController extends Controller
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @group Status Labels
|
||||
* @subgroup Assets
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*@since [v4.0]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
*/
|
||||
public function store(Request $request) : JsonResponse
|
||||
{
|
||||
@@ -125,13 +119,11 @@ class StatuslabelsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Status Labels
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Status Labels
|
||||
* @subgroup Assets
|
||||
* @param int $id
|
||||
*@since [v4.0]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
*/
|
||||
public function show($id) : array
|
||||
{
|
||||
@@ -143,14 +135,12 @@ class StatuslabelsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Update Status Label
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @group Status Labels
|
||||
* @subgroup Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
*@author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
public function update(Request $request, $id) : JsonResponse
|
||||
{
|
||||
@@ -182,13 +172,11 @@ class StatuslabelsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete Status Label
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @group Status Labels
|
||||
* @subgroup Assets
|
||||
* @param int $id
|
||||
*@since [v4.0]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
*/
|
||||
public function destroy($id) : JsonResponse
|
||||
{
|
||||
@@ -209,10 +197,8 @@ class StatuslabelsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Show Count for Pie Chart
|
||||
* Show a count of assets by status label for pie chart
|
||||
*
|
||||
* @group Status Labels
|
||||
* @subgroup Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v3.0]
|
||||
*/
|
||||
@@ -243,10 +229,8 @@ class StatuslabelsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Count for Pie Chart by Meta Status
|
||||
* Show a count of assets by meta status type for pie chart
|
||||
*
|
||||
* @group Status Labels
|
||||
* @subgroup Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v6.0.11]
|
||||
*/
|
||||
@@ -273,13 +257,11 @@ class StatuslabelsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Show Assets with Status Label
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @group Status Labels
|
||||
* @subgroup Assets
|
||||
* @param int $id
|
||||
*@since [v4.0]
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
* @param int $id
|
||||
*/
|
||||
public function assets(Request $request, $id) : array
|
||||
{
|
||||
@@ -307,8 +289,6 @@ class StatuslabelsController extends Controller
|
||||
|
||||
|
||||
/**
|
||||
* Check for Deployable Status
|
||||
*
|
||||
* Returns a boolean response based on whether the status label
|
||||
* is one that is deployable or pending.
|
||||
*
|
||||
@@ -316,8 +296,7 @@ class StatuslabelsController extends Controller
|
||||
* we should provide a dropdown of users for them to check the asset out to,
|
||||
* and whether we show a warning that the asset will be checked in if it's already
|
||||
* assigned but the status is changed to one that isn't pending or deployable
|
||||
* @group Status Labels
|
||||
* @subgroup Assets
|
||||
*
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0]
|
||||
*/
|
||||
@@ -332,10 +311,8 @@ class StatuslabelsController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* Selectlist
|
||||
* Gets a paginated collection for the select2 menus
|
||||
*
|
||||
* @group Status Labels
|
||||
* @subgroup Assets
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v6.1.1]
|
||||
* @see \App\Http\Transformers\SelectlistTransformer
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user