{"_id":"kinvey-cli","_rev":"79-87601c5e52c6212d7b85a0af0a26cffe","name":"kinvey-cli","description":"Command-line utility for managing various aspects of your Kinvey account","dist-tags":{"latest":"6.2.4"},"versions":{"1.0.0":{"name":"kinvey-cli","version":"1.0.0","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"coffeelint --file ./.coffeelint bin/ cmd/ config/ lib/ test/","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"94d61ba4fb8cf5bda4151f54459a73ed99c35f2f","_id":"kinvey-cli@1.0.0","_shasum":"a70275da2a344abfc4a18f58cb1b03e3d2443718","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.3.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"a70275da2a344abfc4a18f58cb1b03e3d2443718","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.0.0.tgz","integrity":"sha512-VU05TvKBjh7s6WGc0r4hG2bMkPrVFdXCcpJhw8pyvvel4YSbS7qSZ5fOH+PPuheYQaQ/MCv6d7GvHogxcuKN3A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAmiy5huGkotznr5/blXkYzZNRNKt0RReOBq44fGOnlgAiEA/naCzzPfhbQNwV/OzlnVqbteimd7+LCsafgrz37K0Qc="}]},"maintainers":[{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/kinvey-cli-1.0.0.tgz_1478794842953_0.30236480361782014"},"directories":{}},"1.0.1":{"name":"kinvey-cli","version":"1.0.1","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"coffeelint --file ./.coffeelint bin/ cmd/ config/ lib/ test/","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"7b6cf03b075c1f17b7a43cbe234f705653dc4fc4","_id":"kinvey-cli@1.0.1","_shasum":"647f161fea6460bc40da8349411252d15990d600","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.3.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"647f161fea6460bc40da8349411252d15990d600","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.0.1.tgz","integrity":"sha512-tbhSN4ic4ZLrxLCgPhOzVMeqPgqVqGLpIUHeQ5iAsTi4K0qtM9oWDHiCdK7WIA9wZXlDLBoguQxEp9jtunRnCQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHuYJGftGey/1ya9L28mZR9+bhIJZ8LRvoEhMdddj8vAAiBQlg/xACX3WygZ6GM84xdaALfiSddyzDM8SzlmSYtwIA=="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/kinvey-cli-1.0.1.tgz_1479259167179_0.19685920514166355"},"directories":{}},"1.0.2":{"name":"kinvey-cli","version":"1.0.2","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"coffeelint --file ./.coffeelint bin/ cmd/ config/ lib/ test/","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"be5b1bfba3f0aa8e0a00cc5799af39534789e9f0","_id":"kinvey-cli@1.0.2","_shasum":"c100d079a8af2bafa5e445506e9c1617aec91437","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.3.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"c100d079a8af2bafa5e445506e9c1617aec91437","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.0.2.tgz","integrity":"sha512-h5FlVA3iX+bqpTDfnwQNmYxOLQn7RgeKpKviX6ag4no6jDQNue02+FXDGznSjI2jJP3OWUQqXcVrcr0H2J57QQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDuwrWV818dMM74uHgcla8ZA9ZMDhjqfF5F+y/jkjb2+AIhAKr2uVczK56JdVMCGWqWGuyQ7vslniA099OsZI1dLh4A"}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/kinvey-cli-1.0.2.tgz_1479262563918_0.23362729279324412"},"directories":{}},"1.1.0":{"name":"kinvey-cli","version":"1.1.0","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"coffeelint --file ./.coffeelint bin/ cmd/ config/ lib/ test/","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"ee64db8a0b9f83233e34ffe89775d997ee841d0a","_id":"kinvey-cli@1.1.0","_shasum":"3133e9d9da7c887178b4bc5f6fc8d57142f90854","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"3133e9d9da7c887178b4bc5f6fc8d57142f90854","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.1.0.tgz","integrity":"sha512-fPVVCZCgtCeBlBbaxpsugJ3fgf2GYk5elhso2+Iod+zXcccD1hzQOD09odVpXIB02HglNIDbkE5u9RJivhVwCw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG5NYWIDtOVVqCbPlgePvNaAJTb2/8+K3Yj6mNsabLHEAiAJLp/4QHLhXpEWdOdgya6s3zay6KhyquNqKD8QwLHx2A=="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/kinvey-cli-1.1.0.tgz_1483980180072_0.6904672095552087"},"directories":{}},"1.1.1":{"name":"kinvey-cli","version":"1.1.1","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"coffeelint --file ./.coffeelint bin/ cmd/ config/ lib/ test/","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"c63c4315aaade87ef89f085a0f3d7989997ad7f3","_id":"kinvey-cli@1.1.1","_shasum":"60e12dd9c636b0d1afbdbc8cc7a4ca8c08949c15","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"60e12dd9c636b0d1afbdbc8cc7a4ca8c08949c15","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.1.1.tgz","integrity":"sha512-RBicg7SppEN9yyVhrRwIxaRPBJW0jd5eqA/Ghrxm51N5TU3Nd5VhBKqAiu4klKRZWxYc0uaHDzfvKJASTJIONw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDOyjcFvoAhzHnxeLHkOgIgjs2bgvCPMAsEONAW5qZkIQIgP/5Og26xjVUl3nI7wyvat2I+RaHi5XjHKR8V7Rdjh2k="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/kinvey-cli-1.1.1.tgz_1484240702935_0.33165302802808583"},"directories":{}},"1.1.2":{"name":"kinvey-cli","version":"1.1.2","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"coffeelint --file ./.coffeelint bin/ cmd/ config/ lib/ test/","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"8fbddd60cf5b5257df6251a2768650ff7c4ab47a","_id":"kinvey-cli@1.1.2","_shasum":"92bcda2e5a0699fb0e809219bf7334dc874d14b5","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"92bcda2e5a0699fb0e809219bf7334dc874d14b5","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.1.2.tgz","integrity":"sha512-P/vivbPKCFh93Ee+5jNl0hhxjf7moXtEIaC6Qheoop4h2CqKkmBLUMl+ryiEP3H6SiIFmop7ub/0Hc4UpZYF5A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDTpAUhAKSd9EcYvVjxq/Bn4GewYaSRPyE/hgrSwje+AIgP1fwXM4Wkzq3UZDbUmencoXyCRngN7esc9NKCVex8W8="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/kinvey-cli-1.1.2.tgz_1485460850250_0.48451178218238056"},"directories":{}},"1.1.3":{"name":"kinvey-cli","version":"1.1.3","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"coffeelint --file ./.coffeelint bin/ cmd/ config/ lib/ test/","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"81003d466c143d5e8b9afa255284a90708b45b8c","_id":"kinvey-cli@1.1.3","_shasum":"588ecb15d6497d26c745ad07331abc80e08ca016","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"588ecb15d6497d26c745ad07331abc80e08ca016","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.1.3.tgz","integrity":"sha512-3QN0FpPbD389kaIQp8r13/SASmunr17OF3XMMuP45KzhWotuENglHm1LAi1bx+sBnExcRMlWljDSnh6HcBmv/A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEaTZ2L3/HJfQClNXR7x/MaJRCV6PPeZoCYOhg1VsMmCAiA7B5SS0Ko8ApAHlhQkzKY8L+Qnr8PV0PlnTu9Y/efiRg=="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/kinvey-cli-1.1.3.tgz_1488042946222_0.49872813443653286"},"directories":{}},"1.1.4":{"name":"kinvey-cli","version":"1.1.4","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"coffeelint --file ./.coffeelint bin/ cmd/ config/ lib/ test/","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"0624ebd3f832816604362d15b667e22f57db0923","_id":"kinvey-cli@1.1.4","_shasum":"e3ce3bb55a617beee7c4abe12374dd904590c659","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"e3ce3bb55a617beee7c4abe12374dd904590c659","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.1.4.tgz","integrity":"sha512-X+W5LBVgZpI71BZMzP5idSsJq7ThH6kKXMjTSSlkvu1T9AuHmUQVApZBCiP4WC6Gt8pNpHmNVCbGSH6QU+xR5w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCw5BEa7Xc43R1sLURqx8vu1uARuFrBhcxf/jodqOpmmAIhAPcEagIU1JHTzsGxKLG05CsZKZfVYMGrNfypUswmOBg6"}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/kinvey-cli-1.1.4.tgz_1493995911670_0.9477492205332965"},"directories":{}},"1.1.5":{"name":"kinvey-cli","version":"1.1.5","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"coffeelint --file ./.coffeelint bin/ cmd/ config/ lib/ test/","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"63f5c572a894217745c99c1f8a24a97682e72997","_id":"kinvey-cli@1.1.5","_shasum":"0e0c150f593e459802b7d8d8d75dff58082dbfc2","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"0e0c150f593e459802b7d8d8d75dff58082dbfc2","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.1.5.tgz","integrity":"sha512-bF/xmjkQzyQYwraSp16sNdYGDyK9WnNHOo5VxFuR8FAjUdfuz44db5ossQso0xjxGgzND7DY2fVZzpDOsOl5Gg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCeTxmlICRhvceSnwg8fRafIHaVFLc5Qn2oNUcr6zL/GAIgXdx112LU3kgZ8yeXqdoCVSZAXIFoVAYvnGmAvbVwkKo="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli-1.1.5.tgz_1497968866061_0.8476440752856433"},"directories":{}},"1.2.0-rc.1":{"name":"kinvey-cli","version":"1.2.0-rc.1","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"eslint bin cmd config lib test","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"d7c749eb19564043f93c279e04fe26344e9daac5","_id":"kinvey-cli@1.2.0-rc.1","_shasum":"eb95e48f470875602f84a96fc34e45129d4010be","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"eb95e48f470875602f84a96fc34e45129d4010be","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.2.0-rc.1.tgz","integrity":"sha512-YNAJRdp7JWz0/ODqCUMWrpKyAoPbALZ5QVOIk00PeC7LTZznWFau6nKzkUuxeBC+Lu2C3bR5lsU8VIcAfmlFFg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDjEnJb8yWB9pKF+zu0iP1rP/gvb6EX2MnwPFw0x/2xtwIhAPPIW5cSQpsxGlmoGpcT0TLjEvA3jGW43gJl+x7imcGm"}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli-1.2.0-rc.1.tgz_1499885790392_0.30824867566116154"},"directories":{}},"1.2.0":{"name":"kinvey-cli","version":"1.2.0","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"eslint bin cmd config lib test","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"eb5af7685204e5b09c3fa30201dc8f442a1a2c31","_id":"kinvey-cli@1.2.0","_shasum":"e27a2d048803b43695ad1a0f0e20523038eca8ac","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"e27a2d048803b43695ad1a0f0e20523038eca8ac","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.2.0.tgz","integrity":"sha512-UC2WFV7cbj6kMyucXjck5ob4QFPCp3OI3XAPgpz/o/JR3eBI4IfmCYQ2QRSR603Y2YiyDGrXMe4+7MM3DQ2OJA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIARj2TK6fjAKE2DdNAzt3f1JV0TlK0hR8VUjY+6AncnbAiEA3bDElXD0OGTl5OR7seOzlLo47NftvRXss/EU8SPhFDs="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli-1.2.0.tgz_1500994848020_0.0671652217861265"},"directories":{}},"1.2.1":{"name":"kinvey-cli","version":"1.2.1","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"eslint bin cmd config lib test","test":"mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"1.1.1","coffee-script":"1.10.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","coffeelint":"1.12.1","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","mocha":"2.3.3","nock":"2.12.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"1810a9cd960b1ba3ec47a855c011f787caf263ec","_id":"kinvey-cli@1.2.1","_shasum":"b9a4dd28750f898496f9dab8f33c0d7f434d8d12","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"b9a4dd28750f898496f9dab8f33c0d7f434d8d12","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-1.2.1.tgz","integrity":"sha512-9Nej9sLZLHPusK++Rpn5piyeDV4kMvfWySTDbXrJe0HXZ+pW9iyD/AvYBHP7j8ew7yRknz9dxo2BwmRkhJ1WKQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEP0ekrpx+3x/DYYjTszW0MaUmjWLSpJ5ZTmMRZ7RMGtAiEAlLubzRpCgIeU2mcZc+aMxBL9jVDdxt9DvI/dMAcH9WQ="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli-1.2.1.tgz_1501030615853_0.980394221143797"},"directories":{}},"2.0.0-beta.0":{"name":"kinvey-cli","version":"2.0.0-beta.0","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"eslint bin cmd config lib test","test":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","mocha":"2.3.3","nock":"2.12.0","nyc":"11.1.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"5d2263026f240c99ac9b4284191086cdf99b9fb5","_id":"kinvey-cli@2.0.0-beta.0","_shasum":"d2231763c2b369a7da244748d1836f91d042275c","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"d2231763c2b369a7da244748d1836f91d042275c","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-2.0.0-beta.0.tgz","integrity":"sha512-MGixiHxt44vEyqMECXzZakFrX64aGXlYIXXhMYGCCsATM/3u7OH/OxDmdx1ued2sNpkhwG2pVvKzKAk+w/Z9EQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD5x/mYrCi3SW8YkUsbaLG4OdEe3IhaTTO48KbtoLV1kgIhAKbvE1mus1v2H27pdCbAZwKzsCXZ29JdmakJT7PyWjuH"}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli-2.0.0-beta.0.tgz_1505838734030_0.5415697824209929"},"directories":{}},"2.0.0-beta.1":{"name":"kinvey-cli","version":"2.0.0-beta.1","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"eslint bin cmd config lib test","test":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test/"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","mocha":"2.3.3","nock":"2.12.0","nyc":"11.1.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"a144c24fe7644abfaefcb22fde58d709a6543834","_id":"kinvey-cli@2.0.0-beta.1","_shasum":"549c462dabd1551038476cab43a2d33fce528478","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"549c462dabd1551038476cab43a2d33fce528478","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-2.0.0-beta.1.tgz","integrity":"sha512-gICw6iLQPTzHRWjPeec7qo2DhefCY4Uu6gRNhnoGKjyZHel4yWcI2XjM+YownPXNFpgYvemCjWFHZIiVrLqrQA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3/dWsevWuMuVqFUh6/Jj077LaWjt5HEnfp7zMo0LXQgIgLI3pUPSkH7QDv2rCOJUFily7aXuBpKMRBdANASmPEH0="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli-2.0.0-beta.1.tgz_1505851469791_0.7960271385964006"},"directories":{}},"2.0.0":{"name":"kinvey-cli","version":"2.0.0","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"eslint bin cmd config lib test","test":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test/ --NODE_CONFIG_DIR=./test/config","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration --NODE_CONFIG_DIR=./test/config"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","mocha":"2.3.3","nock":"9.0.14","nyc":"11.1.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"868b9632f7835e9b6a0597bd2305419904e248e6","_id":"kinvey-cli@2.0.0","_shasum":"7ac448c6f58ce653e9514e645f5cb23a8402d9b4","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"7ac448c6f58ce653e9514e645f5cb23a8402d9b4","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-2.0.0.tgz","integrity":"sha512-e4svWt3HwNofCip8/iFRBm1/kit4Wil382x2VsWY5hfqxE93JbmiJim2KPp46fchXrUMHWWT5cXceqphD1RFhg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAJIWDGjuYEFVVh3CpOayixPpB3tCs8ZjMIN2K4OPzlGAiEAtcxQ5qfXUTDYp6emaZyvM8Cix3QxwExSnExZWlSaQxU="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli-2.0.0.tgz_1507169469187_0.4557900968939066"},"directories":{}},"2.1.0":{"name":"kinvey-cli","version":"2.1.0","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/cli.js"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/cli.js","pretest":"eslint bin cmd config lib test","test":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test/ --NODE_CONFIG_DIR=./test/config","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration --NODE_CONFIG_DIR=./test/config"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","commander":"2.8.1","config":"1.16.0","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.merge":"3.3.2","moment":"2.11.2","os-homedir":"1.0.1","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9"},"devDependencies":{"chai":"3.3.0","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","mocha":"2.3.3","nock":"9.0.14","nyc":"11.1.0","sinon":"1.17.0","sinon-chai":"2.8.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"7b2b6b5e28ab82a012bdcf31ab8e6dd555ec1078","_id":"kinvey-cli@2.1.0","_shasum":"4015c0c8c012725a2b62c6ebd5b1ac130fec3010","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"sjl2024","email":"sjl2024@gmail.com"},"dist":{"shasum":"4015c0c8c012725a2b62c6ebd5b1ac130fec3010","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-2.1.0.tgz","integrity":"sha512-CRIbPGnLE1eflXVKaKTeO8UDhfCryUcof4qdkwoD3AJbw+ILk0qH3cdzyC/PWGdor+S6ij86H06OSN10I9cORw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC9MDPDOiY/Cul6Wa5D6CEnFCG+QwOsgTWE0T8IMxpfIAiEAlvjHlRL7v8I9xGcG2Omo1jGsRmb7QucmDfzLV5SsLLo="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@kinvey.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli-2.1.0.tgz_1509056729229_0.810223676962778"},"directories":{}},"3.0.0-beta.0":{"name":"kinvey-cli","version":"3.0.0-beta.0","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","pretest":"eslint bin config lib test","test":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test/integration --NODE_CONFIG_DIR=./test/config","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.9.1","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","moment":"2.11.2","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","express":"4.16.2","mocha":"2.3.3","nock":"9.0.14","nyc":"11.1.0","sinon":"1.17.0","sinon-chai":"2.8.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"7311b518bd5fa59b99a8e6f607b1c9970042acfc","_id":"kinvey-cli@3.0.0-beta.0","_shasum":"fe47cc35f77cc9ee8a823812115bd90470b666f7","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"fe47cc35f77cc9ee8a823812115bd90470b666f7","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-3.0.0-beta.0.tgz","integrity":"sha512-G3/iiuwS3/Nm10oZTCVxpFqhXaFXTHfRqQoA0OYfkPy1N79OgChvGWfxlead0YTuO3/uBgoi3WTDev4rhxV+Iw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGhCNc9D1QCLM2Ahaqh7BdG+9dd+xX5zLJN/q/1EPU5fAiEA/K0uPhvL/enOusygZQHfHVjViR/dCQC4gy6wwqbW8eQ="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli-3.0.0-beta.0.tgz_1513271236018_0.12469320720992982"},"directories":{}},"3.0.0-beta.1":{"name":"kinvey-cli","version":"3.0.0-beta.1","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"eslint bin config lib test","test":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test/integration --NODE_CONFIG_DIR=./test/config","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.9.1","custom-logger":"0.3.1","inquirer":"0.10.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","moment":"2.11.2","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","express":"4.16.2","mocha":"2.3.3","nock":"9.0.14","nyc":"11.1.0","sinon":"1.17.0","sinon-chai":"2.8.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"gitHead":"e69bac79bc23b8a30ef681baa440e56df1ccb200","_id":"kinvey-cli@3.0.0-beta.1","_shasum":"45bf6b0585835b236f144953621383568d1de29d","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"45bf6b0585835b236f144953621383568d1de29d","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-3.0.0-beta.1.tgz","integrity":"sha512-pQH36J7+oTLxVsOyTCyZ79n3b3Jkv03B3iv0LDerh4+9yNHdQAfxtxLHZQeVyRrRIAYI+IsW8wRzGcOT6zmG5g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC2RyRQ9N0z08q3ynXaZ5SHoKl9NWqrL6vHwX0VxMONHAiEAnYK1pflkJUkQYDAxk3yQKxnE/UVEEVHz9Vp40RquSq4="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli-3.0.0-beta.1.tgz_1515056987092_0.01519025512970984"},"directories":{}},"3.0.0-beta.2":{"name":"kinvey-cli","version":"3.0.0-beta.2","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"eslint bin config lib test","test":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.10.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","moment":"2.11.2","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","express":"4.16.2","mocha":"2.3.3","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false},"readme":"# Kinvey CLI\r\n\r\nKinvey CLI is a utility for deploying and managing FlexServices running on the Kinvey FlexService Runtime.\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and host and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values in the environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete <name>`\r\n\r\n   Deletes the specified profile.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Each successive execution in the same directory overwrites the configuration file. Command-line options that specify the same data as the prompted-for data are ignored.\r\n\r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime. To use a different service than the one initiated last, specify its service ID.\r\n   \r\n   * `--serviceId <Flex Service ID>`\r\n      \r\n         Specifies a Flex Service by its ID.\r\n\r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current (the one you initiated last) Flex Service. To get the status of a different service, specify its service ID using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n   \r\n      Specifies a Flex Service by its ID.\r\n\r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services inside the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n      Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n      App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays Flex Services logs. Logs calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. You can specify a Flex Service to read logs from using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n\r\n      Specifies a Flex Service by its ID.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current (the one you initiated last) Flex Service. To recycle a different service, specify its service ID using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n   \r\n      Specifies a Flex Service by its ID.\r\n\r\n* `flex delete`\r\n\r\n   Deletes the current Flex Service configuration from the Node.js project directory that it has been executed in.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, and `--host` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--host <host>`\r\n\r\n   Hostname of a Kinvey instance. It has a default value of `https://manage.kinvey.com/` which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated host name as either an absolute URI (`https://kvy-us2-manage.kinvey.com/`) or an instance name only (`kvy-us2`).\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <json>`\r\n   \r\n   Output format. Aside from the default format, JSON is also supported.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse these environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_HOST`\r\n\r\n   Hostname of a Kinvey instance. It has a default value of `https://manage.kinvey.com/` which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated host name as either an absolute URI (`https://kvy-us2-manage.kinvey.com/`) or an instance name only (`kvy-us2`).\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify a host if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active account if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Host https://manage.kinvey.com/\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy you node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --host kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to recreate the profile to keep working with Kinvey CLI. You can do that by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --serviceId <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_HOST=<host>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_HOST=<host>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n\r\nIf you are using a profile that has been configured a while ago, you can stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"6e2cd3715a7942576c106235efb77ce1ea441c6c","_id":"kinvey-cli@3.0.0-beta.2","_shasum":"08a312f335cea905b74ef38ed61c8a4788f0067f","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"08a312f335cea905b74ef38ed61c8a4788f0067f","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-3.0.0-beta.2.tgz","fileCount":524,"unpackedSize":70946957,"integrity":"sha512-RtzDWACS7GnmjHmaLELbMYF7LRi9heYvldOOaKCxo22jlCaZZopLQOzhVqGdOTnzknGtcBlDfbWQeLFXlqTosQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHX5+GpVpemQMpyWPPnUCY7qEnPrX9Vn9YLeNW4AnSoXAiEA7ftEWRNboEyEd/6XocV4Wp0TbFK0cBozT2rWT08E5nw="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_3.0.0-beta.2_1518172233428_0.19570772521426427"},"_hasShrinkwrap":false},"3.0.0-beta.3":{"name":"kinvey-cli","version":"3.0.0-beta.3","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"eslint bin config lib test","test":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.10.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","moment":"2.11.2","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"2.11.1","eslint-config-airbnb-base":"3.0.1","eslint-plugin-import":"1.8.1","express":"4.16.2","mocha":"2.3.3","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false},"readme":"# Kinvey CLI\r\n\r\nKinvey CLI is a utility for deploying and managing FlexServices running on the Kinvey FlexService Runtime.\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and host and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values in the environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete <name>`\r\n\r\n   Deletes the specified profile.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information inside the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime. To use a different service than the one initiated last, specify its service ID.\r\n   \r\n   * `--serviceId <Flex Service ID>`\r\n      \r\n         Specifies a Flex Service by its ID.\r\n\r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current (the one you initiated last) Flex Service. To get the status of a different service, specify its service ID using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n   \r\n      Specifies a Flex Service by its ID.\r\n\r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services inside the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n      Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n      App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays Flex Services logs. Logs calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. You can specify a Flex Service to read logs from using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n\r\n      Specifies a Flex Service by its ID.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current (the one you initiated last) Flex Service. To recycle a different service, specify its service ID using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n   \r\n      Specifies a Flex Service by its ID.\r\n\r\n* `flex delete`\r\n\r\n   Deletes the current Flex Service configuration from the Node.js project directory that it has been executed in.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, and `--host` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instanceId <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse these environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify a host if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active account if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy you node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --host kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to recreate the profile to keep working with Kinvey CLI. You can do that by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --serviceId <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n\r\nIf you are using a profile that has been configured a while ago, you can stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"5ef84abcfc3f1d4b8e2724ae7e3ac3fe5c8842c4","_id":"kinvey-cli@3.0.0-beta.3","_shasum":"72e140a6001f6bef6a22ab1db2f9f699c0b03970","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"72e140a6001f6bef6a22ab1db2f9f699c0b03970","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-3.0.0-beta.3.tgz","fileCount":530,"unpackedSize":73766745,"integrity":"sha512-YZPxNvQYmaeFH2RAOxI+9Tb54OmEYj6oQD9C5tGfVcfMwwgI36GXvvuJqr7GKgZc4sanT7V5DQ9O1Tw1vyb0zw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDPQyFqIMHLrktZSa69SibKo53U/UUm6gjS3ZKeuEpVcgIhAK5S9LDSZ4WAVLgd2xpA0NPsLFSaXBOzqUMtNwueL9SK"}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_3.0.0-beta.3_1518552671549_0.32432511031060196"},"_hasShrinkwrap":false},"3.0.0-beta.4":{"name":"kinvey-cli","version":"3.0.0-beta.4","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"eslint bin config lib test","test":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.10.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","moment":"2.11.2","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"2.3.3","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false},"readme":"# Kinvey CLI\r\n\r\nKinvey CLI is a utility for deploying and managing FlexServices running on the Kinvey FlexService Runtime.\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and host and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values in the environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete <name>`\r\n\r\n   Deletes the specified profile.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information inside the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime. To use a different service than the one initiated last, specify its service ID.\r\n   \r\n   * `--serviceId <Flex Service ID>`\r\n      \r\n      Specifies a Flex Service by its ID.\r\n\r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current (the one you initiated last) Flex Service. To get the status of a different service, specify its service ID using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n   \r\n      Specifies a Flex Service by its ID.\r\n\r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services inside the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n      Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n      App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays Flex Services logs. Logs calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. You can specify a Flex Service to read logs from using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n\r\n      Specifies a Flex Service by its ID.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current (the one you initiated last) Flex Service. To recycle a different service, specify its service ID using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n   \r\n      Specifies a Flex Service by its ID.\r\n\r\n* `flex delete`\r\n\r\n   Deletes the current Flex Service configuration from the Node.js project directory that it has been executed in.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, and `--host` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instanceId <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse these environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify a host if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy you node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --host kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to recreate the profile to keep working with Kinvey CLI. You can do that by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --serviceId <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n\r\nIf you are using a profile that has been configured a while ago, you can stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"80f6e20b6cbe4c73f88b1c27b614741273effdd4","_id":"kinvey-cli@3.0.0-beta.4","_shasum":"dea008472a2b3456405219205fbf0c12d186e6f7","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"dea008472a2b3456405219205fbf0c12d186e6f7","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-3.0.0-beta.4.tgz","fileCount":29,"unpackedSize":175035,"integrity":"sha512-Vgk8UUn0v+ZlYmk8iY7FdcbkfUUz3617cz7u1VXfq7tt/aSA0tbIl81blmwePM/Y8DBwbBhFSkbQhd8DZK24dA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJSxFc3CrXyyYCh3gsfzGsGcphrjGzLQeSuvLWVRlXdwIgbWft/koyNa7IrkYfdZZFzbKiYDxO1M1Q7nfiOrY7Y4Q="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_3.0.0-beta.4_1519245950967_0.2311958746211007"},"_hasShrinkwrap":false},"3.0.0":{"name":"kinvey-cli","version":"3.0.0","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"eslint bin config lib test","test":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.10.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","moment":"2.11.2","request":"2.63.0","update-notifier":"0.5.0","uuid":"2.0.3","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"2.3.3","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false},"gitHead":"493ca7331a9abda7a671f99fe6af4530bc8930b4","_id":"kinvey-cli@3.0.0","_shasum":"ef27455796cb5a1cd878912bdc3a275e87ff2ea4","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"ef27455796cb5a1cd878912bdc3a275e87ff2ea4","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-3.0.0.tgz","fileCount":29,"unpackedSize":175582,"integrity":"sha512-NkJJ9pibrfhAC14uzRLHv7waktUunOa2BBl+7GZkwK/6NJ0yZRAoce8gtkmKFKSGejrk8+7iagR503y6H9eUYQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGRHYZs+WXcRmVvp/0/BxIGbKRvN/fEliniwfF/qv7pYAiBSDrdgJhJIrDUJgbY5vLH9/r7bwXUMIlrsrObKFUWBIw=="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_3.0.0_1519655134701_0.5314829799557972"},"_hasShrinkwrap":false},"3.1.0":{"name":"kinvey-cli","version":"3.1.0","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration/commands/flex && mocha test/integration/commands/init && mocha test/integration/commands/profile","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.11.2","request":"2.63.0","suppose":"0.6.2","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false},"gitHead":"d61362d45625dde7c939fea99c14071fe1d98eec","_id":"kinvey-cli@3.1.0","_shasum":"005c76369f9413cdc77acb851772b799429f120b","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"005c76369f9413cdc77acb851772b799429f120b","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-3.1.0.tgz","fileCount":43,"unpackedSize":239103,"integrity":"sha512-hOCWufIjdkiIxC4AZpBbA9Us/uw3NiT40Ljgj6+fS0fVUgTtdVDa1Zkqd4MvGBiplWb62zDEtmYE9/aNB9BppA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDCONvIwgotDL60EpBAyOCiYmLU4ODCbqxnl1afPs8A8QIhALOcV7mXXft+A63SdEdYpWvisOz7Wy5YXIF4ojowsG9S"}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_3.1.0_1523609508098_0.4518300805743398"},"_hasShrinkwrap":false},"4.0.0-beta.0":{"name":"kinvey-cli","version":"4.0.0-beta.0","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.11.2","request":"2.63.0","suppose":"0.6.2","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false},"readme":"| LINTING            | UNIT            | INTEGRATION            |\r\n|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][4] | [![Build2][2]][4] | [![Build3][3]][4] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting environments\r\n* Creating, listing, and deleting collections\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show [org]`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show [app]`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application. You can specify an application by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete [app]`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You can specify an application by ID or name.\r\n\r\n* `env create <name>`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env show [env]`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n\r\n* `env use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env delete [env]`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime. To use a different service than the one initiated last, specify its service ID.\r\n   \r\n   * `--serviceId <Flex Service ID>`\r\n      \r\n      Specifies a Flex Service by its ID.\r\n\r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current (the one you initiated last) Flex Service. To get the status of a different service, specify its service ID using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n   \r\n      Specifies a Flex Service by its ID.\r\n\r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n      Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n      App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays Flex Services logs. Logs calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. You can specify a Flex Service to read logs from using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n\r\n      Specifies a Flex Service by its ID.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current (the one you initiated last) Flex Service. To recycle a different service, specify its service ID using the `--serviceId` option. In addition to the global options, this command supports the following options:\r\n\r\n   * `--serviceId <Flex Service ID>`\r\n   \r\n      Specifies a Flex Service by its ID.\r\n\r\n* `flex delete`\r\n\r\n   Deletes the current Flex Service configuration from the Node.js project directory that it has been executed in.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instanceId` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instanceId <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse these environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy you node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --serviceId <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"5fb5b2a21f06671fcc08951c58c6abca2ee507d9","_id":"kinvey-cli@4.0.0-beta.0","_shasum":"1e956b2d7390c63b1ff9b86ef4322f5867613962","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"1e956b2d7390c63b1ff9b86ef4322f5867613962","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.0.0-beta.0.tgz","fileCount":43,"unpackedSize":244228,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa3v7lCRA9TVsSAnZWagAAvCcP/1JWxY6zJ6Mc4qxPdbQN\nvel2RzMzJZm+actLhyIdR+Gy9JUsiLXgWVWNdgdyXOdaZzIShoms/KNo7PKo\noo3jFWjoXFK/wBpT+TmEZr6Jxgi57klz2BwTDdEE1IqGuxa7Vo8visX11NV6\nTjoFCN5jaYZYNmMgqpiho389tttQPvbOyGpwLVp2kudBPLPIlI4GM8iSsB/m\nSvMq0r2FXfAEf2eAAu7Qn9/ssCNwl7BcZ7MbrZpCYEGFq3e49+g7nR37ZLHo\nx9UCt5NX2O7seGg4B7GZqDMiUNklbNKUah4Qf+1vokN9hzVcsCEqVyZbchlD\nITcMpQT2wo0lLdt8IYGNy7GH4DtDJKu66ztcSZ6qryb6lb77XYVo5euvmCOO\nJGWTBHdbEOkLW+LEbauERUMY2Wmlmsrf3HwB0dVj43UaJw8gDzZVK4q28FUN\nI8BlHz/NuJHhgcIaI87GeMeBLH8UedX0uxZt/huSJx5XUV16kM8QemnnIzIr\nv1s4LT7vvfu9xSd/kEecNj2Oslu2kXFuqWWLU/Fbpun8qigsodxnghUlcXRs\nTX90tEwVSrs+NbuMIYmSLv51oIVJVm1QgsJhmjwSBg8ybVaxA6zZa6uqI0xi\nLG3VZKUV0FQ7B/E1wUQPrIO8xVdTh3/2BD8qqrjenjm+He7CbqDZYNg5jiKV\ncFP+\r\n=zPT3\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-nxEj6+z0RmRSdcNmVM7WvVgB0fzhmCGxihdx6pJyk+mQ9ZFNMUGWQBLo0K9iySs7l9Je2zfiDPSdfE4XkoKc7Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAIrMaoe2CeZhUUkimMMzH3su/OkOab+Or+31XI99B/aAiAfISw4s7tTMNx/LwQOxsNJcb3OE60kM6pkqGXgcWnCYw=="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.0.0-beta.0_1524563685223_0.9724359395891276"},"_hasShrinkwrap":false},"4.0.0-beta.1":{"name":"kinvey-cli","version":"4.0.0-beta.1","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT            | INTEGRATION            |\r\n|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][4] | [![Build2][2]][4] | [![Build3][3]][4] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting environments\r\n* Creating, listing, and deleting collections\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show [org]`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show [app]`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application. You can specify an application by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete [app]`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You can specify an application by ID or name. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `env create <name>`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env show [env]`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n\r\n* `env use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env delete [env]`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n          Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n          Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n          Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n        \r\n* `flex deploy [serviceId]`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service, which is the one you initiated last. To use a different service, specify its service ID.\r\n\r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status [serviceId]`\r\n\r\n   Displays the health of the current Flex Service, which is the one you initiated last. To get the status of a different service, specify its service ID.\r\n\r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n      Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n      App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs [serviceId]`\r\n\r\n   Retrieves and displays logs for the current Flex Service, which is the one you initiated last. To get logs for a different service, specify its service ID. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex recycle [serviceId]`\r\n   \r\n   Recycles the current Flex Service, which is the one you initiated last. To recycle a different service, specify its service ID.\r\n\r\n* `flex delete [serviceId]`\r\n\r\n    Deletes the current Flex Service, which is the one you initiated last. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instanceId` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instanceId <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse these environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy you node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --serviceId <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"bddc18d87d0bd0a3fcd01b227aa18f4ce169849e","_id":"kinvey-cli@4.0.0-beta.1","_shasum":"d93709b572e43f576847ee2fa9cd28e9bad3a88f","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"d93709b572e43f576847ee2fa9cd28e9bad3a88f","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.0.0-beta.1.tgz","fileCount":43,"unpackedSize":255802,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbC/kZCRA9TVsSAnZWagAAZBsP/ixHrTarE7zOa1O+fp2a\nLnskK+EZcwQaTH/vnbNREo23ffjdHfrcY4CmV6l7hg0n89pUmA4GuNkFOLgL\nxz2HL1uV4ilklioUb+h+iOvA1elu6BJCzO2j7LNIHqcXfmXcVvA5ds4V3NM7\nzpr7epGDo0nL8OhE1i368z7I8DupyHrxLjNDZD58IdyRqBy6JTAFf3wRQJ9Z\ncqp6BwBbVPQ5ru7/jmuCdlCFurjgdYZBgYZamgacu9BcgAjpQJplw+LBsbTl\nGwQzYKLe3+7b7YFUYT0mSVyws3O8bMbn2rhDRNLCTPYs+wISVaqI4urUo4/n\nswGYMHrnKCT7iiSbIiI01bjpakP59SFZqbOWCvWNl8rvObq+0AJZtv9YVJr+\nfJXJC6z8B1/WQ/rlTUty/Vmw24OAp2v9/KVzQmq5uzsqAuEQA4lK3HdxIY0B\n/YpVx9vvpywtuOxTP4owXt38sTqvXeXRujI4IfYcEWIcBzQDVofVH1ifPokB\n0OiOCSrkLosyRTZgbKkPnis3oDajRHZj2BPyUJf8lDUrJZgp5Dui5tC1rLRz\n8mQsSSA6xZMHH8u0BneCehPbuDKANyih+5k0k7+6VziZiSgvUB2JDYxNbMoh\nZ3nhMrKqOatLwkbv021/tmo4mtkn5gZqqusHeNIPa/W25ZbmwD0S+mnnsSCJ\n7cRt\r\n=KMqx\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-NihAPTsObe6AjbW/RvSqeTAiyQDJ+KfbApx+mgDlqLRcQN4G7/JoKMv8u2sB5xx0VjRJnLoDNu3ZtBXxWFidBQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUuJTM/u0CPpKi3T8Ya1eLo5qlWmmohZKHevzbJoyZdwIgNi5+UtneWGvJRSXNxvLHODYBa7tbOwBf8RiJ1rY5Ehc="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.0.0-beta.1_1527511320565_0.9814336446037832"},"_hasShrinkwrap":false},"4.1.0-alpha.0":{"name":"kinvey-cli","version":"4.1.0-alpha.0","description":"Command-line utility for managing Kinvey accounts including Flex, apps, and collections","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.3.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT            | INTEGRATION            |\r\n|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][4] | [![Build2][2]][4] | [![Build3][3]][4] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting environments\r\n* Creating, listing, and deleting collections\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show [org]`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show [app]`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application. You can specify an application by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete [app]`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You can specify an application by ID or name. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `env create <name> [file]`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n* `env push <file> [env]`\r\n\r\n    Applies configuration (defined in file) to the specified environment or to the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n           \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env show [env]`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n\r\n* `env use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env delete [env]`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `service create <name> <file>`\r\n\r\n    Creates a service within an application or organization (either `--app` or `--org` must be specified).\r\n    \r\n    * `--app <application>`\r\n           \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--org <organization>`\r\n                \r\n      Specifies a Kinvey organization by ID or name.\r\n\r\n* `service push <serviceId> <file>`\r\n\r\n    Applies a service configuration file to the specified service.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n          Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n          Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n          Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n        \r\n* `flex deploy [serviceId]`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service, which is the one you initiated last. To use a different service, specify its service ID.\r\n\r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status [serviceId]`\r\n\r\n   Displays the health of the current Flex Service, which is the one you initiated last. To get the status of a different service, specify its service ID.\r\n\r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n      Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n      App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs [serviceId]`\r\n\r\n   Retrieves and displays logs for the current Flex Service, which is the one you initiated last. To get logs for a different service, specify its service ID. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex recycle [serviceId]`\r\n   \r\n   Recycles the current Flex Service, which is the one you initiated last. To recycle a different service, specify its service ID.\r\n\r\n* `flex delete [serviceId]`\r\n\r\n    Deletes the current Flex Service, which is the one you initiated last. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instanceId` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instanceId <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse these environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy you node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --serviceId <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Configuration management\r\n\r\nKinvey CLI supports the usage of configuration files (JSON format) to enable configuring certain aspects of the backend.\r\n\r\n**Environments** can be created and modified by applying an environment configuration file. The file can contain: environment-related settings, collections, business logic, roles, push settings.\r\n\r\n**Services** can be created and modified by applying a service configuration file. Supported services: internal flex service, external flex service.\r\n\r\n### Environment configuration file\r\n\r\nThe environment configuration file can be used to create a brand new environment or to modify an existing one. It is easiest to generate the file by 'exporting' an existent environment and making the necessary modifications. To export an environment run:\r\n \r\n ```\r\nkinvey env export <file> [env]\r\n```\r\n\r\nAlternatively, the environment template beneath can be used and modified as needed.\r\n\r\nTo create an environment from a configuration file run:\r\n ```\r\nkinvey env create <envName> [file-path] [--app AppNameOrId]\r\n```\r\n\r\nTo apply a configuration file to an existent environment run:\r\n ```\r\nkinvey env push <file-path> [envName] [--app AppNameOrId]\r\n```\r\n\r\nBefore an environment config file gets applied a check will be executed to verify JSON is valid and parameter values are allowed. If the check passes successfully, Kinvey CLI will start applying the changes. In the case of a new environment it will simply try to create all the entities described in the file. \r\n\r\nWhen the file is being applied to an existent environment then existent entities could be updated and new ones can be created. The CLI won't delete any entities even if they are not included in the file. Hence, if you want to create new endpoints but don't want to modify any existent collections for example, then you can exclude them from the configuration to have the file being applied faster.\r\n\r\nIf an error occurs, the CLI stops applying the file and outputs the error message.\r\n\r\n#### Environment sample config file\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"environment\",\r\n  \"settings\": {\r\n    \"apiVersion\": 3,\r\n    \"emailVerification\": {\r\n      \"required\": false\r\n    }\r\n  },\r\n  \"collections\": {\r\n    \"myCollection\": {\r\n      \"type\": \"internal\",\r\n      \"permissions\": \"shared\"\r\n    },\r\n    \"anotherCollection\": {\r\n      \"type\": \"external\",\r\n      \"permissions\": \"shared\",\r\n      \"service\": \"awesomeService\",\r\n      \"serviceObject\": \"awesomeServiceObject\"\r\n    }\r\n  },\r\n  \"commonCode\": {\r\n    \"my-common-code\": {\r\n      \"code\": \"var commonLogic = {};\\ncommonLogic.print = function print(msg) {\\n  console.log(msg);\\n};\"\r\n    },\r\n    \"another-common-code\": {\r\n      \"codeFile\": \"./another-common-code.js\"\r\n    }\r\n  },\r\n  \"collectionHooks\": {\r\n    \"myCollection\": {\r\n      \"onPreSave\": {\r\n        \"type\": \"internal\",\r\n        \"code\": \"function onPreSave(request, response, modules) {\\n  response.continue();\\n}\"\r\n      },\r\n      \"onPostSave\": {\r\n        \"type\": \"external\",\r\n        \"service\": \"awesomeService\",\r\n        \"handlerName\": \"awesomeHandler\"\r\n      }\r\n    }\r\n  },\r\n  \"customEndpoints\": {\r\n    \"myEndpoint\": {\r\n      \"type\": \"internal\",\r\n      \"codeFile\": \"./my-endpoint.js\",\r\n      \"schedule\": {\r\n        \"start\": \"2019-07-22T16:35:00Z\",\r\n        \"interval\": \"5-minutes\"\r\n      }\r\n    },\r\n    \"anotherEndpoint\": {\r\n      \"type\": \"external\",\r\n      \"service\": \"awesomeService\",\r\n      \"handlerName\": \"anotherHandler\"\r\n    }\r\n  },\r\n  \"roles\": {\r\n    \"Intern\": { \"description\": \"Interns\" },\r\n    \"Employee\": { \"description\": \"Employees\" }\r\n  },\r\n  \"push\": {\r\n  \t\"android\": {\r\n  \t  \"senderId\": \"id123\",\r\n  \t  \"apiKey\": \"key123\"\r\n  \t},\r\n  \t\"ios\": {\r\n  \t  \"production\": false,\r\n  \t  \"certificateFilePath\": \"./mycertdev.p12\"\r\n  \t}\r\n  }  \r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`settings` Environment settings. Optional.\r\n\r\n`settings.apiVersion` The default REST API version for this env.\r\n\r\n`settings.emailVerification` Options regarding email verification for users of this environment. Optional.\r\n                             \r\n`settings.emailVerification.required` *true|false* If true, users who have not verified their email will not be able to access the environment. Required.\r\n\r\n`settings.emailVerification.auto` *true|false* If true, automatically send a email verification request to all new users created within the environment. Optional.\r\n\r\n`settings.emailVerification.since` ISO-8601 date. If specified, any user created before this date will not need a verified email in order to access the environment. Optional.\r\n\r\n`collections` Environment collections. Optional. Object. Each first-level property is the name of a collection and contains an object describing this collection.\r\n\r\n`collections.[collectionName].type` *internal|external* If external, then the collection is backed by a flex service. Required.\r\n\r\n`collections.[collectionName].permissions` Collections permissions. Optional. Could be a string or an object. Allowed string values: private, full, shared, read-only. To specify roles, use an object in the following format:\r\n```\r\n\"permissions\": {\r\n  [roleName]: {\r\n    [operation]: [accessType]\r\n  }\r\n}\r\n```\r\nwhere **operation** is one of: *create, read, update, delete*\r\n\r\nand **accessType** is one of: *never, always, grant, entity*\r\n \r\n Example:\r\n\r\n```\r\n\"permissions\": {\r\n  \"all-users\": {\r\n    \"read\": \"always\"\r\n  },\r\n  \"Employee\": {\r\n    \"create\": \"always\",\r\n    \"read\": \"always\",\r\n    \"update\": \"always\",\r\n    \"delete\": \"grant\"\r\n  }\r\n}\r\n```\r\n\r\n`collections.[collectionName].service` Service to connect the collection to. Either service name or ID. Collection type must be set to 'external'.\r\n\r\n`collections.[collectionName].serviceObject` Service object. Collection type must be set to 'external'.\r\n\r\n`commonCode` Common code functions. Optional. An object where each first-level property is the name of the common code script.\r\n\r\n`commonCode.[commonCodeName].code` Code. Either `code` or `codeFile` must be set.\r\n \r\n`commonCode.[commonCodeName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` must be set.\r\n\r\n`collectionHooks` Collection hooks. Optional. An object where each first-level property is the name of a collection.\r\n\r\n`collectionHooks.[collectionName].[hookName]` *onPreSave|onPreFetch|onPreDelete|onPostSave|onPostFetch|onPostDelete* Hook type.\r\n \r\n`collectionHooks.[collectionName].[hookName].type` *internal|external* External if a service is involved. Required.  \r\n\r\n`collectionHooks.[collectionName].[hookName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].service` Service to use. Collection hook type must be set to 'external'.\r\n\r\n`collectionHooks.[collectionName].[hookName].handlerName` Handler name. Collection hook type must be set to 'external'.\r\n\r\n`customEndpoints` Custom endpoints. Optional. Object where each first-level property is the name of an endpoint.\r\n\r\n`customEndpoints.[endpointName].type` *internal|external* External if a service is involved. Required. \r\n\r\n`customEndpoints.[endpointName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].service` Service to use. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].handlerName` Handler name. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].schedule` Object describing how to schedule the endpoint. Optional.\r\n\r\n`customEndpoints.[endpointName].schedule.start` The code will be scheduled to start running at this date and time. ISO-8601 datetime. Required.\r\n\r\n`customEndpoints.[endpointName].schedule.interval` *weekly|daily|hourly|30-minutes|10-minutes|5-minutes|1-minute* At what intervals to execute the code. Optional.\r\n\r\n`roles` Roles. Optional. Object where each first-level property is the name of a role.\r\n\r\n`roles.[roleName].description` Role description. String. Optional.\r\n\r\n`push` Push notifications settings. Optional. Object.\r\n\r\n`push.android` Object describing Android settings. Optional.\r\n\r\n`push.android.senderId` Sender ID. Required.\r\n\r\n`push.android.apiKey` API Key. Required.\r\n\r\n`push.ios` Object describing iOS settings. Optional.\r\n\r\n`push.ios.production` *true|false* If false, then it is a development certificate. Required.\r\n\r\n`push.ios.certificateFilePath` Path to certificate - relative or absolute. Required.\r\n\r\n`push.ios.password` Certificate password. Optional.\r\n\r\n### Service configuration file\r\n\r\nThe service configuration file can be used to create a brand new internal or external flex service or to modify an existing one.\r\n\r\nTo create a service from a configuration file run:\r\n ```\r\nkinvey service create <serviceName> <file-path> [--app AppNameOrId|--org OrgNameOrId]\r\n```\r\n\r\nEither `--app` or `--org` option must be set. The service will be accessible only to the chosen application or organization respectively.\r\n\r\nTo apply a configuration file to an existent service run:\r\n ```\r\nkinvey service push <serviceId> <file-path>\r\n``` \r\n\r\nWhen a new internal flex service is created the CLI will attempt a deploy if `sourcePath` is set. \r\n\r\nWhen an existent internal flex service is updated and `sourcePath` is set, the CLI will attempt to deploy only if the version defined in `package.json` is higher then the cloud version. Otherwise, deployment procedure will be skipped.\r\n\r\n#### Service sample config file\r\n\r\nThe following service template can be used and modified as needed:\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"service\",\r\n  \"type\": \"flex-internal\",\r\n  \"secret\": \"123\",\r\n  \"description\": \"Some description here\"\r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`type` *flex-internal|flex-external* Service type. Required.\r\n \r\n`secret` Shared secret to use when communicating with the service.\r\n \r\n`description` Service description. String. Optional.\r\n \r\n`host` URI pointing to the service server's location. Required when `type` is 'flex-external'.\r\n\r\n`sourcePath` Path to source code - relative or absolute. Optional. Applicable when `type` is 'flex-internal'.\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"c19551b1ef2fc95f0c7ac1fdded006f0574cbcd2","_id":"kinvey-cli@4.1.0-alpha.0","_shasum":"6636b9030308462524d07cf8b1e91c14731d915c","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"6636b9030308462524d07cf8b1e91c14731d915c","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.1.0-alpha.0.tgz","fileCount":54,"unpackedSize":356719,"integrity":"sha512-f2ug6ArByICFzRLJ+mTZun6yFo4QQda2awkJmckXIEC7s0Z8WYguKGE5R/mTRakoV2aZZ6JyQaI/TYusiN95BQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEBpnrocVlW7isq5etC/yqKzAIyALdLLQRZ8hYNJ/n1XAiEAuXbFk7e/q5viECSCZU8CkYX32VGwKK2s5LopiaeoCic="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.1.0-alpha.0_1529585685047_0.5506980722895536"},"_hasShrinkwrap":false},"4.1.0-alpha.1":{"name":"kinvey-cli","version":"4.1.0-alpha.1","description":"Command-line utility for managing Kinvey accounts including Flex, apps, and collections","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.3.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","lodash.isstring":"4.0.1","lodash.findkey":"4.6.0","moment":"2.22.1","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT            | INTEGRATION            |\r\n|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][4] | [![Build2][2]][4] | [![Build3][3]][4] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting environments\r\n* Creating, listing, and deleting collections\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show [org]`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show [app]`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application. You can specify an application by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete [app]`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You can specify an application by ID or name. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `env create <name> [file]`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n* `env push <file> [env]`\r\n\r\n    Applies configuration (defined in file) to the specified environment or to the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n           \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env show [env]`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n\r\n* `env use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env delete [env]`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `service create <name> <file>`\r\n\r\n    Creates a service within an application or organization (either `--app` or `--org` must be specified).\r\n    \r\n    * `--app <application>`\r\n           \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--org <organization>`\r\n                \r\n      Specifies a Kinvey organization by ID or name.\r\n\r\n* `service push <serviceId> <file>`\r\n\r\n    Applies a service configuration file to the specified service.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n          Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n          Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n          Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n        \r\n* `flex deploy [serviceId]`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service, which is the one you initiated last. To use a different service, specify its service ID.\r\n\r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status [serviceId]`\r\n\r\n   Displays the health of the current Flex Service, which is the one you initiated last. To get the status of a different service, specify its service ID.\r\n\r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n      Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n      App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs [serviceId]`\r\n\r\n   Retrieves and displays logs for the current Flex Service, which is the one you initiated last. To get logs for a different service, specify its service ID. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex recycle [serviceId]`\r\n   \r\n   Recycles the current Flex Service, which is the one you initiated last. To recycle a different service, specify its service ID.\r\n\r\n* `flex delete [serviceId]`\r\n\r\n    Deletes the current Flex Service, which is the one you initiated last. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instanceId` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instanceId <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse these environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy you node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --serviceId <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Configuration management\r\n\r\nKinvey CLI supports the usage of configuration files (JSON format) to enable configuring certain aspects of the backend.\r\n\r\n**Environments** can be created and modified by applying an environment configuration file. The file can contain: environment-related settings, collections, business logic, roles, push settings.\r\n\r\n**Services** can be created and modified by applying a service configuration file. Supported services: internal flex service, external flex service.\r\n\r\n### Environment configuration file\r\n\r\nThe environment configuration file can be used to create a brand new environment or to modify an existing one. It is easiest to generate the file by 'exporting' an existent environment and making the necessary modifications. To export an environment run:\r\n \r\n ```\r\nkinvey env export <file> [env]\r\n```\r\n\r\nAlternatively, the environment template beneath can be used and modified as needed.\r\n\r\nTo create an environment from a configuration file run:\r\n ```\r\nkinvey env create <envName> [file-path] [--app AppNameOrId]\r\n```\r\n\r\nTo apply a configuration file to an existent environment run:\r\n ```\r\nkinvey env push <file-path> [envName] [--app AppNameOrId]\r\n```\r\n\r\nBefore an environment config file gets applied a check will be executed to verify JSON is valid and parameter values are allowed. If the check passes successfully, Kinvey CLI will start applying the changes. In the case of a new environment it will simply try to create all the entities described in the file. \r\n\r\nWhen the file is being applied to an existent environment then existent entities could be updated and new ones can be created. The CLI won't delete any entities even if they are not included in the file. Hence, if you want to create new endpoints but don't want to modify any existent collections for example, then you can exclude them from the configuration to have the file being applied faster.\r\n\r\nIf an error occurs, the CLI stops applying the file and outputs the error message.\r\n\r\n#### Environment sample config file\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"environment\",\r\n  \"settings\": {\r\n    \"apiVersion\": 3,\r\n    \"emailVerification\": {\r\n      \"required\": false\r\n    }\r\n  },\r\n  \"collections\": {\r\n    \"myCollection\": {\r\n      \"type\": \"internal\",\r\n      \"permissions\": \"shared\"\r\n    },\r\n    \"anotherCollection\": {\r\n      \"type\": \"external\",\r\n      \"permissions\": \"shared\",\r\n      \"service\": \"awesomeService\",\r\n      \"serviceObject\": \"awesomeServiceObject\"\r\n    }\r\n  },\r\n  \"commonCode\": {\r\n    \"my-common-code\": {\r\n      \"code\": \"var commonLogic = {};\\ncommonLogic.print = function print(msg) {\\n  console.log(msg);\\n};\"\r\n    },\r\n    \"another-common-code\": {\r\n      \"codeFile\": \"./another-common-code.js\"\r\n    }\r\n  },\r\n  \"collectionHooks\": {\r\n    \"myCollection\": {\r\n      \"onPreSave\": {\r\n        \"type\": \"internal\",\r\n        \"code\": \"function onPreSave(request, response, modules) {\\n  response.continue();\\n}\"\r\n      },\r\n      \"onPostSave\": {\r\n        \"type\": \"external\",\r\n        \"service\": \"awesomeService\",\r\n        \"handlerName\": \"awesomeHandler\"\r\n      }\r\n    }\r\n  },\r\n  \"customEndpoints\": {\r\n    \"myEndpoint\": {\r\n      \"type\": \"internal\",\r\n      \"codeFile\": \"./my-endpoint.js\",\r\n      \"schedule\": {\r\n        \"start\": \"2019-07-22T16:35:00Z\",\r\n        \"interval\": \"5-minutes\"\r\n      }\r\n    },\r\n    \"anotherEndpoint\": {\r\n      \"type\": \"external\",\r\n      \"service\": \"awesomeService\",\r\n      \"handlerName\": \"anotherHandler\"\r\n    }\r\n  },\r\n  \"roles\": {\r\n    \"Intern\": { \"description\": \"Interns\" },\r\n    \"Employee\": { \"description\": \"Employees\" }\r\n  },\r\n  \"groups\": {\r\n    \"myGroup\": {\r\n      \"description\": \"Description here\",\r\n      \"groups\": [ \"anotherGroup\" ]\r\n    },\r\n    \"anotherGroup\": {\r\n      \"description\": \"Part of 'myGroup'\"\r\n    }\r\n  },\r\n  \"push\": {\r\n  \t\"android\": {\r\n  \t  \"senderId\": \"id123\",\r\n  \t  \"apiKey\": \"key123\"\r\n  \t},\r\n  \t\"ios\": {\r\n  \t  \"production\": false,\r\n  \t  \"certificateFilePath\": \"./mycertdev.p12\"\r\n  \t}\r\n  }  \r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`settings` Environment settings. Optional.\r\n\r\n`settings.apiVersion` The default REST API version for this env.\r\n\r\n`settings.emailVerification` Options regarding email verification for users of this environment. Optional.\r\n                             \r\n`settings.emailVerification.required` *true|false* If true, users who have not verified their email will not be able to access the environment. Required.\r\n\r\n`settings.emailVerification.auto` *true|false* If true, automatically send a email verification request to all new users created within the environment. Optional.\r\n\r\n`settings.emailVerification.since` ISO-8601 date. If specified, any user created before this date will not need a verified email in order to access the environment. Optional.\r\n\r\n`collections` Environment collections. Optional. Object. Each first-level property is the name of a collection and contains an object describing this collection.\r\n\r\n`collections.[collectionName].type` *internal|external* If external, then the collection is backed by a flex service. Required.\r\n\r\n`collections.[collectionName].permissions` Collections permissions. Optional. Could be a string or an object. Allowed string values: private, full, shared, read-only. To specify roles, use an object in the following format:\r\n```\r\n\"permissions\": {\r\n  [roleName]: {\r\n    [operation]: [accessType]\r\n  }\r\n}\r\n```\r\nwhere **operation** is one of: *create, read, update, delete*\r\n\r\nand **accessType** is one of: *never, always, grant, entity*\r\n\r\nTo specify the built-in **All users** role, use *all-users*.\r\n \r\n Example:\r\n\r\n```\r\n\"permissions\": {\r\n  \"all-users\": {\r\n    \"read\": \"always\"\r\n  },\r\n  \"Employee\": {\r\n    \"create\": \"always\",\r\n    \"read\": \"always\",\r\n    \"update\": \"always\",\r\n    \"delete\": \"grant\"\r\n  }\r\n}\r\n```\r\n\r\n`collections.[collectionName].service` Service to connect the collection to. Either service name or ID. Collection type must be set to 'external'.\r\n\r\n`collections.[collectionName].serviceObject` Service object. Collection type must be set to 'external'.\r\n\r\n`commonCode` Common code functions. Optional. An object where each first-level property is the name of the common code script.\r\n\r\n`commonCode.[commonCodeName].code` Code. Either `code` or `codeFile` must be set.\r\n \r\n`commonCode.[commonCodeName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` must be set.\r\n\r\n`collectionHooks` Collection hooks. Optional. An object where each first-level property is the name of a collection.\r\n\r\n`collectionHooks.[collectionName].[hookName]` *onPreSave|onPreFetch|onPreDelete|onPostSave|onPostFetch|onPostDelete* Hook type.\r\n \r\n`collectionHooks.[collectionName].[hookName].type` *internal|external* External if a service is involved. Required.  \r\n\r\n`collectionHooks.[collectionName].[hookName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].service` Service to use. Collection hook type must be set to 'external'.\r\n\r\n`collectionHooks.[collectionName].[hookName].handlerName` Handler name. Collection hook type must be set to 'external'.\r\n\r\n`customEndpoints` Custom endpoints. Optional. Object where each first-level property is the name of an endpoint.\r\n\r\n`customEndpoints.[endpointName].type` *internal|external* External if a service is involved. Required. \r\n\r\n`customEndpoints.[endpointName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].service` Service to use. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].handlerName` Handler name. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].schedule` Object describing how to schedule the endpoint. Optional.\r\n\r\n`customEndpoints.[endpointName].schedule.start` The code will be scheduled to start running at this date and time. ISO-8601 datetime. Required.\r\n\r\n`customEndpoints.[endpointName].schedule.interval` *weekly|daily|hourly|30-minutes|10-minutes|5-minutes|1-minute* At what intervals to execute the code. Optional.\r\n\r\n`roles` Roles. Optional. Object where each first-level property is the name of a role.\r\n\r\n`roles.[roleName].description` Role description. String. Optional.\r\n\r\n`groups` Groups. Optional. Object where each first-level property is the ID of a group. For example if the name is 'My group', then an appropriate ID could be 'myGroup' or 'my-group'.\r\n\r\n`groups.[groupId].name` Name. Optional.\r\n\r\n`groups.[groupId].description` Description. Optional.\r\n\r\n`groups.[groupId].groups` Nested groups. Optional. An array of other groups IDs.\r\n\r\n`push` Push notifications settings. Optional. Object.\r\n\r\n`push.android` Object describing Android settings. Optional.\r\n\r\n`push.android.senderId` Sender ID. Required.\r\n\r\n`push.android.apiKey` API Key. Required.\r\n\r\n`push.ios` Object describing iOS settings. Optional.\r\n\r\n`push.ios.production` *true|false* If false, then it is a development certificate. Required.\r\n\r\n`push.ios.certificateFilePath` Path to certificate - relative or absolute. Required.\r\n\r\n`push.ios.password` Certificate password. Optional.\r\n\r\n### Service configuration file\r\n\r\nThe service configuration file can be used to create a brand new internal or external flex service or to modify an existing one.\r\n\r\nTo create a service from a configuration file run:\r\n ```\r\nkinvey service create <serviceName> <file-path> [--app AppNameOrId|--org OrgNameOrId]\r\n```\r\n\r\nEither `--app` or `--org` option must be set. The service will be accessible only to the chosen application or organization respectively.\r\n\r\nTo apply a configuration file to an existent service run:\r\n ```\r\nkinvey service push <serviceId> <file-path>\r\n``` \r\n\r\nWhen a new internal flex service is created the CLI will attempt a deploy if `sourcePath` is set. \r\n\r\nWhen an existent internal flex service is updated and `sourcePath` is set, the CLI will attempt to deploy only if the version defined in `package.json` is higher then the cloud version. Otherwise, deployment procedure will be skipped.\r\n\r\n#### Service sample config file\r\n\r\nThe following service template can be used and modified as needed:\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"service\",\r\n  \"type\": \"flex-internal\",\r\n  \"secret\": \"123\",\r\n  \"description\": \"Some description here\"\r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`type` *flex-internal|flex-external* Service type. Required.\r\n \r\n`secret` Shared secret to use when communicating with the service.\r\n \r\n`description` Service description. String. Optional.\r\n \r\n`host` URI pointing to the service server's location. Required when `type` is 'flex-external'.\r\n\r\n`sourcePath` Path to source code - relative or absolute. Optional. Applicable when `type` is 'flex-internal'.\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"586df09937cdad3604c823e639b1d819bf3316d8","_id":"kinvey-cli@4.1.0-alpha.1","_shasum":"7f67b41736df137dd0c846271632f129b9f5ae52","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"7f67b41736df137dd0c846271632f129b9f5ae52","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.1.0-alpha.1.tgz","fileCount":54,"unpackedSize":361888,"integrity":"sha512-FbIDDeyTa+iTJsryepUq8BlWBg1G5d7hTmYlFIt6w1YC3PYk5o7ZoaQLdkUY7QhO4vm4YL3gvE1BC854YXmXrw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLoMxwKoqX0iRE5Y1R1Tvg07ETkW6gzcL+2NYnGElWtQIhALaVTBzh0XxLtH1/bbU5aYGKiuAz/HlKBvQSK5hqK3mM"}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.1.0-alpha.1_1529936046565_0.7738386759988216"},"_hasShrinkwrap":false},"3.1.1":{"name":"kinvey-cli","version":"3.1.1","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration/commands/flex && mocha test/integration/commands/init && mocha test/integration/commands/profile","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.11.2","request":"2.63.0","suppose":"0.6.2","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false},"gitHead":"93243f0544fbe651c440849a9abd5d1476b6f6f2","_id":"kinvey-cli@3.1.1","_shasum":"5ac921f997546dd58fd52bf57a43f91a4a981e04","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"5ac921f997546dd58fd52bf57a43f91a4a981e04","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-3.1.1.tgz","fileCount":43,"unpackedSize":240518,"integrity":"sha512-KvUp1WMbB+5bL0AJjLdovSZcUn1s3wp7T88+LuWi0EG2Xzc3EykrGgqbI8j2+x/pw0iFRjndm0CjOZqBPs15pw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDqrTb0ljaP0VI9TuMYaApUthGmBz70kIxDHL70GG+jWAIge6fcE9vHE0Kh/wW9K8FUC27fwpuHssV2ESAMBy/9eN4="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_3.1.1_1532086034447_0.40726301209329985"},"_hasShrinkwrap":false},"4.0.0-beta.2":{"name":"kinvey-cli","version":"4.0.0-beta.2","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT            | INTEGRATION            |\r\n|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][4] | [![Build2][2]][4] | [![Build3][3]][4] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting environments\r\n* Creating, listing, and deleting collections\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show [org]`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show [app]`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application. You can specify an application by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete [app]`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You can specify an application by ID or name. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `env create <name>`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env show [env]`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n\r\n* `env use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env delete [env]`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n          Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n          Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n          Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n        \r\n* `flex deploy [serviceId]`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service, which is the one you initiated last. To use a different service, specify its service ID.\r\n\r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status [serviceId]`\r\n\r\n   Displays the health of the current Flex Service, which is the one you initiated last. To get the status of a different service, specify its service ID.\r\n\r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n      Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n      App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs [serviceId]`\r\n\r\n   Retrieves and displays logs for the current Flex Service, which is the one you initiated last. To get logs for a different service, specify its service ID. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex recycle [serviceId]`\r\n   \r\n   Recycles the current Flex Service, which is the one you initiated last. To recycle a different service, specify its service ID.\r\n\r\n* `flex delete [serviceId]`\r\n\r\n    Deletes the current Flex Service, which is the one you initiated last. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instanceId` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instanceId <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse these environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy you node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --serviceId <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"9149ab886a5c4d88f62182cf89482d6d0e221940","_id":"kinvey-cli@4.0.0-beta.2","_shasum":"e3f1983f54d9c77196b159484196f1825f470462","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"e3f1983f54d9c77196b159484196f1825f470462","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.0.0-beta.2.tgz","fileCount":43,"unpackedSize":257223,"integrity":"sha512-hD2niU5eP/IZkSD/vkUUdaeQPe/wdarTnXdRS5w9G8RSqFq663lryIqYAMiWZSv4rGj9LUuzF6GrXibPVsexfg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAX21DPq/sbVWmbpJDNxs2CwhbBw2V8IwbW+tKyRzKSFAiBWve/n4p4Mr5PDQ0gDlpmZcXygODbPUUN8nV5ImlZdsw=="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.0.0-beta.2_1532086914407_0.7728718782056794"},"_hasShrinkwrap":false},"4.1.0-alpha.2":{"name":"kinvey-cli","version":"4.1.0-alpha.2","description":"Command-line utility for managing Kinvey accounts including Flex, apps, and collections","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.3.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","lodash.isstring":"4.0.1","lodash.findkey":"4.6.0","moment":"2.22.1","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT            | INTEGRATION            |\r\n|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][4] | [![Build2][2]][4] | [![Build3][3]][4] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting environments\r\n* Creating, listing, and deleting collections\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show [org]`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show [app]`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application. You can specify an application by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete [app]`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You can specify an application by ID or name. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `env create <name> [file]`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n* `env push <file> [env]`\r\n\r\n    Applies configuration (defined in file) to the specified environment or to the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n           \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env show [env]`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n\r\n* `env use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `env delete [env]`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `service create <name> <file>`\r\n\r\n    Creates a service within an application or organization (either `--app` or `--org` must be specified).\r\n    \r\n    * `--app <application>`\r\n           \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--org <organization>`\r\n                \r\n      Specifies a Kinvey organization by ID or name.\r\n\r\n* `service push <serviceId> <file>`\r\n\r\n    Applies a service configuration file to the specified service.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n          Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n          Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n          Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n        \r\n* `flex deploy [serviceId]`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service, which is the one you initiated last. To use a different service, specify its service ID.\r\n\r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status [serviceId]`\r\n\r\n   Displays the health of the current Flex Service, which is the one you initiated last. To get the status of a different service, specify its service ID.\r\n\r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n      Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n      App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs [serviceId]`\r\n\r\n   Retrieves and displays logs for the current Flex Service, which is the one you initiated last. To get logs for a different service, specify its service ID. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex recycle [serviceId]`\r\n   \r\n   Recycles the current Flex Service, which is the one you initiated last. To recycle a different service, specify its service ID.\r\n\r\n* `flex delete [serviceId]`\r\n\r\n    Deletes the current Flex Service, which is the one you initiated last. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instanceId` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instanceId <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse these environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy you node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --serviceId <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Configuration management\r\n\r\nKinvey CLI supports the usage of configuration files (JSON format) to enable configuring certain aspects of the backend.\r\n\r\n**Environments** can be created and modified by applying an environment configuration file. The file can contain: environment-related settings, collections, business logic, roles, push settings.\r\n\r\n**Services** can be created and modified by applying a service configuration file. Supported services: internal flex service, external flex service.\r\n\r\n### Environment configuration file\r\n\r\nThe environment configuration file can be used to create a brand new environment or to modify an existing one. It is easiest to generate the file by 'exporting' an existent environment and making the necessary modifications. To export an environment run:\r\n \r\n ```\r\nkinvey env export <file> [env]\r\n```\r\n\r\nAlternatively, the environment template beneath can be used and modified as needed.\r\n\r\nTo create an environment from a configuration file run:\r\n ```\r\nkinvey env create <envName> [file-path] [--app AppNameOrId]\r\n```\r\n\r\nTo apply a configuration file to an existent environment run:\r\n ```\r\nkinvey env push <file-path> [envName] [--app AppNameOrId]\r\n```\r\n\r\nBefore an environment config file gets applied a check will be executed to verify JSON is valid and parameter values are allowed. If the check passes successfully, Kinvey CLI will start applying the changes. In the case of a new environment it will simply try to create all the entities described in the file. \r\n\r\nWhen the file is being applied to an existent environment then existent entities could be updated and new ones can be created. The CLI won't delete any entities even if they are not included in the file. Hence, if you want to create new endpoints but don't want to modify any existent collections for example, then you can exclude them from the configuration to have the file being applied faster.\r\n\r\nIf an error occurs, the CLI stops applying the file and outputs the error message.\r\n\r\n#### Environment sample config file\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"environment\",\r\n  \"settings\": {\r\n    \"apiVersion\": 3,\r\n    \"emailVerification\": {\r\n      \"required\": false\r\n    }\r\n  },\r\n  \"collections\": {\r\n    \"myCollection\": {\r\n      \"type\": \"internal\",\r\n      \"permissions\": \"shared\"\r\n    },\r\n    \"anotherCollection\": {\r\n      \"type\": \"external\",\r\n      \"permissions\": \"shared\",\r\n      \"service\": \"awesomeService\",\r\n      \"serviceObject\": \"awesomeServiceObject\"\r\n    }\r\n  },\r\n  \"commonCode\": {\r\n    \"my-common-code\": {\r\n      \"code\": \"var commonLogic = {};\\ncommonLogic.print = function print(msg) {\\n  console.log(msg);\\n};\"\r\n    },\r\n    \"another-common-code\": {\r\n      \"codeFile\": \"./another-common-code.js\"\r\n    }\r\n  },\r\n  \"collectionHooks\": {\r\n    \"myCollection\": {\r\n      \"onPreSave\": {\r\n        \"type\": \"internal\",\r\n        \"code\": \"function onPreSave(request, response, modules) {\\n  response.continue();\\n}\"\r\n      },\r\n      \"onPostSave\": {\r\n        \"type\": \"external\",\r\n        \"service\": \"awesomeService\",\r\n        \"handlerName\": \"awesomeHandler\"\r\n      }\r\n    }\r\n  },\r\n  \"customEndpoints\": {\r\n    \"myEndpoint\": {\r\n      \"type\": \"internal\",\r\n      \"codeFile\": \"./my-endpoint.js\",\r\n      \"schedule\": {\r\n        \"start\": \"2019-07-22T16:35:00Z\",\r\n        \"interval\": \"5-minutes\"\r\n      }\r\n    },\r\n    \"anotherEndpoint\": {\r\n      \"type\": \"external\",\r\n      \"service\": \"awesomeService\",\r\n      \"handlerName\": \"anotherHandler\"\r\n    }\r\n  },\r\n  \"roles\": {\r\n    \"Intern\": { \"description\": \"Interns\" },\r\n    \"Employee\": { \"description\": \"Employees\" }\r\n  },\r\n  \"groups\": {\r\n    \"myGroup\": {\r\n      \"description\": \"Description here\",\r\n      \"groups\": [ \"anotherGroup\" ]\r\n    },\r\n    \"anotherGroup\": {\r\n      \"description\": \"Part of 'myGroup'\"\r\n    }\r\n  },\r\n  \"push\": {\r\n  \t\"android\": {\r\n  \t  \"senderId\": \"id123\",\r\n  \t  \"apiKey\": \"key123\"\r\n  \t},\r\n  \t\"ios\": {\r\n  \t  \"production\": false,\r\n  \t  \"certificateFilePath\": \"./mycertdev.p12\"\r\n  \t}\r\n  }  \r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`settings` Environment settings. Optional.\r\n\r\n`settings.apiVersion` The default REST API version for this env.\r\n\r\n`settings.emailVerification` Options regarding email verification for users of this environment. Optional.\r\n                             \r\n`settings.emailVerification.required` *true|false* If true, users who have not verified their email will not be able to access the environment. Required.\r\n\r\n`settings.emailVerification.auto` *true|false* If true, automatically send a email verification request to all new users created within the environment. Optional.\r\n\r\n`settings.emailVerification.since` ISO-8601 date. If specified, any user created before this date will not need a verified email in order to access the environment. Optional.\r\n\r\n`collections` Environment collections. Optional. Object. Each first-level property is the name of a collection and contains an object describing this collection.\r\n\r\n`collections.[collectionName].type` *internal|external* If external, then the collection is backed by a flex service. Required.\r\n\r\n`collections.[collectionName].permissions` Collections permissions. Optional. Could be a string or an object. Allowed string values: private, full, shared, read-only. To specify roles, use an object in the following format:\r\n```\r\n\"permissions\": {\r\n  [roleName]: {\r\n    [operation]: [accessType]\r\n  }\r\n}\r\n```\r\nwhere **operation** is one of: *create, read, update, delete*\r\n\r\nand **accessType** is one of: *never, always, grant, entity*\r\n\r\nTo specify the built-in **All users** role, use *all-users*.\r\n \r\n Example:\r\n\r\n```\r\n\"permissions\": {\r\n  \"all-users\": {\r\n    \"read\": \"always\"\r\n  },\r\n  \"Employee\": {\r\n    \"create\": \"always\",\r\n    \"read\": \"always\",\r\n    \"update\": \"always\",\r\n    \"delete\": \"grant\"\r\n  }\r\n}\r\n```\r\n\r\n`collections.[collectionName].service` Service to connect the collection to. Either service name or ID. Collection type must be set to 'external'.\r\n\r\n`collections.[collectionName].serviceObject` Service object. Collection type must be set to 'external'.\r\n\r\n`commonCode` Common code functions. Optional. An object where each first-level property is the name of the common code script.\r\n\r\n`commonCode.[commonCodeName].code` Code. Either `code` or `codeFile` must be set.\r\n \r\n`commonCode.[commonCodeName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` must be set.\r\n\r\n`collectionHooks` Collection hooks. Optional. An object where each first-level property is the name of a collection.\r\n\r\n`collectionHooks.[collectionName].[hookName]` *onPreSave|onPreFetch|onPreDelete|onPostSave|onPostFetch|onPostDelete* Hook type.\r\n \r\n`collectionHooks.[collectionName].[hookName].type` *internal|external* External if a service is involved. Required.  \r\n\r\n`collectionHooks.[collectionName].[hookName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].service` Service to use. Collection hook type must be set to 'external'.\r\n\r\n`collectionHooks.[collectionName].[hookName].handlerName` Handler name. Collection hook type must be set to 'external'.\r\n\r\n`customEndpoints` Custom endpoints. Optional. Object where each first-level property is the name of an endpoint.\r\n\r\n`customEndpoints.[endpointName].type` *internal|external* External if a service is involved. Required. \r\n\r\n`customEndpoints.[endpointName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].service` Service to use. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].handlerName` Handler name. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].schedule` Object describing how to schedule the endpoint. Optional.\r\n\r\n`customEndpoints.[endpointName].schedule.start` The code will be scheduled to start running at this date and time. ISO-8601 datetime. Required.\r\n\r\n`customEndpoints.[endpointName].schedule.interval` *weekly|daily|hourly|30-minutes|10-minutes|5-minutes|1-minute* At what intervals to execute the code. Optional.\r\n\r\n`roles` Roles. Optional. Object where each first-level property is the name of a role.\r\n\r\n`roles.[roleName].description` Role description. String. Optional.\r\n\r\n`groups` Groups. Optional. Object where each first-level property is the ID of a group. For example if the name is 'My group', then an appropriate ID could be 'myGroup' or 'my-group'.\r\n\r\n`groups.[groupId].name` Name. Optional.\r\n\r\n`groups.[groupId].description` Description. Optional.\r\n\r\n`groups.[groupId].groups` Nested groups. Optional. An array of other groups IDs.\r\n\r\n`push` Push notifications settings. Optional. Object.\r\n\r\n`push.android` Object describing Android settings. Optional.\r\n\r\n`push.android.senderId` Sender ID. Required.\r\n\r\n`push.android.apiKey` API Key. Required.\r\n\r\n`push.ios` Object describing iOS settings. Optional.\r\n\r\n`push.ios.production` *true|false* If false, then it is a development certificate. Required.\r\n\r\n`push.ios.certificateFilePath` Path to certificate - relative or absolute. Required.\r\n\r\n`push.ios.password` Certificate password. Optional.\r\n\r\n### Service configuration file\r\n\r\nThe service configuration file can be used to create a brand new internal or external flex service or to modify an existing one.\r\n\r\nTo create a service from a configuration file run:\r\n ```\r\nkinvey service create <serviceName> <file-path> [--app AppNameOrId|--org OrgNameOrId]\r\n```\r\n\r\nEither `--app` or `--org` option must be set. The service will be accessible only to the chosen application or organization respectively.\r\n\r\nTo apply a configuration file to an existent service run:\r\n ```\r\nkinvey service push <serviceId> <file-path>\r\n``` \r\n\r\nWhen a new internal flex service is created the CLI will attempt a deploy if `sourcePath` is set. \r\n\r\nWhen an existent internal flex service is updated and `sourcePath` is set, the CLI will attempt to deploy only if the version defined in `package.json` is higher then the cloud version. Otherwise, deployment procedure will be skipped.\r\n\r\n#### Service sample config file\r\n\r\nThe following service template can be used and modified as needed:\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"service\",\r\n  \"type\": \"flex-internal\",\r\n  \"secret\": \"123\",\r\n  \"description\": \"Some description here\"\r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`type` *flex-internal|flex-external* Service type. Required.\r\n \r\n`secret` Shared secret to use when communicating with the service.\r\n \r\n`description` Service description. String. Optional.\r\n \r\n`host` URI pointing to the service server's location. Required when `type` is 'flex-external'.\r\n\r\n`sourcePath` Path to source code - relative or absolute. Optional. Applicable when `type` is 'flex-internal'.\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"4ef84aac18ebfc97ee24a78eb16c922866a9566b","_id":"kinvey-cli@4.1.0-alpha.2","_shasum":"9d1ea1d1c34f35afe89c48c1f59e6886f92a857c","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"9d1ea1d1c34f35afe89c48c1f59e6886f92a857c","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.1.0-alpha.2.tgz","fileCount":55,"unpackedSize":367782,"integrity":"sha512-PQeglccAb/L8VObIhzx8TAwWd4pFba+S7L2CYb1IdSvUOGZ/+VkDVAnprCTMMcGFOGJIaRD5xxCXL4Lac/tHpA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICXhIIYB4ziutvsOdLd7k4ZUQzmREz/6hTRv2RKUudDBAiEAi2Kct0oxnD2UmMTQy4fKxIT5101JTh1yXE5C3pPhK2w="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.1.0-alpha.2_1532087749932_0.2872539143252697"},"_hasShrinkwrap":false},"4.0.0-beta.3":{"name":"kinvey-cli","version":"4.0.0-beta.3","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT            | INTEGRATION            |\r\n|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][4] | [![Build2][2]][4] | [![Build3][3]][4] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting environments\r\n* Creating, listing, and deleting collections\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show [org]`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application. You can specify an organization ID or name if you want to create the app within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n    \r\n            Organization ID/name.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show [app]`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application. You can specify an application by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete [app]`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You can specify an application by ID or name. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `appenv create <name>`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv show [env]`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv delete [env]`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n      Specifies a Kinvey app environment by ID or name. Requires `--app`.\r\n      \r\n    * `--no-prompt`\r\n        \r\n            Do not ask for confirmation.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n          Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n          Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n          Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n        \r\n* `flex deploy [serviceId]`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service, which is the one you initiated last. To use a different service, specify its service ID.\r\n\r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status [serviceId]`\r\n\r\n   Displays the health of the current Flex Service, which is the one you initiated last. To get the status of a different service, specify its service ID.\r\n\r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n      Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n      App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs [serviceId]`\r\n\r\n   Retrieves and displays logs for the current Flex Service, which is the one you initiated last. To get logs for a different service, specify its service ID. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex recycle [serviceId]`\r\n   \r\n   Recycles the current Flex Service, which is the one you initiated last. To recycle a different service, specify its service ID.\r\n\r\n* `flex delete [serviceId]`\r\n\r\n    Deletes the current Flex Service, which is the one you initiated last. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instanceId` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instanceId <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse these environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy you node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --serviceId <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"bb14c8fb71164234701bf820b6a5d47637910c97","_id":"kinvey-cli@4.0.0-beta.3","_shasum":"6e964113880aa0bbe5a0b51cfee47945ed6d97c8","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"6e964113880aa0bbe5a0b51cfee47945ed6d97c8","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.0.0-beta.3.tgz","integrity":"sha512-RWJGNSgROuvD2er3CJWcpAXTaKBcs4CUi6xp1KmGYC+7WAJu+xL5FARiNyrOFhOkdDd7fkStlgvMZEpSERHsPQ==","fileCount":43,"unpackedSize":258330,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbf9w1CRA9TVsSAnZWagAAr8EP/RRWPXULRvLIAl0RPIAi\nyCqQWw941OQ6KomOA0Xun8I0239UwpqzrUWGnEABrGlbwTmMX97enVIPJL3U\n+XyNOzguFO/mdS/znj6yFmQ1YnhpmhrbmNLNBwLstr+o6ijFvMmIbOAV+gGy\ngzSvorD+eZW7JLgGGNdMcVpHMeWwFsyOMW3nSKhgQEL3rFexNMKFqgaK2dC+\nW2zXtc8UD9qXcOfkq3MbLwCK80r+kuYE8LE4G7DIPHRlV05luzychHPz1JRQ\nXSnMbDJpbir78xfXUaLbxv2Evq30D/mwGCnJuPndsjtr1sQchmJSW1nfcifk\nahVJuWCQtiNwVOcB17nRYhkioqQY5ZgtJT39Dj944bSjZXa4dGVuvAYroaAI\nQGJkfHnYVxwDiHiI0GagZenvzukWnrc9cwjOUT2Fn+vhB4AvMjbHR92lBLLU\njf9v2grdlSgh186Yh+hr2nzCXkj35oaJOpb20BhcHKMVyOLywcASjbhK6Q+Z\n0UsBfP1u9LtXjK18sA7704/G76yLRl5rqyumOmF5PSkGsA5O0dmXw/28MEEo\nKtN9XqPrVIkfBpqhr/MFPtNNuwm4FREx4Mg7GsmLmI3dBSM8dOKa4gFN4Nla\n4xtUYxDevtQICV1j+zA+wrtCBvGXsgXiouf+ltv+8yrSf9UjgdhwWVPA86+v\nM9Zf\r\n=5iFb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCG6V40T1dHwB/iz9KxqSBa+t2OJJCLvgiDwtr5g2XchAIgWyr9szHjsc8O1lTS841TyNMxXxW4TKwlR+xV8ATPzNY="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.0.0-beta.3_1535106100516_0.9738506312296376"},"_hasShrinkwrap":false},"3.1.2":{"name":"kinvey-cli","version":"3.1.2","description":"Utility for deploying and managing FlexServices on Kinvey's FlexService Runtime","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration/commands/flex && mocha test/integration/commands/init && mocha test/integration/commands/profile","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.11.2","request":"2.63.0","suppose":"0.6.2","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"11.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"4.0.1","strip-ansi":"4.0.0","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false},"gitHead":"a5f68cd96e05c65fca193561dd7542e2560774ea","_id":"kinvey-cli@3.1.2","_shasum":"7d83153f95559adbd694dd6f954f42c4d5399a89","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"7d83153f95559adbd694dd6f954f42c4d5399a89","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-3.1.2.tgz","integrity":"sha512-PgUdnz2wcxLaj6V0Owc2f7MXMH0IDTdKl+Vfp2fLKiAt2KjL9rWtucdkI2i73/s9pKstR1PUpJxT6g0p9OAxPA==","fileCount":43,"unpackedSize":241441,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqfTFCRA9TVsSAnZWagAAqIAP/RjE4KLX53cimdyKjgWe\nsKB4/VZ72bv4jGKIdiBH3odw9886dKTta/LvA7jx8npzxnU7bdW/JccHZCmY\nbLurIXbsI8Fs0XZch6NmF7rEIbkJh6pK7yvDl1SBUDoIKhWRlVVvg7bLLHD3\n5JjEPTSJs/t9ppl6P9hpSeKZXpQtteX5NeFjMpUbhJFNUkUqyAtDIVp5gmUp\nMC3nHCVuDT8qTmKhinUUC1cWRBWxOMk4NUDa/tjbUsCDT0Zzem2fuo9q5W1Q\nnGD0uuK9qHx5aQnHQT50YpvmjD95ggLB1H0DgSBcvGTJfDmfM8G5dor2Gbux\nyOO1NDlE4FI5kJJb4xL9Ma1NX82g7eBo46g/eb1e8k3JBHFotMR7SCC4lnd/\n4RsZ/Bi9lA0I7VOwAu6TODznGTs6BGhCLpNkPHDKzMUmIQo0bAOTtF41AzPs\nEz6eD+xGUk7eX6nwzSyjvzg7DDdnytFF1RzZtYo8yYqyu2Qr9mBreF+d30fV\n0H5RoJFJfVwnGSkj3QGHVNo8z3TP7mBejvL/uOKry0UqaMwW01eMMlpZHwrU\n695bOxRDq4REjqW6TCLyquHKIxmU3MaM+BMXNnvS91VRNWsLYIS9ZhQ1z+bR\noqRGiNgAbcGEKs5deLiHC3YtyDCr9FSQ0mVXXORJnqfz7at/7NOSH3/ZXYIR\n7cXG\r\n=hp11\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCxgqLVO3NWroRZz7ElgT8k03dqbJ6oEKH3O9DZ2oRyrQIgY19rwQ8jrAwmmTYYFrrZxy1/buDuB6GrGBvbRqozf4Q="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_3.1.2_1537864895710_0.9242984823270881"},"_hasShrinkwrap":false},"4.0.0":{"name":"kinvey-cli","version":"4.0.0","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"d23a92dc71260b02df551dd44a1f31550ad9f49e","_id":"kinvey-cli@4.0.0","_shasum":"9fb7fa1a6854652e2a29763a1e3625ba12c78b55","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"9fb7fa1a6854652e2a29763a1e3625ba12c78b55","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.0.0.tgz","integrity":"sha512-/TvUQPdcl7y69y/c6TE0Qevrv/IrUK6JSpYuBdId3oPrRH1JcZ/Sfp6UOxTTvsbCbCaqCQkZj49qadJkdHA0Zg==","fileCount":43,"unpackedSize":271169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4+A7CRA9TVsSAnZWagAAiuUP+wbJ7bUsJl92VRES9LuC\n51owjsf/P/lcm3couyhHUTZanRjTAdx54T+Fpo6Cn+fs/HuHljiXRBmGxdiA\n48W4hcJgEQ4h+wsrgj98kxJTOyiRrTmyVfFVj8fZrdOmpJOxordLu26HOi/P\nvDOj1vcqMMhsKc6ouIIa4GhoC+vGRs8LnXT80hF2KxoAxrYW665c+r/EaxQE\n2K1JovmT+w6HL9iG83DHozADVHNfyqmJ9a9iCoia+rQqnKxSp58E283DdDwX\nCqVOVNQQstnadjydVUZxVA7I+llU1HGXFozwtfTaShnxz4+TniDqfB/xZpFQ\nqP6j90p6IOYGNNJZEc9QSkwgmcUJlx2zbov85X/QZuBcbNRRztrut0XYZ8cz\nlqC7yZIrN93ZT3m+h3uXnC6P1V5GOheawFlARzJUXMRPv3TDHh3fcAMxtTxA\ntuPRB72PUhT5UVdEXKABj9Jx7RGniku+xQY6jpk1UYkAbFPAVUt9WVt9FwNJ\nqOtPJnGdSyFLfVgOJHOa/2IDEos/12K7yKJPm5PSa2KVmrLwVJ8ujqdI1YMc\nJ2aJLA0iiHui3mxDmhT1VmwW2RfuzmhqPVp+23uMfFPsyY3MIVo7lZZqhSiz\nKIcVUblexHD+Z4mHaINF2q5zdXG/pxFkdkqHB04STaDJg3gbuHEH4HSvNu0f\nqjpN\r\n=xk6U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNZKb2BD786HO7OGoTbP6rc01YpnmpVkcVsB8On2Ca9gIgSZOhcHFWRCzCg7Z1t2i1UKVznEXM2rBNA2ZPdFjBUUM="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.0.0_1541660731121_0.6908724863435649"},"_hasShrinkwrap":false},"4.0.1":{"name":"kinvey-cli","version":"4.0.1","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"81c76b489d33267811df52b5b82fdb1cce7b6efc","_id":"kinvey-cli@4.0.1","_shasum":"0937467005369f917700072cd817affd4fead737","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"0937467005369f917700072cd817affd4fead737","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.0.1.tgz","integrity":"sha512-Ug9Akm496cslP4gz4nHhbGUOw5LS3vqvL9PGCSrPL2zovGS8Fg7rQWAzcU8jWDyL4rIzGyENgf4/pnVZTHf5IQ==","fileCount":43,"unpackedSize":275303,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9WozCRA9TVsSAnZWagAA/Q8P/1ngffL2Dt9JqRqIxIbJ\nsOpGd4tL4ZGjswe6sCq2BKn9ZaSvEj4m6jM+3mx2q2C50np2nGOjKT1Bu/p0\nA8D0O+QkJZuhos4canira+j9DUXczIu6jNa6jeSCW36/71ZMKX32rAutSXv4\nKq2dz1UzGVPQ19VxXdPHToUIXuugKjd2YEI29BgSoi1g7tqDDBUUaQfjmTWs\nA7aS8UAw/TP8cNqJSb3UQRTnuQ5XH6hRl3P5NIJ4rED1tQVOp+M1LWFaRC8e\nYYEpVChp6luEu76USU5hIDGWnAQ3ZN+cqNeUTDnEbrrB5gV59sImgAzm8p29\nMxJZ9MQYFSAw9qSpZcXBYb9MoqR6pSK0DAwHSraaXLjVEh1BbdXi+jyCxvas\ntCqylN2DrDSqVJHZTRP0M4mKKHSo88UXvEdhI2Qjfq4TogzbmJnFs9G59XlN\nXL9mBz7/XzlrIUiLLkDyo79IStKBnVIqt9+9A8E/8gSJNUyLYK0g4kv3Z59x\nMPPj3POh4nLMc/aWoiaIurIRO/auefKRevFjj8BptxaOfELf70fXWXNwILt4\nVfSofXejh/PwwTP1MhSRRLiyo31b4pF8qXmdBeF6AdfO4DzUkDAnfLYNEIG9\ne2kffn1f5iOsGO0cs57M64YiCJDW/J00XNBQMKZXY6TGjoeie6KvcuBku6E2\nmzKd\r\n=h+tq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDi9Wfq9BweUNwYFeTPEQ3olu5kHDkrBkoKimB3eurcmAiEA1//WEIPM/+Aq4k4W0VKCwIjws9MmEBlRaMOJpTnho6Q="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.0.1_1542810162735_0.04585097015195849"},"_hasShrinkwrap":false},"4.1.0-alpha.3":{"name":"kinvey-cli","version":"4.1.0-alpha.3","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isplainobject":"4.0.6","lodash.isequal":"4.5.0","lodash.isstring":"4.0.1","lodash.merge":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT          |   INTEGRATION          |  NPM SECURITY       |\r\n|-------------------|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][5] | [![Build2][2]][5] |  [![Build3][3]][5] | [![Build4][4]][5] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/4\r\n[5]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting app environments\r\n* Creating, listing, and deleting collections\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password and for two-factor authentication token if needed.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n    * `--org <organization>`\r\n           \r\n        Specifies a Kinvey organization by ID or name.\r\n          \r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `org export <file>`\r\n    \r\n    Exports to a file the specified org or the active one.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n    \r\n* `app create <name> [file]`\r\n\r\n    Creates an application. You can specify an organization ID or name if you want to create the app within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n\r\n* `app push <file>`\r\n    \r\n    Applies app configuration file to the specified app or to the active one.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app export <file>`\r\n\r\n    Exports to a file the specified app or the active one.\r\n\r\n    * `--app <application>`\r\n               \r\n            Specifies a Kinvey app by ID or name.\r\n    \r\n* `app delete`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n              \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `appenv create <name> [file]`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n* `appenv push <file>`\r\n\r\n    Applies configuration (defined in file) to the specified environment or to the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n        \r\n    * `--env <environment>`\r\n              \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `appenv show`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv export <file>`\r\n    \r\n    Exports to a file the specified app environment or the active one.\r\n    \r\n    * `--env <environment>`\r\n              \r\n        Specifies a Kinvey app environment by ID or name.\r\n        \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv delete`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `service create <name> <file>`\r\n\r\n    Creates a service within an application or organization (either `--app` or `--org` must be specified).\r\n    \r\n    * `--app <application>`\r\n           \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--org <organization>`\r\n                \r\n      Specifies a Kinvey organization by ID or name.\r\n\r\n* `service push <file>`\r\n\r\n    Applies a service configuration file to the specified service.\r\n    \r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n\r\n* `service export <file>`\r\n\r\n    Exports the specified service to a file.\r\n    \r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex Service through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n        Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n        Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n        \r\n    * `--vars, --set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n        \r\n    * `--runtime <node6|node8|node10>`\r\n    \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n        \r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service, which is the one you initiated last on the current profile. To use a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n    \r\n        Specifies service ID.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n    \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n    \r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current Flex Service, which is the one you initiated last on the current profile. To get the status of a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n       \r\n* `flex show`\r\n   \r\n   Shows info about the current Flex service, which is the one you initiated last on the current profile. To get info for a different service, specify its service ID.\r\n            \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n            \r\n* `flex list`\r\n\r\n   Lists all Flex Services for a domain (app or organization), excluding external Flex Services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n        Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n        App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays logs for the current Flex Service, which is the one you initiated last on the current profile. To get logs for a different service, specify its service ID. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n            \r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex update`\r\n\r\n    Updates environment variables and/or runtime environment of the current Flex Service, which is the one you initiated last on the current profile. To specify a different service, use `--service`. The command causes restart/rebuild of the service.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n        \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--set-vars <environment variables>`\r\n        \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current Flex Service, which is the one you initiated last on the current profile. To recycle a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n            \r\n* `flex delete`\r\n\r\n    Deletes the current Flex Service, which is the one you initiated last on the current profile. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instance-id` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instance-id <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\nCommand-specific options can also be specified as environment variables. You just need to prefix the name of the option with `KINVEY_CLI_`. For example, `--no-prompt` becomes `KINVEY_CLI_NO_PROMPT` as environment variable.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console or through `kinvey flex create <service-name>`.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy your Node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n    \r\nAlongside the deploy you can set environment variables for your service. If both names and values are void of the equality sign (`=`) and comma (`,`), you can use the shorthand syntax:\r\n\r\n    kinvey flex deploy --set-vars \"MY_APP_A=valueA,MY_APP_B=valueB\" \r\n    \r\nOtherwise you need to specify environment variables in stringified JSON format:\r\n\r\n    kinvey flex deploy --set-vars \"{\\\"MY_APP_A\\\":[\\\"value 1\\\", \\\"value 2\\\"], \\\"MY_APP_B\\\":\\\"valueB\\\"}\"\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --service <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. It could be further processed using a tool like jq (command-line JSON processor). You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Flex Runtime Version Selection\r\n\r\nFlex projects that you deploy run server-side on the Flex Runtime which represents a preconfigured Node.js environment. When creating a project and later when running it, you can select a Node.js version for the project to run on using the `--runtime` option.\r\n\r\nThe runtime selection is limited to the major Node.js version. You can choose to run your project on the 6.x, 8.x, or 10.x branch but the minor and patch versions are always determined by the Flex Runtime.\r\n\r\nKinvey makes its best to provide the [latest LTS](https://github.com/nodejs/Release#release-schedule) versions of the 6.x, 8.x, and 10.x branches. The frequent updates mean that the version that you start developing on may be replaced by the time you are ready to deploy the final version of your project.\r\n\r\nAfter you deploy a Flex project, it remains on the same Node.js version until you upgrade it to a new major version or Kinvey decides to upgrade the project's runtime to a more recent minor and patch version because of security or efficiency reasons.\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Configuration management\r\n\r\nKinvey CLI supports the usage of configuration files (JSON format) to enable configuring certain aspects of the backend.\r\n\r\n**Environments** can be created and modified by applying an environment configuration file. The file can contain: environment-related settings, collections, business logic, roles, push settings.\r\n\r\n**Services** can be created and modified by applying a service configuration file. Supported services: internal flex service, external flex service.\r\n\r\n### Environment configuration file\r\n\r\nThe environment configuration file can be used to create a brand new environment or to modify an existing one. It is easiest to generate the file by 'exporting' an existent environment and making the necessary modifications. To export an environment run:\r\n \r\n ```\r\nkinvey appenv export <file> [--env <env>] [--app <app>]\r\n```\r\n\r\nAlternatively, the environment template beneath can be used and modified as needed.\r\n\r\nTo create an environment from a configuration file run:\r\n ```\r\nkinvey appenv create <envName> [file-path] [--app <AppNameOrID>]\r\n```\r\n\r\nTo apply a configuration file to an existent environment run:\r\n ```\r\nkinvey appenv push <file-path> [--env <env>] [--app <app>]\r\n```\r\n\r\nBefore an environment config file gets applied a check will be executed to verify JSON is valid and parameter values are allowed. If the check passes successfully, Kinvey CLI will start applying the changes. In the case of a new environment it will simply try to create all the entities described in the file. \r\n\r\nWhen the file is being applied to an existent environment then existent entities could be updated and new ones can be created. The CLI won't delete any entities even if they are not included in the file. Hence, if you want to create new endpoints but don't want to modify any existent collections for example, then you can exclude them from the configuration to have the file being applied faster.\r\n\r\nIf an error occurs, the CLI stops applying the file and outputs the error message.\r\n\r\n#### Environment sample config file\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"environment\",\r\n  \"settings\": {\r\n    \"apiVersion\": 3,\r\n    \"emailVerification\": {\r\n      \"required\": false\r\n    }\r\n  },\r\n  \"collections\": {\r\n    \"myCollection\": {\r\n      \"type\": \"internal\",\r\n      \"permissions\": \"shared\"\r\n    },\r\n    \"anotherCollection\": {\r\n      \"type\": \"external\",\r\n      \"permissions\": \"shared\",\r\n      \"service\": \"awesomeService\",\r\n      \"serviceObject\": \"awesomeServiceObject\"\r\n    }\r\n  },\r\n  \"commonCode\": {\r\n    \"my-common-code\": {\r\n      \"code\": \"var commonLogic = {};\\ncommonLogic.print = function print(msg) {\\n  console.log(msg);\\n};\"\r\n    },\r\n    \"another-common-code\": {\r\n      \"codeFile\": \"./another-common-code.js\"\r\n    }\r\n  },\r\n  \"collectionHooks\": {\r\n    \"myCollection\": {\r\n      \"onPreSave\": {\r\n        \"type\": \"internal\",\r\n        \"code\": \"function onPreSave(request, response, modules) {\\n  response.continue();\\n}\"\r\n      },\r\n      \"onPostSave\": {\r\n        \"type\": \"external\",\r\n        \"service\": \"awesomeService\",\r\n        \"handlerName\": \"awesomeHandler\"\r\n      }\r\n    }\r\n  },\r\n  \"customEndpoints\": {\r\n    \"myEndpoint\": {\r\n      \"type\": \"internal\",\r\n      \"codeFile\": \"./my-endpoint.js\",\r\n      \"schedule\": {\r\n        \"start\": \"2019-07-22T16:35:00Z\",\r\n        \"interval\": \"5-minutes\"\r\n      }\r\n    },\r\n    \"anotherEndpoint\": {\r\n      \"type\": \"external\",\r\n      \"service\": \"awesomeService\",\r\n      \"handlerName\": \"anotherHandler\"\r\n    }\r\n  },\r\n  \"roles\": {\r\n    \"Intern\": { \"description\": \"Interns\" },\r\n    \"Employee\": { \"description\": \"Employees\" }\r\n  },\r\n  \"groups\": {\r\n    \"myGroup\": {\r\n      \"description\": \"Description here\",\r\n      \"groups\": [ \"otherGroup\" ]\r\n    },\r\n    \"otherGroup\": {\r\n      \"description\": \"Part of 'myGroup'\"\r\n    }\r\n  },\r\n  \"push\": {\r\n  \t\"android\": {\r\n  \t  \"senderId\": \"id123\",\r\n  \t  \"apiKey\": \"key123\"\r\n  \t},\r\n  \t\"ios\": {\r\n  \t  \"production\": false,\r\n  \t  \"certificateFilePath\": \"./mycertdev.p12\"\r\n  \t}\r\n  }  \r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`settings` Environment settings. Optional.\r\n\r\n`settings.apiVersion` The default REST API version for this env.\r\n\r\n`settings.emailVerification` Options regarding email verification for users of this environment. Optional.\r\n                             \r\n`settings.emailVerification.required` *true|false* If true, users who have not verified their email will not be able to access the environment. Required.\r\n\r\n`settings.emailVerification.auto` *true|false* If true, automatically send a email verification request to all new users created within the environment. Optional.\r\n\r\n`settings.emailVerification.since` ISO-8601 date. If specified, any user created before this date will not need a verified email in order to access the environment. Optional.\r\n\r\n`collections` Environment collections. Optional. Object. Each first-level property is the name of a collection and contains an object describing this collection.\r\n\r\n`collections.[collectionName].type` *internal|external* If external, then the collection is backed by a flex service. Required.\r\n\r\n`collections.[collectionName].permissions` Collections permissions. Optional. Could be a string or an object. Allowed string values: private, full, shared, read-only. To specify roles, use an object in the following format:\r\n```\r\n\"permissions\": {\r\n  [roleName]: {\r\n    [operation]: [accessType]\r\n  }\r\n}\r\n```\r\nwhere **operation** is one of: *create, read, update, delete*\r\n\r\nand **accessType** is one of: *never, always, grant, entity*\r\n\r\nTo specify the built-in **All users** role, use *all-users*.\r\n \r\n Example:\r\n\r\n```\r\n\"permissions\": {\r\n  \"all-users\": {\r\n    \"read\": \"always\"\r\n  },\r\n  \"Employee\": {\r\n    \"create\": \"always\",\r\n    \"read\": \"always\",\r\n    \"update\": \"always\",\r\n    \"delete\": \"grant\"\r\n  }\r\n}\r\n```\r\n\r\n`collections.[collectionName].service` Service to connect the collection to. Either service name or ID. Collection type must be set to 'external'.\r\n\r\n`collections.[collectionName].serviceObject` Service object. Collection type must be set to 'external'.\r\n\r\n`commonCode` Common code functions. Optional. An object where each first-level property is the name of the common code script.\r\n\r\n`commonCode.[commonCodeName].code` Code. Either `code` or `codeFile` must be set.\r\n \r\n`commonCode.[commonCodeName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` must be set.\r\n\r\n`collectionHooks` Collection hooks. Optional. An object where each first-level property is the name of a collection.\r\n\r\n`collectionHooks.[collectionName].[hookName]` *onPreSave|onPreFetch|onPreDelete|onPostSave|onPostFetch|onPostDelete* Hook type.\r\n \r\n`collectionHooks.[collectionName].[hookName].type` *internal|external* External if a service is involved. Required.  \r\n\r\n`collectionHooks.[collectionName].[hookName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].service` Service to use. Collection hook type must be set to 'external'.\r\n\r\n`collectionHooks.[collectionName].[hookName].handlerName` Handler name. Collection hook type must be set to 'external'.\r\n\r\n`customEndpoints` Custom endpoints. Optional. Object where each first-level property is the name of an endpoint.\r\n\r\n`customEndpoints.[endpointName].type` *internal|external* External if a service is involved. Required. \r\n\r\n`customEndpoints.[endpointName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].service` Service to use. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].handlerName` Handler name. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].schedule` Object describing how to schedule the endpoint. Optional.\r\n\r\n`customEndpoints.[endpointName].schedule.start` The code will be scheduled to start running at this date and time. ISO-8601 datetime. Required.\r\n\r\n`customEndpoints.[endpointName].schedule.interval` *weekly|daily|hourly|30-minutes|10-minutes|5-minutes|1-minute* At what intervals to execute the code. Optional.\r\n\r\n`roles` Roles. Optional. Object where each first-level property is the name of a role.\r\n\r\n`roles.[roleName].description` Role description. String. Optional.\r\n\r\n`groups` Groups. Optional. Object where each first-level property is the ID of a group. For example if the name is 'My group', then an appropriate ID could be 'myGroup' or 'my-group'.\r\n\r\n`groups.[groupId].name` Name. Optional.\r\n\r\n`groups.[groupId].description` Description. Optional.\r\n\r\n`groups.[groupId].groups` Nested groups. Optional. An array of other groups IDs.\r\n\r\n`push` Push notifications settings. Optional. Object.\r\n\r\n`push.android` Object describing Android settings. Optional.\r\n\r\n`push.android.senderId` Sender ID. Required.\r\n\r\n`push.android.apiKey` API Key. Required.\r\n\r\n`push.ios` Object describing iOS settings. Optional.\r\n\r\n`push.ios.production` *true|false* If false, then it is a development certificate. Required.\r\n\r\n`push.ios.certificateFilePath` Path to certificate - relative or absolute. Required.\r\n\r\n`push.ios.password` Certificate password. Optional.\r\n\r\n### Service configuration file\r\n\r\nThe service configuration file can be used to create a brand new internal or external flex service or to modify an existing one.\r\n\r\nTo create a service from a configuration file run:\r\n ```\r\nkinvey service create <serviceName> <file-path> [--app AppNameOrId|--org OrgNameOrId]\r\n```\r\n\r\nEither `--app` or `--org` option must be set. The service will be accessible only to the chosen application or organization respectively.\r\n\r\nTo apply a configuration file to an existent service run:\r\n ```\r\nkinvey service push <file-path> (--service <service-ID>)\r\n``` \r\n\r\nWhen a new internal flex service is created the CLI will attempt a deploy if `sourcePath` is set. \r\n\r\nWhen an existent internal flex service is updated and `sourcePath` is set, the CLI will attempt to deploy only if the version defined in `package.json` is higher then the cloud version. Otherwise, deployment procedure will be skipped.\r\n\r\n#### Service sample config file\r\n\r\nThe following service template can be used and modified as needed:\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"service\",\r\n  \"type\": \"flex-internal\",\r\n  \"secret\": \"123\",\r\n  \"description\": \"Some description here\"\r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`type` *flex-internal|flex-external* Service type. Required.\r\n \r\n`secret` Shared secret to use when communicating with the service.\r\n \r\n`description` Service description. String. Optional.\r\n \r\n`host` URI pointing to the service server's location. Required when `type` is 'flex-external'.\r\n\r\n`sourcePath` Path to source code - relative or absolute. Optional. Applicable when `type` is 'flex-internal'.\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"2a212050f3760c991b6476d841bd6444aaac96fa","_id":"kinvey-cli@4.1.0-alpha.3","_shasum":"e7f30795f02077111ef0283890d3c351697901ee","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"e7f30795f02077111ef0283890d3c351697901ee","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.1.0-alpha.3.tgz","integrity":"sha512-HFFSfVnpBmosBRkWAvJ/63W9vr3E6VHmnfpisDG7Kawxri22wzrcCNUICDx7Rb/s8x/KfKfcvaihiKgRVigoFg==","fileCount":59,"unpackedSize":435348,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9W/ACRA9TVsSAnZWagAAT/IQAKRsuKK2Tz1+G4RF7YqM\niH5sVBHP+A8sOE0vyd9KzC2jV0ekKi6yrvP59az0EMaSQQmBX/Jy9CKVOvs7\nub3vD9l2QHZGHXsukm/z7eLAeGllYa3Y4HZ0LCUsv77wufZkyzl/9L2a1tgY\ncIM4mEOCu5Qe562YbHzEW44XFiG8FpgGTktB+CvA2Tdqr60u8x7zWy4ejaYo\n31r/kDQOnv8m7WkLd0m8uLM/FYkFwpZdxY05e1ewclNBMO44L0E+G5H4Uybb\n0hldN1iZIS3qpy118TKvtv+igqCnBoyglq48c23ljYY1x0jti7QpwcBJur0H\ngnaX9SbwRjvC0UOfGxpamyy6Echjip0r00aw/fpEOnG3aOhtqe3jb8yImuUc\n7EFttTQrRYCH4rUPbu9gYcywgJw52oeVpHS8CvzQHLOBm1UdENklDpU8rm0U\npw2kOvVMAb2/4Oxj8gS7LzzHC3kV+OR+wUxUaXdZopcOjIbk60wrbHPYDW9b\nV0lEqT6Y8Pgz4zYIHzZ3gh2w8pB53oEE56x23DTtKI+AdW7lz/S97DI6mzFg\nhQE8NZHwvTGbN6h354nBOtT7H+hfO7Dk8rQgdGo1Vid9GWxLiC695lNN5n8z\nj/mRG6z2F9OrPD96+GO4aYYIy8QBKqeQ8+cZOsXPFNLfcPXNR56o2B4Sguhs\n+z0e\r\n=wt7J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE5H8flRQjLoYjsqLZdZPVnwx9mDKK3W8KlbN2E7d4blAiAWhBOpey/cE1f1buXR062c+Mr/auSU1RJZRqhNI/DL1A=="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.1.0-alpha.3_1542811584315_0.09507179705241686"},"_hasShrinkwrap":false},"4.1.0":{"name":"kinvey-cli","version":"4.1.0","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"55fe0cad8cd9446fd5fecd56d3b42611b71e28e8","_id":"kinvey-cli@4.1.0","_shasum":"1c704eb838acb62a08733492d3711e85ed5fb214","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"1c704eb838acb62a08733492d3711e85ed5fb214","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.1.0.tgz","integrity":"sha512-58vpIeZSO/D1WgIMtNhu7gk0ggHSrxF0sBC+fcnCI4evNnfKr8Qz1c6TAe5aGxK79O1UTc9jw1FbKFr6nlJNbQ==","fileCount":43,"unpackedSize":284957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/WBMCRA9TVsSAnZWagAAnRwP/AkKlzKAM97J1eIlVa/g\nq3E3yEA1X2A+KOdIYO6U8ZfQHIgtd+SK/Pt/hET4yyt550yyagE3VXqFSew0\n4FJmtSKux5jp3TSGl5eJQYrcIkM/LuUWWvcHB/uqLbl9FZ4Dkp/NRf2pPagy\n9cDhtNRPd52daKReP21N7RVDjvODITXXj+hR9pOYtnhqCaoigu0naSUKD9HK\nYPmU8s+TYpiyMwMqbCLkzb3uYbD9vOPN4YV+NeFuN6vrCd9ER8xHaCCPF+Eh\nPnZpazCFK2wGKL0a0GxOswefmxTFGjQBZW35csTk/h+Nqjc0psnGPru/WKJz\nkytER64Af8ThnAi4ACpyrQ102CKzbhNgdbd5MyhXq5AJilBOvR2g5MYj7J86\nv139ADYrM92pyTiFb2wCO37FHnbaiGUwuGBC5oscjh0sgBys7TtGxjNwBImu\n61nA2Yided2tl62pSgRjBaqtPrmua/E2bASLnpi5RmHRKr4MUE3DZ1N+SWUE\ntOVUmobVq4wsjRDHxXr3gZpVc7Y21Zgc7N3Od/h9NNu86qMkzmnAK3z/3r5/\nQ3IeQah/Me2xqhSOcMzMZigsgh27Gj7hjHRrLMH1cF8MZHj5BAPzp/wLE+W7\nhK3936RKLQi1og4qDJX69GtUaQ5LJI+o2DTIInI4NkrlXwKAIDKEoQH8FHtG\njC7l\r\n=caGr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCopn6lyBMIeB1fA7+fyZVJUAWhHz1luTNeWox7f3IE/wIgInOMRZut7cEin6KJ64m1KdF5WVeOgpEh62AB1lIqhew="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.1.0_1543331915410_0.041838126236984685"},"_hasShrinkwrap":false},"4.1.1":{"name":"kinvey-cli","version":"4.1.1","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"b7490259e0c29d62a291f137aac043d1b963a3c2","_id":"kinvey-cli@4.1.1","_shasum":"18e6bdabf2db7cba9c3b310c1759b97563ede751","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"18e6bdabf2db7cba9c3b310c1759b97563ede751","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.1.1.tgz","integrity":"sha512-9SUbMeQSyBQCApAK2mcRIcYu+eWeQDE3cVGwmESxA+OhrTf7ShzHeKUhrJDIqFYLwDwTSAaNphXY1bi38XFRDA==","fileCount":43,"unpackedSize":285095,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/8vVCRA9TVsSAnZWagAAMpwP/0gH/m3dV5S0NHiSjLP9\n7W7ITmqED0cGiKW4bgO42fYQoZYIXJRk5YbOAuRBtJrFzh4grvKy8pjCWx0j\nnIZMG8c+UnqO8sgAQOc/ftRCA/J42bqsWfiNtxepPc+Fj9g2v4WAJqIKVimu\nn8X4mLOxVKc5jSHd6MAu4WR7ucgtIU4h3RahDWKaE9HloX63hopcFiNdUV0p\nfgUyBe9ujiSz1xZLu15ZaMfnM5Efoc2VvtMLjrUNJvFa9Pobe8c/lUke3VpF\nDtHAfluiBRSJkWL6gjdcPJaONmOMX5uuJl8iK03G7kI+IM3KBbmivjtxbz84\nJM55wfDVJQR64XS9L9/1eCHoz+Oal0Dg1ZdDVKPiC4OcOmz/BNkoVU69CYM0\n+KGDQXD5OXcGfYWkU5bkR6F66YisvEopTug2FZdT/oabGxrfkcYM/Q3KHNFx\n7ma8MRes2/XjoiBqbmUKAen22lIfflmJaiEPFMQQ+gbtpOsgYXZ2kzjb8VNF\nznd1Tup100uGjCFm3byMOKWcBB5Bi2P2zxA3n0zS51KP08PIGQWUPMcri6z6\nEYmXdIppfqnjEZKOgXBbrO958WBft053fS0WkPx9lPIiGI8vnivjvOrDkHhk\nhYaD09XLPGKHgN9UJLfg2yrVK8k+QLPYg4SoHPBHs7o/BQT1FI5vgCS6hcrS\nqBAw\r\n=8krZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCdPYOalOGvNnifVJsgHaw/pz9O3ocJ9joKPkLNs55IwAIhAK42oZBZCXTlQUTciJlP1eWlRkb65WrCnuHtXcwjW3WF"}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.1.1_1543490516525_0.6595837486742551"},"_hasShrinkwrap":false},"5.0.0-alpha.0":{"name":"kinvey-cli","version":"5.0.0-alpha.0","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isplainobject":"4.0.6","lodash.isequal":"4.5.0","lodash.isstring":"4.0.1","lodash.merge":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT          |   INTEGRATION          |  NPM SECURITY       |\r\n|-------------------|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][5] | [![Build2][2]][5] |  [![Build3][3]][5] | [![Build4][4]][5] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/4\r\n[5]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting app environments\r\n* Creating, listing, and deleting collections\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password and for two-factor authentication token if needed.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n    * `--org <organization>`\r\n           \r\n        Specifies a Kinvey organization by ID or name.\r\n          \r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `org export <file>`\r\n    \r\n    Exports to a file the specified org or the active one.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n    \r\n* `app create <name> [file]`\r\n\r\n    Creates an application. You can specify an organization ID or name if you want to create the app within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n\r\n* `app push <file>`\r\n    \r\n    Applies app configuration file to the specified app or to the active one.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app export <file>`\r\n\r\n    Exports to a file the specified app or the active one.\r\n\r\n    * `--app <application>`\r\n               \r\n            Specifies a Kinvey app by ID or name.\r\n    \r\n* `app delete`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n              \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `appenv create <name> [file]`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n      \r\n* `appenv push <file>`\r\n\r\n    Applies configuration (defined in file) to the specified environment or to the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n        \r\n    * `--env <environment>`\r\n              \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `appenv show`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv export <file>`\r\n    \r\n    Exports to a file the specified app environment or the active one.\r\n    \r\n    * `--env <environment>`\r\n              \r\n        Specifies a Kinvey app environment by ID or name.\r\n        \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv delete`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `service create <name> <file>`\r\n\r\n    Creates a service within an application or organization (either `--app` or `--org` must be specified).\r\n    \r\n    * `--app <application>`\r\n           \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--org <organization>`\r\n                \r\n      Specifies a Kinvey organization by ID or name.\r\n\r\n* `service push <file>`\r\n\r\n    Applies a service configuration file to the specified service.\r\n    \r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n\r\n* `service export <file>`\r\n\r\n    Exports the specified service to a file.\r\n    \r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex service and service environment combination through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name along with a service environment. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n        Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n        Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n       \r\n    * `--env <service environment name>`\r\n    \r\n        Specifies a name for the default service environment that will be created with the service. The name will be set to Development if you omit this option.\r\n        \r\n    * `--vars, --set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n        \r\n    * `--runtime <node6|node8|node10>`\r\n    \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n        \r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service and service environment combination, which is the one you initiated last on the current profile. To use a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n    \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n    \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n    \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n    \r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current Flex service and service environment combination, which is the one you initiated last on the current profile. To get the status of a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n       \r\n* `flex show`\r\n   \r\n   Shows info about a service environment.\r\n            \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n         \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex list`\r\n\r\n   Lists all Flex services for a domain (app or organization), excluding external Flex services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n        Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n        App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays logs for the current Flex service environment. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex update`\r\n\r\n    Updates environment variables and/or runtime environment of the current Flex service environment, which is the one you initiated last on the current profile. To specify a different service, use `--service`. The command causes restart/rebuild of the service.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n        \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--set-vars <environment variables>`\r\n        \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current Flex service environment, which is the one you initiated last on the current profile. To recycle a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex delete`\r\n\r\n    Deletes the current Flex service, including all service environments inside it. The current service is the one you initiated last on the current profile. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instance-id` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instance-id <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\nCommand-specific options can also be specified as environment variables. You just need to prefix the name of the option with `KINVEY_CLI_`. For example, `--no-prompt` becomes `KINVEY_CLI_NO_PROMPT` as environment variable.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console or through `kinvey flex create <service-name>`.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy your Node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n    \r\nAlongside the deploy you can set environment variables for your service. If both names and values are void of the equality sign (`=`) and comma (`,`), you can use the shorthand syntax:\r\n\r\n    kinvey flex deploy --set-vars \"MY_APP_A=valueA,MY_APP_B=valueB\" \r\n    \r\nOtherwise you need to specify environment variables in stringified JSON format:\r\n\r\n    kinvey flex deploy --set-vars \"{\\\"MY_APP_A\\\":[\\\"value 1\\\", \\\"value 2\\\"], \\\"MY_APP_B\\\":\\\"valueB\\\"}\"\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --service <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. It could be further processed using a tool like jq (command-line JSON processor). You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Flex Runtime Version Selection\r\n\r\nFlex projects that you deploy run server-side on the Flex Runtime which represents a preconfigured Node.js environment. When creating a project and later when running it, you can select a Node.js version for the project to run on using the `--runtime` option.\r\n\r\nThe runtime selection is limited to the major Node.js version. You can choose to run your project on the 6.x, 8.x, or 10.x branch but the minor and patch versions are always determined by the Flex Runtime.\r\n\r\nKinvey makes its best to provide the [latest LTS](https://github.com/nodejs/Release#release-schedule) versions of the 6.x, 8.x, and 10.x branches. The frequent updates mean that the version that you start developing on may be replaced by the time you are ready to deploy the final version of your project.\r\n\r\nAfter you deploy a Flex project, it remains on the same Node.js version until you upgrade it to a new major version or Kinvey decides to upgrade the project's runtime to a more recent minor and patch version because of security or efficiency reasons.\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Configuration management\r\n\r\nKinvey CLI supports the usage of configuration files (JSON format) to enable configuring certain aspects of the backend.\r\n\r\n**Environments** can be created and modified by applying an environment configuration file. The file can contain: environment-related settings, collections, business logic, roles, push settings.\r\n\r\n**Services** can be created and modified by applying a service configuration file. Supported services: internal flex service, external flex service.\r\n\r\n### Environment configuration file\r\n\r\nThe environment configuration file can be used to create a brand new environment or to modify an existing one. It is easiest to generate the file by 'exporting' an existent environment and making the necessary modifications. To export an environment run:\r\n \r\n ```\r\nkinvey appenv export <file> [--env <env>] [--app <app>]\r\n```\r\n\r\nAlternatively, the environment template beneath can be used and modified as needed.\r\n\r\nTo create an environment from a configuration file run:\r\n ```\r\nkinvey appenv create <envName> [file-path] [--app <AppNameOrID>]\r\n```\r\n\r\nTo apply a configuration file to an existent environment run:\r\n ```\r\nkinvey appenv push <file-path> [--env <env>] [--app <app>]\r\n```\r\n\r\nBefore an environment config file gets applied a check will be executed to verify JSON is valid and parameter values are allowed. If the check passes successfully, Kinvey CLI will start applying the changes. In the case of a new environment it will simply try to create all the entities described in the file. \r\n\r\nWhen the file is being applied to an existent environment then existent entities could be updated and new ones can be created. The CLI won't delete any entities even if they are not included in the file. Hence, if you want to create new endpoints but don't want to modify any existent collections for example, then you can exclude them from the configuration to have the file being applied faster.\r\n\r\nIf an error occurs, the CLI stops applying the file and outputs the error message.\r\n\r\n#### Environment sample config file\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"environment\",\r\n  \"settings\": {\r\n    \"apiVersion\": 3,\r\n    \"emailVerification\": {\r\n      \"required\": false\r\n    }\r\n  },\r\n  \"collections\": {\r\n    \"myCollection\": {\r\n      \"type\": \"internal\",\r\n      \"permissions\": \"shared\"\r\n    },\r\n    \"anotherCollection\": {\r\n      \"type\": \"external\",\r\n      \"permissions\": \"shared\",\r\n      \"service\": \"awesomeService\",\r\n      \"serviceObject\": \"awesomeServiceObject\"\r\n    }\r\n  },\r\n  \"commonCode\": {\r\n    \"my-common-code\": {\r\n      \"code\": \"var commonLogic = {};\\ncommonLogic.print = function print(msg) {\\n  console.log(msg);\\n};\"\r\n    },\r\n    \"another-common-code\": {\r\n      \"codeFile\": \"./another-common-code.js\"\r\n    }\r\n  },\r\n  \"collectionHooks\": {\r\n    \"myCollection\": {\r\n      \"onPreSave\": {\r\n        \"type\": \"internal\",\r\n        \"code\": \"function onPreSave(request, response, modules) {\\n  response.continue();\\n}\"\r\n      },\r\n      \"onPostSave\": {\r\n        \"type\": \"external\",\r\n        \"service\": \"awesomeService\",\r\n        \"handlerName\": \"awesomeHandler\"\r\n      }\r\n    }\r\n  },\r\n  \"customEndpoints\": {\r\n    \"myEndpoint\": {\r\n      \"type\": \"internal\",\r\n      \"codeFile\": \"./my-endpoint.js\",\r\n      \"schedule\": {\r\n        \"start\": \"2019-07-22T16:35:00Z\",\r\n        \"interval\": \"5-minutes\"\r\n      }\r\n    },\r\n    \"anotherEndpoint\": {\r\n      \"type\": \"external\",\r\n      \"service\": \"awesomeService\",\r\n      \"handlerName\": \"anotherHandler\"\r\n    }\r\n  },\r\n  \"roles\": {\r\n    \"Intern\": { \"description\": \"Interns\" },\r\n    \"Employee\": { \"description\": \"Employees\" }\r\n  },\r\n  \"groups\": {\r\n    \"myGroup\": {\r\n      \"description\": \"Description here\",\r\n      \"groups\": [ \"otherGroup\" ]\r\n    },\r\n    \"otherGroup\": {\r\n      \"description\": \"Part of 'myGroup'\"\r\n    }\r\n  },\r\n  \"push\": {\r\n  \t\"android\": {\r\n  \t  \"senderId\": \"id123\",\r\n  \t  \"apiKey\": \"key123\"\r\n  \t},\r\n  \t\"ios\": {\r\n  \t  \"production\": false,\r\n  \t  \"certificateFilePath\": \"./mycertdev.p12\"\r\n  \t}\r\n  }  \r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`settings` Environment settings. Optional.\r\n\r\n`settings.apiVersion` The default REST API version for this env.\r\n\r\n`settings.emailVerification` Options regarding email verification for users of this environment. Optional.\r\n                             \r\n`settings.emailVerification.required` *true|false* If true, users who have not verified their email will not be able to access the environment. Required.\r\n\r\n`settings.emailVerification.auto` *true|false* If true, automatically send a email verification request to all new users created within the environment. Optional.\r\n\r\n`settings.emailVerification.since` ISO-8601 date. If specified, any user created before this date will not need a verified email in order to access the environment. Optional.\r\n\r\n`collections` Environment collections. Optional. Object. Each first-level property is the name of a collection and contains an object describing this collection.\r\n\r\n`collections.[collectionName].type` *internal|external* If external, then the collection is backed by a flex service. Required.\r\n\r\n`collections.[collectionName].permissions` Collections permissions. Optional. Could be a string or an object. Allowed string values: private, full, shared, read-only. To specify roles, use an object in the following format:\r\n```\r\n\"permissions\": {\r\n  [roleName]: {\r\n    [operation]: [accessType]\r\n  }\r\n}\r\n```\r\nwhere **operation** is one of: *create, read, update, delete*\r\n\r\nand **accessType** is one of: *never, always, grant, entity*\r\n\r\nTo specify the built-in **All users** role, use *all-users*.\r\n \r\n Example:\r\n\r\n```\r\n\"permissions\": {\r\n  \"all-users\": {\r\n    \"read\": \"always\"\r\n  },\r\n  \"Employee\": {\r\n    \"create\": \"always\",\r\n    \"read\": \"always\",\r\n    \"update\": \"always\",\r\n    \"delete\": \"grant\"\r\n  }\r\n}\r\n```\r\n\r\n`collections.[collectionName].service` Service to connect the collection to. Either service name or ID. Collection type must be set to 'external'.\r\n\r\n`collections.[collectionName].serviceObject` Service object. Collection type must be set to 'external'.\r\n\r\n`commonCode` Common code functions. Optional. An object where each first-level property is the name of the common code script.\r\n\r\n`commonCode.[commonCodeName].code` Code. Either `code` or `codeFile` must be set.\r\n \r\n`commonCode.[commonCodeName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` must be set.\r\n\r\n`collectionHooks` Collection hooks. Optional. An object where each first-level property is the name of a collection.\r\n\r\n`collectionHooks.[collectionName].[hookName]` *onPreSave|onPreFetch|onPreDelete|onPostSave|onPostFetch|onPostDelete* Hook type.\r\n \r\n`collectionHooks.[collectionName].[hookName].type` *internal|external* External if a service is involved. Required.  \r\n\r\n`collectionHooks.[collectionName].[hookName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].service` Service to use. Collection hook type must be set to 'external'.\r\n\r\n`collectionHooks.[collectionName].[hookName].handlerName` Handler name. Collection hook type must be set to 'external'.\r\n\r\n`customEndpoints` Custom endpoints. Optional. Object where each first-level property is the name of an endpoint.\r\n\r\n`customEndpoints.[endpointName].type` *internal|external* External if a service is involved. Required. \r\n\r\n`customEndpoints.[endpointName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].service` Service to use. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].handlerName` Handler name. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].schedule` Object describing how to schedule the endpoint. Optional.\r\n\r\n`customEndpoints.[endpointName].schedule.start` The code will be scheduled to start running at this date and time. ISO-8601 datetime. Required.\r\n\r\n`customEndpoints.[endpointName].schedule.interval` *weekly|daily|hourly|30-minutes|10-minutes|5-minutes|1-minute* At what intervals to execute the code. Optional.\r\n\r\n`roles` Roles. Optional. Object where each first-level property is the name of a role.\r\n\r\n`roles.[roleName].description` Role description. String. Optional.\r\n\r\n`groups` Groups. Optional. Object where each first-level property is the ID of a group. For example if the name is 'My group', then an appropriate ID could be 'myGroup' or 'my-group'.\r\n\r\n`groups.[groupId].name` Name. Optional.\r\n\r\n`groups.[groupId].description` Description. Optional.\r\n\r\n`groups.[groupId].groups` Nested groups. Optional. An array of other groups IDs.\r\n\r\n`push` Push notifications settings. Optional. Object.\r\n\r\n`push.android` Object describing Android settings. Optional.\r\n\r\n`push.android.senderId` Sender ID. Required.\r\n\r\n`push.android.apiKey` API Key. Required.\r\n\r\n`push.ios` Object describing iOS settings. Optional.\r\n\r\n`push.ios.production` *true|false* If false, then it is a development certificate. Required.\r\n\r\n`push.ios.certificateFilePath` Path to certificate - relative or absolute. Required.\r\n\r\n`push.ios.password` Certificate password. Optional.\r\n\r\n### Service configuration file\r\n\r\nThe service configuration file can be used to create a brand new internal or external flex service or to modify an existing one.\r\n\r\nTo create a service from a configuration file run:\r\n ```\r\nkinvey service create <serviceName> <file-path> [--app AppNameOrId|--org OrgNameOrId]\r\n```\r\n\r\nEither `--app` or `--org` option must be set. The service will be accessible only to the chosen application or organization respectively.\r\n\r\nTo apply a configuration file to an existent service run:\r\n ```\r\nkinvey service push <file-path> (--service <service-ID>)\r\n``` \r\n\r\nWhen a new internal flex service is created the CLI will attempt a deploy if `sourcePath` is set. \r\n\r\nWhen an existent internal flex service is updated and `sourcePath` is set, the CLI will attempt to deploy only if the version defined in `package.json` is higher then the cloud version. Otherwise, deployment procedure will be skipped.\r\n\r\n#### Service sample config file\r\n\r\nThe following service template can be used and modified as needed:\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"service\",\r\n  \"type\": \"flex-internal\",\r\n  \"secret\": \"123\",\r\n  \"description\": \"Some description here\"\r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`type` *flex-internal|flex-external* Service type. Required.\r\n \r\n`secret` Shared secret to use when communicating with the service.\r\n \r\n`description` Service description. String. Optional.\r\n \r\n`host` URI pointing to the service server's location. Required when `type` is 'flex-external'.\r\n\r\n`sourcePath` Path to source code - relative or absolute. Optional. Applicable when `type` is 'flex-internal'.\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\n### Caveats\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n### Support for Service Environments\r\n\r\nKinvey CLI version 4.1.0 introduces support for environments inside Flex services coinciding with the release of this feature on the backend. When upgrading from a previous Kinvey CLI version, have the following caveats in mind:\r\n\r\n- The `flex init` interactive command prompts for service environment selection in version 4.1.0 and later if the service contains multiple environments.\r\n- Node.js projects configured with `flex init` with a Kinvey CLI version predating 4.1.0 do not contain a service environment ID. Therefore:\r\n    - We recommend rerunning the `flex init` command on these projects.\r\n    - Flex commands targeting the current service will continue to work as long as the service has a single environment.\r\n    - Flex commands targeting the current service will error out if you create additional environments inside the service and don't include `--env`.\r\n- Flex commands specifying a particular service using `--service` must include `--env` if the service has multiple environments. You can omit `--env` if the service has a single environment.\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"4b301ec92d27cf6945f04b9c7ae661c84bd6e85b","_id":"kinvey-cli@5.0.0-alpha.0","_shasum":"38a08ee66ee9335d8f08ae13a4a1a73d53dbc818","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"38a08ee66ee9335d8f08ae13a4a1a73d53dbc818","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-5.0.0-alpha.0.tgz","integrity":"sha512-rUjQMtHCoQO4uDhXtuVBJLI1XQOkxHOzu/zyxyAtZFOgXfSFy39kOz2KV/ygeVoxYPs2HS6IsQrUYlQL1uH4fw==","fileCount":59,"unpackedSize":449865,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcE7NUCRA9TVsSAnZWagAAAiAP/0HRXK6XxLSjtdMw2bfu\nsYcHxOV+sBvLracNIxre8FSZPQe4DBjHWyOUI7Ra+t/9SWfK/Ce+XMQP6QAR\nviRKIv+jcQ5gbIiPnZL6V9YSW77NvH3Pn7K6IvmPvC6sbXxrkt3Qna9wVfOJ\njpqXtbzDd89DPFBXuANDTW0dUp3oBFM9F7iEyv7f7T9bJxtQIbwgkK/BUl7s\nXQ62Q1wH7GBBtEaWH3UPHkYiSpCjgfDnBb2HCgUqKsHIH2UzulWjw1B0/NVf\nDKeNMqprMICXlsyYxFhL5V2XKSjEjn4mBiftxydO7kmmY9c8fXaLgcAsFawF\njyh9dIkGSyurvD8hFBFZiQHc+W/d6CNarMqpxQKm9Ekpta4UqpxdFkcKJgyx\no3CAPlAab78133HmI3WrI/c9jgR2SPSdhrq1O9uevj7gPK3ysPur8H2RosI1\nmB/wkeKwpZxDKyj/o5xMoTL2O4B3drnucu1GZltGYHDGIeNlLu+DIdrYTwOU\nXNL6vzIdJu5f0zBNYl7eCPTMvWcT79FEbWfTBUmCEsS8Us3e1wjNhVK2UooT\n9U2Kul+cCqmBNRcbNzXCM6QicjgRiKYJteKmo0OUaiQt9u9o4S9tcqcnqKe5\nVs4sEwFOGFNOuaFJW/YRCJ5loLTH9+v7U9YFH2CzQlr+qrPZBtoHtHFXKcqS\noaCi\r\n=CH7r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKhqT0bex8WB3N/N+dMuU/JCZncZ8C9ndZky9PwstjRAIgZ9kcIvsQMrMLI1/0z4fFw8NpOxkkFfau6MfL7OyEUJw="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_5.0.0-alpha.0_1544794963836_0.9226281767579889"},"_hasShrinkwrap":false},"4.4.0-alpha.0":{"name":"kinvey-cli","version":"4.4.0-alpha.0","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run eslint","lint":"npm run eslint","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"4.17.0","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#v0.1.1","eslint-plugin-import":"2.8.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT          |   INTEGRATION          |  NPM SECURITY       |\r\n|-------------------|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][5] | [![Build2][2]][5] |  [![Build3][3]][5] | [![Build4][4]][5] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/4\r\n[5]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting app environments\r\n* Creating, listing, and deleting collections\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password and for two-factor authentication token if needed.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n    * `--org <organization>`\r\n           \r\n        Specifies a Kinvey organization by ID or name.\r\n          \r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application. You can specify an organization ID or name if you want to create the app within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n              \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `appenv create <name>`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv show`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv delete`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex service and service environment combination through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name along with a service environment. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n        Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n        Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n       \r\n    * `--env <service environment name>`\r\n    \r\n        Specifies a name for the default service environment that will be created with the service. The name will be set to Development if you omit this option.\r\n        \r\n    * `--vars, --set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n        \r\n    * `--runtime <node6|node8|node10>`\r\n    \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n        \r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service and service environment combination, which is the one you initiated last on the current profile. To use a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n    \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n    \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n    \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n    \r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current Flex service and service environment combination, which is the one you initiated last on the current profile. To get the status of a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n       \r\n* `flex show`\r\n   \r\n   Shows info about a service environment.\r\n            \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n         \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex list`\r\n\r\n   Lists all Flex services for a domain (app or organization), excluding external Flex services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n        Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n        App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays logs for the current Flex service environment. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex update`\r\n\r\n    Updates environment variables and/or runtime environment of the current Flex service environment, which is the one you initiated last on the current profile. To specify a different service, use `--service`. The command causes restart/rebuild of the service.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n        \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--set-vars <environment variables>`\r\n        \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current Flex service environment, which is the one you initiated last on the current profile. To recycle a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex delete`\r\n\r\n    Deletes the current Flex service, including all service environments inside it. The current service is the one you initiated last on the current profile. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `website create <name>`\r\n\r\n    Create a website.\r\n    \r\n* `website list`\r\n\r\n    List websites.\r\n    \r\n* `website show`\r\n\r\n    Shows info for the specified website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n\r\n* `website deploy`\r\n\r\n    Deploy your website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n        \r\n    * `--path <path>`\r\n    \r\n        Path to file or directory.\r\n        \r\n* `website status`\r\n\r\n    Status of the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n\r\n* `website delete`\r\n\r\n    Deletes the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n        \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instance-id` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instance-id <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\nCommand-specific options can also be specified as environment variables. You just need to prefix the name of the option with `KINVEY_CLI_`. For example, `--no-prompt` becomes `KINVEY_CLI_NO_PROMPT` as environment variable.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console or through `kinvey flex create <service-name>`.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy your Node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n    \r\nAlongside the deploy you can set environment variables for your service. If both names and values are void of the equality sign (`=`) and comma (`,`), you can use the shorthand syntax:\r\n\r\n    kinvey flex deploy --set-vars \"MY_APP_A=valueA,MY_APP_B=valueB\" \r\n    \r\nOtherwise you need to specify environment variables in stringified JSON format:\r\n\r\n    kinvey flex deploy --set-vars \"{\\\"MY_APP_A\\\":[\\\"value 1\\\", \\\"value 2\\\"], \\\"MY_APP_B\\\":\\\"valueB\\\"}\"\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --service <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. It could be further processed using a tool like jq (command-line JSON processor). You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Flex Runtime Version Selection\r\n\r\nFlex projects that you deploy run server-side on the Flex Runtime which represents a preconfigured Node.js environment. When creating a project and later when running it, you can select a Node.js version for the project to run on using the `--runtime` option.\r\n\r\nThe runtime selection is limited to the major Node.js version. You can choose to run your project on the 6.x, 8.x, or 10.x branch but the minor and patch versions are always determined by the Flex Runtime.\r\n\r\nKinvey makes its best to provide the [latest LTS](https://github.com/nodejs/Release#release-schedule) versions of the 6.x, 8.x, and 10.x branches. The frequent updates mean that the version that you start developing on may be replaced by the time you are ready to deploy the final version of your project.\r\n\r\nAfter you deploy a Flex project, it remains on the same Node.js version until you upgrade it to a new major version or Kinvey decides to upgrade the project's runtime to a more recent minor and patch version because of security or efficiency reasons.\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\n### Caveats\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n### Support for Service Environments\r\n\r\nKinvey CLI version 4.1.0 introduces support for environments inside Flex services coinciding with the release of this feature on the backend. When upgrading from a previous Kinvey CLI version, have the following caveats in mind:\r\n\r\n- The `flex init` interactive command prompts for service environment selection in version 4.1.0 and later if the service contains multiple environments.\r\n- Node.js projects configured with `flex init` with a Kinvey CLI version predating 4.1.0 do not contain a service environment ID. Therefore:\r\n    - We recommend rerunning the `flex init` command on these projects.\r\n    - Flex commands targeting the current service will continue to work as long as the service has a single environment.\r\n    - Flex commands targeting the current service will error out if you create additional environments inside the service and don't include `--env`.\r\n- Flex commands specifying a particular service using `--service` must include `--env` if the service has multiple environments. You can omit `--env` if the service has a single environment.\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2017, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"0c1c535a460e4f5796ebf25d0bfdf71f875c5f31","_id":"kinvey-cli@4.4.0-alpha.0","_shasum":"6ea87336a16712dcb0cfdc04a04561a4147f9e21","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"6ea87336a16712dcb0cfdc04a04561a4147f9e21","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.4.0-alpha.0.tgz","integrity":"sha512-Rl9WnyL3AlWZCRVgx9PBwWxuAWcycYHR1dkDVoZBY4fYwQRDm1ymu+5pV6LXHEtcJibIJkIpJBrQsUdMDpgIjA==","fileCount":47,"unpackedSize":304543,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcE7saCRA9TVsSAnZWagAAijQP/33Dk1LCss8pBPJ/uAVF\nt7LEvvn8fWRt9c+1CZc647GKr52/9o/pTjkirjLE8c2Aw2FT0ccTC36wSMVB\nIaY/RD1k+ri5N7IkY1EIqGqHikhvtxGqNBf4CiwjY7CsZULX1Zkf0vXV4lNk\nSk6dq2kQctywMyEg9N71xi04Kwh6TGCuId2hJls141TYH9qTKRkh0kwWhLq0\nnl0xXWm9FNf9SXl8owbGOBJKm7IbqhaZqzh8lJreESdbwyOUBG48VMQGP6dn\nc46NjfA8hs3cjucoTWUR3EGCB4t81ACboxJBZdlmBFT+O8Sif3C36JEbonYx\nGrVGFApSCSeaEk6+1iU5LRB3FiA95SEgwWFivhCStxaNDqcI1t/ow4ODMmhG\nfV8S7O1JbAya92yozU8gESigUgWizTlGXW8c9bgxPSmOKYaOqf4lWGmqSl3d\n+seQj1JS2BKcMviyHnJpu61saJXxAf9trDnfQrBeomxn2H8Z+W+sqksU6mIj\nK1Unm3jEyyC6HEUpPiAZt4nho9HdLef+HFMa3CgK5jc7Rw6/g7b6abr7vtid\n2/cmrhyMLjkrX1YjLVfcWDJXRyQ9sp5XC+agAMo09FuDPvYGkA7p2e4GJKGr\nRsFgr3yqRRXcEkAX78FbA7/4opbZ1NZYxTeHKH+f4vGnrVjsFS3TSUSfKXnT\nNs73\r\n=Y90I\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0oFWiC5EfUW/FislA62ZoPP+vHA+uwvqTsFPb+SNuBAIgMEBbeNwwMcfwEJLrWM5xXYUqy+tqSz7IfbudGrlUIaw="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.4.0-alpha.0_1544796954152_0.8191851826582011"},"_hasShrinkwrap":false},"4.4.0-alpha.1":{"name":"kinvey-cli","version":"4.4.0-alpha.1","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.x.x"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT          |   INTEGRATION          |  NPM SECURITY       |\r\n|-------------------|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][5] | [![Build2][2]][5] |  [![Build3][3]][5] | [![Build4][4]][5] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/4\r\n[5]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting app environments\r\n* Creating, listing, and deleting collections\r\n\r\nContents:\r\n\r\n- [Installation](#installation)\r\n- [Usage](#usage)\r\n- [Commands](#commands)\r\n- [Global Options](#global-options)\r\n- [Environment Variables](#environment-variables)\r\n- [Getting Help](#getting-help)\r\n- [Getting Started](#getting-started)\r\n- [Managing Profiles](#managing-profiles)\r\n- [Authenticating One-time Commands](#authenticating-one-time-commands)\r\n- [Precedence of Configuration Options](#precedence-of-configuration-options)\r\n- [Output Format](#output-format)\r\n- [Flex Runtime Version Selection](#flex-runtime-version-selection)\r\n- [Proxy Settings](#proxy-settings)\r\n- [Troubleshooting](#troubleshooting)\r\n- [Changelog](#changelog)\r\n- [License](#license)\r\n\r\n\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password and for two-factor authentication token if needed.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n    * `--org <organization>`\r\n           \r\n        Specifies a Kinvey organization by ID or name.\r\n          \r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application. You can specify an organization ID or name if you want to create the app within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n              \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `appenv create <name>`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv show`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv delete`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex service and service environment combination through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name along with a service environment. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n        Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n        Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n       \r\n    * `--env <service environment name>`\r\n    \r\n        Specifies a name for the default service environment that will be created with the service. The name will be set to Development if you omit this option.\r\n        \r\n    * `--vars, --set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n        \r\n    * `--runtime <node6|node8|node10>`\r\n    \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n        \r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service and service environment combination, which is the one you initiated last on the current profile. To use a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n    \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n    \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n    \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n    \r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current Flex service and service environment combination, which is the one you initiated last on the current profile. To get the status of a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n       \r\n* `flex show`\r\n   \r\n   Shows info about a service environment.\r\n            \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n         \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex list`\r\n\r\n   Lists all Flex services for a domain (app or organization), excluding external Flex services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n        Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n        App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays logs for the current Flex service environment. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex update`\r\n\r\n    Updates environment variables and/or runtime environment of the current Flex service environment, which is the one you initiated last on the current profile. To specify a different service, use `--service`. The command causes restart/rebuild of the service.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n        \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--set-vars <environment variables>`\r\n        \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current Flex service environment, which is the one you initiated last on the current profile. To recycle a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex delete`\r\n\r\n    Deletes the current Flex service, including all service environments inside it. The current service is the one you initiated last on the current profile. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `website create <name>`\r\n\r\n    Create a website. You can specify an organization ID or name if you want to create the website within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n                \r\n        Specifies a Kinvey organization by ID or name.\r\n    \r\n* `website list`\r\n\r\n    List websites.\r\n    \r\n* `website show`\r\n\r\n    Shows info for the specified website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n\r\n* `website deploy`\r\n\r\n    Deploy your website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n        \r\n    * `--path <path>`\r\n    \r\n        Path to file or directory.\r\n        \r\n* `website status`\r\n\r\n    Status of the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n\r\n* `website delete`\r\n\r\n    Deletes the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n        \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instance-id` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instance-id <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\nCommand-specific options can also be specified as environment variables. You just need to prefix the name of the option with `KINVEY_CLI_`. For example, `--no-prompt` becomes `KINVEY_CLI_NO_PROMPT` as environment variable.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console or through `kinvey flex create <service-name>`.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy your Node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n    \r\nAlongside the deploy you can set environment variables for your service. If both names and values are void of the equality sign (`=`) and comma (`,`), you can use the shorthand syntax:\r\n\r\n    kinvey flex deploy --set-vars \"MY_APP_A=valueA,MY_APP_B=valueB\" \r\n    \r\nOtherwise you need to specify environment variables in stringified JSON format:\r\n\r\n    kinvey flex deploy --set-vars \"{\\\"MY_APP_A\\\":[\\\"value 1\\\", \\\"value 2\\\"], \\\"MY_APP_B\\\":\\\"valueB\\\"}\"\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --service <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. It could be further processed using a tool like jq (command-line JSON processor). You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Flex Runtime Version Selection\r\n\r\nFlex projects that you deploy run server-side on the Flex Runtime which represents a preconfigured Node.js environment. When creating a project and later when running it, you can select a Node.js version for the project to run on using the `--runtime` option.\r\n\r\nThe runtime selection is limited to the major Node.js version. You can choose to run your project on the 6.x, 8.x, or 10.x branch but the minor and patch versions are always determined by the Flex Runtime.\r\n\r\nKinvey makes its best to provide the [latest LTS](https://github.com/nodejs/Release#release-schedule) versions of the 6.x, 8.x, and 10.x branches. The frequent updates mean that the version that you start developing on may be replaced by the time you are ready to deploy the final version of your project.\r\n\r\nAfter you deploy a Flex project, it remains on the same Node.js version until you upgrade it to a new major version or Kinvey decides to upgrade the project's runtime to a more recent minor and patch version because of security or efficiency reasons.\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\n### Caveats\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n### Support for Service Environments\r\n\r\nKinvey CLI version 4.1.0 introduces support for environments inside Flex services coinciding with the release of this feature on the backend. When upgrading from a previous Kinvey CLI version, have the following caveats in mind:\r\n\r\n- The `flex init` interactive command prompts for service environment selection in version 4.1.0 and later if the service contains multiple environments.\r\n- Node.js projects configured with `flex init` with a Kinvey CLI version predating 4.1.0 do not contain a service environment ID. Therefore:\r\n    - We recommend rerunning the `flex init` command on these projects.\r\n    - Flex commands targeting the current service will continue to work as long as the service has a single environment.\r\n    - Flex commands targeting the current service will error out if you create additional environments inside the service and don't include `--env`.\r\n- Flex commands specifying a particular service using `--service` must include `--env` if the service has multiple environments. You can omit `--env` if the service has a single environment.\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2018, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"9b93f3c4fb86e90f4754838819f93e11b6285feb","_id":"kinvey-cli@4.4.0-alpha.1","_shasum":"d54a49b2b82b2710345e87715c57fddbd50eebf2","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"d54a49b2b82b2710345e87715c57fddbd50eebf2","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.4.0-alpha.1.tgz","integrity":"sha512-+3m5J6NGDI33F+tTSVvcle/21xG/HYRVXb3bkN/xMAQegRd2tNFimlaQFjIJnJyviPYPGNsTEZzzMrZ40Cf0Mg==","fileCount":48,"unpackedSize":306578,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWAd5CRA9TVsSAnZWagAACs4P/00PG8NCGvlBvxOTWFe9\nCVhrcA5j7sK8TdQfGNxfXH46pzQW3bB1RM4Yv/MwqKCuVdMfKk2BCwYBC+LO\nmQMyJEcwgg1P7Q30pV2pgyeYJMYmHJSbq41zgEFiYtJ3/BmcQ8lZEJF6oNjZ\nOuVcqiYNKt3pA6Ic1RawuY5TpeRZBMp3iAxQD7u12yKGrfXrou/HHv28oOCM\nYP4QIuQfFqJb9E3eZC7v0pe5ZVWjuN8/nIToJLQ2dAr1lIjIDTwpgirIzyGe\nfXc/UKH57w3GTEPpN/gPQQECrLeqkbQCxtZCylKwiaPEvgBmWxXIhthI8Ugl\ni6UWTXPhhDNuOvvUgKpO4/v9FY0GDh6tFVS5ebbFmtbP7+gUCm58JGYrj4s4\nflF5MoNZvDliXvs4gu5JpcJxgX8wa1sOSFp6XJn3GgQwCOAZy1wkz1KIDrxA\ncCtpNIusdhqZqtYxjTV1bB7iR6uFs2JYp2IGtgagEuhigd1b2A9FylXsupK6\nEsxFcKh+r15W9ScvstUWQSy7SnGcH18t0ESc/h77SmQugyH33BqneyYuWaek\nGJgpLS16DvSDcPlwmpEyp92wOJ+LjmYTQwppwt57IAa+FV6o0/0CzQhc/CqQ\nEuYzJ0JXmKglsQKx53yM8gTaS2bWz3AqcKMKafAWRkSHPdhk+H4d0ZDj3jbd\nXluQ\r\n=zP03\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB9IfA4PoM20LCAWC21yH3/9LRlV/SAN9Jtl+favbI5lAiEArlNbWurJunqkEO3aHUbJiDV/kvo+Bg5Ff03+3Q2P1Cw="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.4.0-alpha.1_1549272953033_0.9422807325362073"},"_hasShrinkwrap":false},"4.1.2":{"name":"kinvey-cli","version":"4.1.2","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"4282f36200f409741eb5fdf3894f301277c65697","_id":"kinvey-cli@4.1.2","_shasum":"8414b34c8a2576e6800b2adeda9063a8a952cfd5","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"8414b34c8a2576e6800b2adeda9063a8a952cfd5","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.1.2.tgz","integrity":"sha512-arb/w2ESffpaQrqyoi5Pg6dBrNPEmGW6h1go6jvC+aPk+pj3wXSXgHlBCHLqYR9V/C3kwr4cDLmQiwkKGlLJ8g==","fileCount":44,"unpackedSize":286163,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcflcrCRA9TVsSAnZWagAA6EsQAIkurVby7SZbPaPtjNvr\nUtEwYKxdaNbvHJ5y+4Uug+4dcMXOY0iToJnd7cuJakqcf95ZDekZ6PNFMj7w\nklWwh8gfUTaUyERPzoxeDPSrIHQ9nO0IvvthVlNlS9DBFsUzwsmLmZ0iBRIR\nZ1PHULqBlSibJLlsqzhXTNZlo39xWwylnyLTY3b/0rUrAs7yj96zxdTpWdUo\nZfD3pj6+MycP5pbqOMkNqMLdQ/6RT1FP23Ws7qvH3imf08vtTUg6PlaZKgdI\nddo7nMC+EfNlca2IBrDnnXh0Uf2dmO27CYIZ5DafBC38d1tH8LrasqiXHT2P\nDvPeDFG3noARbSFmOrdBCR5MdqVhy72r30pLZ8EUI7BLYHM/FDJ7cy1wVe9h\nt4QWcoH8c5u/hKtqQJidooDvJLennXNNK7FoS+uT0BU3OfC+CrnYGp/p2w5v\nZhoItPly5gHFBwz8bfDTEzmm3+YenKfjXAhV+JfozR+OFQ5hDRt4MzpUEyL5\nK9lKq7u+tKoJ92h0gV2KNg4TY/kPsijb0a8w3c7F7VWI8QlYGyJUTLR40doZ\nyTVK5ItiJeUbl6iJYcCf8m0DUwDbsfedETm0L92XX+YT9jysjwGI4GpE1FfO\n79HLjWZ4jdGAgCuSG30A7ScIt/GxZtmeBAt2/SEbp6CxnCSRK+ZLcu+kSpeq\n2CuT\r\n=N2KM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDpPFzazsRaoQ/B4Dhgv05pN8gs8bxgek97rNMvmXV1UgIgDMdpfjNBXJW8x19OlSt2zJTBeyHcVVMBFhO8zr7us38="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.1.2_1551783722549_0.2061462904730227"},"_hasShrinkwrap":false},"4.4.0-alpha.2":{"name":"kinvey-cli","version":"4.4.0-alpha.2","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT          |   INTEGRATION          |  NPM SECURITY       |\r\n|-------------------|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][5] | [![Build2][2]][5] |  [![Build3][3]][5] | [![Build4][4]][5] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/4\r\n[5]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting app environments\r\n* Creating, listing, and deleting collections\r\n\r\nContents:\r\n\r\n- [Installation](#installation)\r\n- [Usage](#usage)\r\n- [Commands](#commands)\r\n- [Global Options](#global-options)\r\n- [Environment Variables](#environment-variables)\r\n- [Getting Help](#getting-help)\r\n- [Getting Started](#getting-started)\r\n- [Managing Profiles](#managing-profiles)\r\n- [Authenticating One-time Commands](#authenticating-one-time-commands)\r\n- [Precedence of Configuration Options](#precedence-of-configuration-options)\r\n- [Output Format](#output-format)\r\n- [Flex Runtime Version Selection](#flex-runtime-version-selection)\r\n- [Proxy Settings](#proxy-settings)\r\n- [Troubleshooting](#troubleshooting)\r\n- [Changelog](#changelog)\r\n- [License](#license)\r\n\r\n\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli@ea-websites\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password and for two-factor authentication token if needed.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n    * `--org <organization>`\r\n           \r\n        Specifies a Kinvey organization by ID or name.\r\n          \r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application. You can specify an organization ID or name if you want to create the app within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n              \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `appenv create <name>`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv show`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv delete`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex service and service environment combination through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name along with a service environment. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n        Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n        Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n       \r\n    * `--env <service environment name>`\r\n    \r\n        Specifies a name for the default service environment that will be created with the service. The name will be set to Development if you omit this option.\r\n        \r\n    * `--vars, --set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n        \r\n    * `--runtime <node6|node8|node10>`\r\n    \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n        \r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service and service environment combination, which is the one you initiated last on the current profile. To use a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n    \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n    \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n    \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n    \r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current Flex service and service environment combination, which is the one you initiated last on the current profile. To get the status of a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n       \r\n* `flex show`\r\n   \r\n   Shows info about a service environment.\r\n            \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n         \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex list`\r\n\r\n   Lists all Flex services for a domain (app or organization), excluding external Flex services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n        Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n        App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays logs for the current Flex service environment. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex update`\r\n\r\n    Updates environment variables and/or runtime environment of the current Flex service environment, which is the one you initiated last on the current profile. To specify a different service, use `--service`. The command causes restart/rebuild of the service.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n        \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--set-vars <environment variables>`\r\n        \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current Flex service environment, which is the one you initiated last on the current profile. To recycle a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex delete`\r\n\r\n    Deletes the current Flex service, including all service environments inside it. The current service is the one you initiated last on the current profile. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `website create <name>`\r\n\r\n    Create a website. You can specify an organization ID or name if you want to create the website within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n                \r\n        Specifies a Kinvey organization by ID or name.\r\n    \r\n* `website list`\r\n\r\n    List websites.\r\n    \r\n* `website show`\r\n\r\n    Shows info for the specified website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n\r\n* `website deploy`\r\n\r\n    Deploy your website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n        \r\n    * `--path <path>`\r\n    \r\n        Path to file or directory. Required.\r\n  \r\n* `website publish`\r\n\r\n    Publish your website - enable public access or change domain name.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n      \r\n    * `--domainName <domain-name>`\r\n            \r\n        Domain name. Required.\r\n        \r\n* `website status`\r\n\r\n    Status of the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n\r\n* `website unpublish`\r\n\r\n    Unpublish your website - disable public access.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n\r\n* `website delete`\r\n\r\n    Deletes the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n        \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instance-id` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instance-id <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\nCommand-specific options can also be specified as environment variables. You just need to prefix the name of the option with `KINVEY_CLI_`. For example, `--no-prompt` becomes `KINVEY_CLI_NO_PROMPT` as environment variable.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console or through `kinvey flex create <service-name>`.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy your Node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n    \r\nAlongside the deploy you can set environment variables for your service. If both names and values are void of the equality sign (`=`) and comma (`,`), you can use the shorthand syntax:\r\n\r\n    kinvey flex deploy --set-vars \"MY_APP_A=valueA,MY_APP_B=valueB\" \r\n    \r\nOtherwise you need to specify environment variables in stringified JSON format:\r\n\r\n    kinvey flex deploy --set-vars \"{\\\"MY_APP_A\\\":[\\\"value 1\\\", \\\"value 2\\\"], \\\"MY_APP_B\\\":\\\"valueB\\\"}\"\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --service <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. It could be further processed using a tool like jq (command-line JSON processor). You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Flex Runtime Version Selection\r\n\r\nFlex projects that you deploy run server-side on the Flex Runtime which represents a preconfigured Node.js environment. When creating a project and later when running it, you can select a Node.js version for the project to run on using the `--runtime` option.\r\n\r\nThe runtime selection is limited to the major Node.js version. You can choose to run your project on the 6.x, 8.x, or 10.x branch but the minor and patch versions are always determined by the Flex Runtime.\r\n\r\nKinvey makes its best to provide the [latest LTS](https://github.com/nodejs/Release#release-schedule) versions of the 6.x, 8.x, and 10.x branches. The frequent updates mean that the version that you start developing on may be replaced by the time you are ready to deploy the final version of your project.\r\n\r\nAfter you deploy a Flex project, it remains on the same Node.js version until you upgrade it to a new major version or Kinvey decides to upgrade the project's runtime to a more recent minor and patch version because of security or efficiency reasons.\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\n### Caveats\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n### Support for Service Environments\r\n\r\nKinvey CLI version 4.1.0 introduces support for environments inside Flex services coinciding with the release of this feature on the backend. When upgrading from a previous Kinvey CLI version, have the following caveats in mind:\r\n\r\n- The `flex init` interactive command prompts for service environment selection in version 4.1.0 and later if the service contains multiple environments.\r\n- Node.js projects configured with `flex init` with a Kinvey CLI version predating 4.1.0 do not contain a service environment ID. Therefore:\r\n    - We recommend rerunning the `flex init` command on these projects.\r\n    - Flex commands targeting the current service will continue to work as long as the service has a single environment.\r\n    - Flex commands targeting the current service will error out if you create additional environments inside the service and don't include `--env`.\r\n- Flex commands specifying a particular service using `--service` must include `--env` if the service has multiple environments. You can omit `--env` if the service has a single environment.\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2018, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"d668a0d5f7d3c0e426868f20dec03935bf5b8099","_id":"kinvey-cli@4.4.0-alpha.2","_shasum":"b604fb89955b3565b1fd327a1f18490dfdae3569","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"b604fb89955b3565b1fd327a1f18490dfdae3569","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.4.0-alpha.2.tgz","integrity":"sha512-nafEVprPefdf1oe0dTBU6cohjdl0Z2Llz1wmfXMPPW60/NaXRX+EhkQeeAJ2eNN2i5l99JcSSmIFmOMxabz/HA==","fileCount":48,"unpackedSize":310752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcfly1CRA9TVsSAnZWagAA57wP/3XemM6fF6xOwuGm6nsc\nlnlwqCPMTt4jsI5c7kwc696Fr2yTXYduRsp71nvQGSbBaYMaXei9Ozws5K7G\n4nzlTGljc0kA2hMx6Q/MuzAOLyZf5bInTUxpJDo1jnjPBnOlPT9DeFTNQf8x\nOkyWyk/JIhfo+6IOqNKXE2vEXk9mW2EvfyHkcq3WKYHwh0VrBTC3fvmAvO2j\nkr5f0O1a7pmg2yA+4tLB6WhMnxEtAPgWD7JGp8eYhucYQPiv59FUi/wRmo1S\nayoq8A5048T9PzHyqgv3ftQTqv56rU3M7O+gsf7xCN0fXjhLl88KlTJ1ym8q\n8hEBH6FjKrQxcKnF/Jeg88bEJDaVVPJX7yjS8BPvY/RSSbJ3V5Q3BzGCygeF\nrC7EKYUWsYXslYz5qi1cz6s6QkwXTfWYf3IQuRkpIS3dzQCWDFltQMSRnoVd\nFkmpo5rdk/1WUEWq/W59Et7UMP/qu5XvYN5be29nYLItATKrlMODTyFpoxoF\nRqYx2jiTnIZ0KQJ8xlzE18Ib4aGMo4w49Rd/GIr/Yj++vQWjxBXqT5j+kJI3\nzYOFh0NNncDHTSl3fmoSTABeyOhRGupb592yuOC3eryTDzIvAtBWEldq7b9j\nPTfVRyiyHCVEx3qrY2cE/ulVCmBPWXH9OvURgXJqCXS09m9Z9am7KBS4WA8K\nn7cW\r\n=Ec3B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC6sI2WjnRX/P6S4HJTZODpjtjD1VMD/9AmRyjllcX1ZAIgbzK8wv1XYkKIVlx+zPVohUG8n03Qh9oxMPmkQkH8Fi8="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.4.0-alpha.2_1551785140454_0.1309732576577476"},"_hasShrinkwrap":false},"4.1.3":{"name":"kinvey-cli","version":"4.1.3","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"826fea01d739389d93fa7c0461744267d8ca4002","_id":"kinvey-cli@4.1.3","_shasum":"d7c9237f99c47b2e091ad8c19831aabd8cfd8135","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"d7c9237f99c47b2e091ad8c19831aabd8cfd8135","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.1.3.tgz","integrity":"sha512-KQeI6D7fIT18wNFIO2U1jEVhKeIOov6phGrZcqw3V4/oQqt1xTWoUU9tz/xtRY4cDoSv9p6zPQGdGZ9BBODl/w==","fileCount":44,"unpackedSize":286500,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcklpCCRA9TVsSAnZWagAATs8P/3xNYNnNWGxoEIOdi0/V\nsTrr2/GbaoAx8p+biLATeQDLgmYSO0qT50oJgjQimTf+lYstubOD1OfXwfyl\nJCOwiqaFs/dz8h1VDc5MQvfZFrEJcbcOA2qZnEmCVo1dZfTg5mKMCzN4vwXB\ne2XARAdRMVkz/gQksZTgBEuHF1PSnVF1Kew7GUTyK3xmw7R5/uhZT7MNI0Ek\nfPbj65ioeJye6wIKfRjfLAlnO5fvdbmRZ6qqj4hvwiF8dlHFvDN1adG2AjFx\ntIWzxV7Z0KvfS7CuI1RM6NLo0TD8fBb50wMyBHehXsPUuqEOfonQg4R/RLGQ\nKGR6Rn7gZbAvEXopyKApNQgMyBIejih7ocHeZQ3Dsa0m6bryjawU6OtbJScI\nbIc63O7xAqIX56L2mtzXFY7Go9B6r/EyWAMNmDzXar8mVm13gI8zEaC8NeJd\nkTE159AE4xEb7Yv67AMtxi1OyHzL+MgZ5CInMq42WY/HFV2XMYQmuF6BYlAE\ng2Q1AQrEwXd22atgfBwWvri6q5ehUtSZvJYvPdJ7YzEJFUk3TjDy+ljTv4tV\nCeeVk3SKWS88yfHY8uTpMV+zdCJz4GTpuNaz1WooaJvk7AlUQgjOdZQUulKs\nLEouqtty5IP1LLi/8y3Wf1Nh6UOAMlCRoOo/yhjgvXO7L7ad/Gqy2d7seU+0\nns6d\r\n=8kTS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDa3bD39qRltM7r2ufVHKxF05NumOE+nnEmSNzfsl+f1wIhAImfdR3Nk8uTlHOGorJdPMuXrxpdeyy+KzT+7XpeRaIz"}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.1.3_1553095233519_0.9891267911640136"},"_hasShrinkwrap":false},"4.4.0-alpha.3":{"name":"kinvey-cli","version":"4.4.0-alpha.3","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.omitby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT          |   INTEGRATION          |  NPM SECURITY       |\r\n|-------------------|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][5] | [![Build2][2]][5] |  [![Build3][3]][5] | [![Build4][4]][5] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/4\r\n[5]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Deploying and managing websites\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting app environments\r\n* Creating, listing, and deleting collections\r\n\r\nContents:\r\n\r\n- [Installation](#installation)\r\n- [Usage](#usage)\r\n- [Commands](#commands)\r\n- [Global Options](#global-options)\r\n- [Environment Variables](#environment-variables)\r\n- [Getting Help](#getting-help)\r\n- [Getting Started](#getting-started)\r\n- [Managing Profiles](#managing-profiles)\r\n- [Authenticating One-time Commands](#authenticating-one-time-commands)\r\n- [Precedence of Configuration Options](#precedence-of-configuration-options)\r\n- [Output Format](#output-format)\r\n- [Flex Runtime Version Selection](#flex-runtime-version-selection)\r\n- [Proxy Settings](#proxy-settings)\r\n- [Troubleshooting](#troubleshooting)\r\n- [Changelog](#changelog)\r\n- [License](#license)\r\n\r\n\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli@ea-websites\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password and for two-factor authentication token if needed.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n    * `--org <organization>`\r\n           \r\n        Specifies a Kinvey organization by ID or name.\r\n          \r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application. You can specify an organization ID or name if you want to create the app within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n              \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `appenv create <name>`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv show`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv delete`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex service and service environment combination through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name along with a service environment. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n        Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n        Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n       \r\n    * `--env <service environment name>`\r\n    \r\n        Specifies a name for the default service environment that will be created with the service. The name will be set to Development if you omit this option.\r\n        \r\n    * `--vars, --set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n        \r\n    * `--runtime <node6|node8|node10>`\r\n    \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n        \r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service and service environment combination, which is the one you initiated last on the current profile. To use a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n    \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n    \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n    \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n    \r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current Flex service and service environment combination, which is the one you initiated last on the current profile. To get the status of a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n       \r\n* `flex show`\r\n   \r\n   Shows info about a service environment.\r\n            \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n         \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex list`\r\n\r\n   Lists all Flex services for a domain (app or organization), excluding external Flex services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n        Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n        App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays logs for the current Flex service environment. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex update`\r\n\r\n    Updates environment variables and/or runtime environment of the current Flex service environment, which is the one you initiated last on the current profile. To specify a different service, use `--service`. The command causes restart/rebuild of the service.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n        \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--set-vars <environment variables>`\r\n        \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current Flex service environment, which is the one you initiated last on the current profile. To recycle a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex delete`\r\n\r\n    Deletes the current Flex service, including all service environments inside it. The current service is the one you initiated last on the current profile. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `website create <name>`\r\n\r\n    Create a website. You can specify an organization ID or name if you want to create the website within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n                \r\n        Specifies a Kinvey organization by ID or name.\r\n        \r\n    * `--historyApiRouting`\r\n    \r\n        Enables server support for History API routing.\r\n        \r\n    * `--indexPage <index-page>`\r\n    \r\n        Specifies index page.\r\n        \r\n    * `--errorPage <error-page>`\r\n        \r\n        Specifies error page. Not allowed if `--historyApiRouting` is also specified.\r\n    \r\n* `website list`\r\n\r\n    List websites.\r\n    \r\n* `website show`\r\n\r\n    Shows info for the specified website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n\r\n* `website deploy`\r\n\r\n    Deploy your website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n        \r\n    * `--path <path>`\r\n    \r\n        Path to file or directory. Required.\r\n  \r\n* `website publish`\r\n\r\n    Publish your website - enable public access or change domain name.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n      \r\n    * `--domainName <domain-name>`\r\n            \r\n        Domain name. Required.\r\n        \r\n* `website status`\r\n\r\n    Status of the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n\r\n* `website unpublish`\r\n\r\n    Unpublish your website - disable public access.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n\r\n* `website delete`\r\n\r\n    Deletes the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n        \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instance-id` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instance-id <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\nCommand-specific options can also be specified as environment variables. You just need to prefix the name of the option with `KINVEY_CLI_`. For example, `--no-prompt` becomes `KINVEY_CLI_NO_PROMPT` as environment variable.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console or through `kinvey flex create <service-name>`.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy your Node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n    \r\nAlongside the deploy you can set environment variables for your service. If both names and values are void of the equality sign (`=`) and comma (`,`), you can use the shorthand syntax:\r\n\r\n    kinvey flex deploy --set-vars \"MY_APP_A=valueA,MY_APP_B=valueB\" \r\n    \r\nOtherwise you need to specify environment variables in stringified JSON format:\r\n\r\n    kinvey flex deploy --set-vars \"{\\\"MY_APP_A\\\":[\\\"value 1\\\", \\\"value 2\\\"], \\\"MY_APP_B\\\":\\\"valueB\\\"}\"\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --service <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. It could be further processed using a tool like jq (command-line JSON processor). You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Flex Runtime Version Selection\r\n\r\nFlex projects that you deploy run server-side on the Flex Runtime which represents a preconfigured Node.js environment. When creating a project and later when running it, you can select a Node.js version for the project to run on using the `--runtime` option.\r\n\r\nThe runtime selection is limited to the major Node.js version. You can choose to run your project on the 6.x, 8.x, or 10.x branch but the minor and patch versions are always determined by the Flex Runtime.\r\n\r\nKinvey makes its best to provide the [latest LTS](https://github.com/nodejs/Release#release-schedule) versions of the 6.x, 8.x, and 10.x branches. The frequent updates mean that the version that you start developing on may be replaced by the time you are ready to deploy the final version of your project.\r\n\r\nAfter you deploy a Flex project, it remains on the same Node.js version until you upgrade it to a new major version or Kinvey decides to upgrade the project's runtime to a more recent minor and patch version because of security or efficiency reasons.\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\n### Caveats\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n### Support for Service Environments\r\n\r\nKinvey CLI version 4.1.0 introduces support for environments inside Flex services coinciding with the release of this feature on the backend. When upgrading from a previous Kinvey CLI version, have the following caveats in mind:\r\n\r\n- The `flex init` interactive command prompts for service environment selection in version 4.1.0 and later if the service contains multiple environments.\r\n- Node.js projects configured with `flex init` with a Kinvey CLI version predating 4.1.0 do not contain a service environment ID. Therefore:\r\n    - We recommend rerunning the `flex init` command on these projects.\r\n    - Flex commands targeting the current service will continue to work as long as the service has a single environment.\r\n    - Flex commands targeting the current service will error out if you create additional environments inside the service and don't include `--env`.\r\n- Flex commands specifying a particular service using `--service` must include `--env` if the service has multiple environments. You can omit `--env` if the service has a single environment.\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2018, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"a0b009e09bd3326a02033a9812b3637e66024990","_id":"kinvey-cli@4.4.0-alpha.3","_shasum":"016bd885895e6007381b61b3dd5829356f73c18f","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"016bd885895e6007381b61b3dd5829356f73c18f","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.4.0-alpha.3.tgz","integrity":"sha512-ykffFtciDkYRkDvz9XSfdcNXjGRDKXVIRREC73835lx35JdbnIuPrtWLKijH4Wq2fS6J2Rlm9O7/eOSEMyGNwg==","fileCount":48,"unpackedSize":313502,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcsHdiCRA9TVsSAnZWagAA2KwP/1n5zppEPWGTVqrcWYY8\n+MmUbv3lD+DCboaXrHo8zvMs91n5cgN3nmVVSv4BrDrguFMfD7BGdrB3notI\nLuMyrFqT2rkJNAps0chMm+SdAPW8Hlyiua0CDwmDx8SWnJkA5YpaG6/mkT6H\noPkceF+43cBQBR/AkgeuCD535QVHwWQ1rVj5nwxbdyI+N2+OyqI0IgIip+Z6\nYMvvu+BYEMIcl30UK58pSjgkWdKDFhorjAEQKLmKvUkDsPS9GSwZRyD2DTEj\np3d2SGnE0+OwnAz/sjAoZqxlMNTvAJTUwfbLDgUOg8w4Ak9JUFGj3v6cZHY4\n6ZKG43ZaTZ8fCb6CXIhRrM1L1UVaB+dfQn3sg1H/VX4E1p1phOWt+UURB/jv\nQq20c0v6H529A+vFtyTdNZ+cBpr+PzEIuBsfyNsXP0lxwChtkw2lBXbiPs7G\nN21AbyJ+Lm2WiMQ9Jp2xTwfUauS0j+ZlkcVLot8FxZpFkDcrVxuhNoCdVfxQ\nPDjy6rhcjZbrxUZ5/LVgtjpzqFJPQE9gwpw2CvMIJXEtsrGx7H0ouKECiLgE\nbNpvnsrz2MJCGnq3iJcocGwkef4BZwD3B+CxGW0naudgVFaiYN/0qqkQUX34\nCq9k1Y14Iz2khVxe5Cy6sQ/CLC9sNksxPA5dSXckt1YtyiZrp+4hbfPic7pf\nljel\r\n=oeuh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDq/Hc9KmO6Qyp4ZDJ5u0vBCHxI1xjjm7GJlimM4jbdeAiEAsH/NBagd4deWtF210kigizD+GMvK2skIGDwEFbP8M7w="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.4.0-alpha.3_1555068769422_0.7687964799377023"},"_hasShrinkwrap":false},"4.4.0-alpha.4":{"name":"kinvey-cli","version":"4.4.0-alpha.4","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.omitby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT          |   INTEGRATION          |  NPM SECURITY       |\r\n|-------------------|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][5] | [![Build2][2]][5] |  [![Build3][3]][5] | [![Build4][4]][5] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/4\r\n[5]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Deploying and managing websites\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting app environments\r\n* Creating, listing, and deleting collections\r\n\r\nContents:\r\n\r\n- [Installation](#installation)\r\n- [Usage](#usage)\r\n- [Commands](#commands)\r\n- [Global Options](#global-options)\r\n- [Environment Variables](#environment-variables)\r\n- [Getting Help](#getting-help)\r\n- [Getting Started](#getting-started)\r\n- [Managing Profiles](#managing-profiles)\r\n- [Authenticating One-time Commands](#authenticating-one-time-commands)\r\n- [Precedence of Configuration Options](#precedence-of-configuration-options)\r\n- [Output Format](#output-format)\r\n- [Flex Runtime Version Selection](#flex-runtime-version-selection)\r\n- [Proxy Settings](#proxy-settings)\r\n- [Troubleshooting](#troubleshooting)\r\n- [Changelog](#changelog)\r\n- [License](#license)\r\n\r\n\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli@ea-websites\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password and for two-factor authentication token if needed.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n    * `--org <organization>`\r\n           \r\n        Specifies a Kinvey organization by ID or name.\r\n          \r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `app create <name>`\r\n\r\n    Creates an application. You can specify an organization ID or name if you want to create the app within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app delete`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n              \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `appenv create <name>`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv show`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv delete`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex service and service environment combination through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name along with a service environment. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n        Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n        Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n       \r\n    * `--env <service environment name>`\r\n    \r\n        Specifies a name for the default service environment that will be created with the service. The name will be set to Development if you omit this option.\r\n        \r\n    * `--vars, --set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n        \r\n    * `--runtime <node6|node8|node10>`\r\n    \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n        \r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service and service environment combination, which is the one you initiated last on the current profile. To use a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n    \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n    \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n    \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n    \r\n* `flex job [id]`\r\n\r\n   Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command.\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current Flex service and service environment combination, which is the one you initiated last on the current profile. To get the status of a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n       \r\n* `flex show`\r\n   \r\n   Shows info about a service environment.\r\n            \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n         \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex list`\r\n\r\n   Lists all Flex services for a domain (app or organization), excluding external Flex services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n        Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n        App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays logs for the current Flex service environment. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex update`\r\n\r\n    Updates environment variables and/or runtime environment of the current Flex service environment, which is the one you initiated last on the current profile. To specify a different service, use `--service`. The command causes restart/rebuild of the service.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n        \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--set-vars <environment variables>`\r\n        \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--runtime <node6|node8|node10>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection).\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current Flex service environment, which is the one you initiated last on the current profile. To recycle a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex delete`\r\n\r\n    Deletes the current Flex service, including all service environments inside it. The current service is the one you initiated last on the current profile. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `website create <name>`\r\n\r\n    Create a website. You need to specify an organization or an application.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n    * `--org <organization>`\r\n                \r\n        Specifies a Kinvey organization by ID or name.\r\n        \r\n    * `--historyApiRouting`\r\n    \r\n        Enables server support for History API routing.\r\n        \r\n    * `--indexPage <index-page>`\r\n    \r\n        Specifies index page.\r\n        \r\n    * `--errorPage <error-page>`\r\n        \r\n        Specifies error page. Not allowed if `--historyApiRouting` is also specified.\r\n    \r\n* `website list`\r\n\r\n    List websites.\r\n    \r\n* `website show`\r\n\r\n    Shows info for the specified website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n\r\n* `website deploy`\r\n\r\n    Deploy your website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n        \r\n    * `--path <path>`\r\n    \r\n        Path to file or directory. Required.\r\n  \r\n* `website publish`\r\n\r\n    Publish your website - enable public access or change domain name.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n      \r\n    * `--domainName <domain-name>`\r\n            \r\n        Domain name. Required.\r\n        \r\n* `website status`\r\n\r\n    Status of the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n\r\n* `website unpublish`\r\n\r\n    Unpublish your website - disable public access.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n\r\n* `website delete`\r\n\r\n    Deletes the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n        \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instance-id` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instance-id <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\nCommand-specific options can also be specified as environment variables. You just need to prefix the name of the option with `KINVEY_CLI_`. For example, `--no-prompt` becomes `KINVEY_CLI_NO_PROMPT` as environment variable.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console or through `kinvey flex create <service-name>`.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy your Node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n    \r\nAlongside the deploy you can set environment variables for your service. If both names and values are void of the equality sign (`=`) and comma (`,`), you can use the shorthand syntax:\r\n\r\n    kinvey flex deploy --set-vars \"MY_APP_A=valueA,MY_APP_B=valueB\" \r\n    \r\nOtherwise you need to specify environment variables in stringified JSON format:\r\n\r\n    kinvey flex deploy --set-vars \"{\\\"MY_APP_A\\\":[\\\"value 1\\\", \\\"value 2\\\"], \\\"MY_APP_B\\\":\\\"valueB\\\"}\"\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --service <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. It could be further processed using a tool like jq (command-line JSON processor). You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Flex Runtime Version Selection\r\n\r\nFlex projects that you deploy run server-side on the Flex Runtime which represents a preconfigured Node.js environment. When creating a project and later when running it, you can select a Node.js version for the project to run on using the `--runtime` option.\r\n\r\nThe runtime selection is limited to the major Node.js version. You can choose to run your project on the 6.x, 8.x, or 10.x branch but the minor and patch versions are always determined by the Flex Runtime.\r\n\r\nKinvey makes its best to provide the [latest LTS](https://github.com/nodejs/Release#release-schedule) versions of the 6.x, 8.x, and 10.x branches. The frequent updates mean that the version that you start developing on may be replaced by the time you are ready to deploy the final version of your project.\r\n\r\nAfter you deploy a Flex project, it remains on the same Node.js version until you upgrade it to a new major version or Kinvey decides to upgrade the project's runtime to a more recent minor and patch version because of security or efficiency reasons.\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\n### Caveats\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n### Support for Service Environments\r\n\r\nKinvey CLI version 4.1.0 introduces support for environments inside Flex services coinciding with the release of this feature on the backend. When upgrading from a previous Kinvey CLI version, have the following caveats in mind:\r\n\r\n- The `flex init` interactive command prompts for service environment selection in version 4.1.0 and later if the service contains multiple environments.\r\n- Node.js projects configured with `flex init` with a Kinvey CLI version predating 4.1.0 do not contain a service environment ID. Therefore:\r\n    - We recommend rerunning the `flex init` command on these projects.\r\n    - Flex commands targeting the current service will continue to work as long as the service has a single environment.\r\n    - Flex commands targeting the current service will error out if you create additional environments inside the service and don't include `--env`.\r\n- Flex commands specifying a particular service using `--service` must include `--env` if the service has multiple environments. You can omit `--env` if the service has a single environment.\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2018, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"7a1ffc6726fc0cf490255add84f5f35284901144","_id":"kinvey-cli@4.4.0-alpha.4","_shasum":"9552ef13a31bf2c90cdf4440a81736b970b6052e","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"9552ef13a31bf2c90cdf4440a81736b970b6052e","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.4.0-alpha.4.tgz","integrity":"sha512-HqP+keGY/ySaj6NzjgQWKBAVsFHz1RNIhowu9K4hs7+xzGelOc4jLkRf/r/Ui4yDCxokgdRtehCeTfdJaz7tJA==","fileCount":48,"unpackedSize":314970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcuWWbCRA9TVsSAnZWagAA+F0QAJftikS1taujv+cR824E\nRGVvhcN4fBbRis8ADvBANhJIotCHkaK8s/yJct3Mgxjtv/ONGbGx0kDJCuaT\npl4dKjIn3JX4stKDImHLrZ7FNuvx/IB5zkOglAtF1RP8gyjd4FF8cSByUds6\nosFbYuta0II2F7Vcn29t+5jrWtsOAKGJHB/St7coQnBm7BjWfK4KTXlMr74Q\nV+jDwrONwlqDWSWmxufG7EU/duz3PpH35rO1boweQ2jfuKFEV5cLByClkjR4\nuyrsdGBlaFLOQuyrmg8kdgQnmQ1fS6QB2Il+qXQ94BjLd9Jh7kpXoc7N6Kq7\nsiTQyRPy5AFOTZSVISkQRCroNVfxj+du6x7CfNvuFzHqdZc34B2+aOBR5/ri\n7Byaf8uW+u91rWmG+qXW03jUJWYqmU3OfEE9g2RAI3aAXuouUYcLa4cXfaEe\noza1gEYz+asEcZ+RCLGUk0XaKfofjF0FyUGdDY7pNbsP80y+eMg24Mz1brrD\nx41nTv41G5IsU4MIFUeoaJmypLOURruEHQX6LX9vuULqJMRHZLue5ZmKp/p2\n1vdqWVIDfyZW4GjtC8hMbaLXXT1lKECKjA/S/JmUpAcQpVL2cRHeUQI58N3g\n8gJMKzDD+A4nlRfTSylfd9KJQcBU3zHL+jgV3xF1fD5f8IOt4WizMWU4Egad\nJpCt\r\n=jbpP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDVrlqpUevXXLClrZD6txVr1fVNdBxwq3kzG3Gp+DQqbQIhAJ2tSisOySZN7Blu25DXcLHeKOUFVPFjsQaj9Y//G3Kz"}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.4.0-alpha.4_1555654042362_0.8573748299987869"},"_hasShrinkwrap":false},"4.4.0":{"name":"kinvey-cli","version":"4.4.0","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.omitby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"a6bbe2fe7a46e77199ee3c73bb48fe7cd1c4b43b","_id":"kinvey-cli@4.4.0","_shasum":"3382f38a8764db86056344969a2295028bcf8898","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"3382f38a8764db86056344969a2295028bcf8898","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.4.0.tgz","integrity":"sha512-4kA1AGvj9rKktT3mDvkgXHmQMpOg0ZWfH1nk33Ctbu7hqrUiE9v2I6svutJU6HWBCNlMVNQR8UKUgeDszJTXnQ==","fileCount":48,"unpackedSize":315242,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwasOCRA9TVsSAnZWagAAExQQAI3+XJ8Q5R1ZR6DbWkSi\nlGksnvd0Cm0b6Ac2Uj1L03ZRES7e8JSTCEnK/Ml/Q45IhyQk28581VcsZhAd\nVxkNB06MgAgnLXgJs5lRbQj0TGK4tSdbpi9gcvSvnYsxBUG3J9953v0BYUjh\n3gzrBYGb+R0x+0BEV5IdMpgrloF5Js17BrNzjhpk0Lwe9yR4lRdrOT2ptd8Q\n9xqpksS+OnXXyLPwi6S+i4Yfno6Z06NYzr5Xm2i12uu45Fr8RaQbCV+YNTGS\nw4JY4PQ0IdkQ75v2Fj9CP2PCiunutRV4MJ0plqKEjkN5VaWZWsd/zUy+/bp2\nkopVF3oMmK39EWv6vDse70M9/advz2qhvoyi8u/HWQFCTDwcuGzD9wWnWCTd\n3y157RFhSMucvZEC/pPXDEJuJceSG1vthOX91Z636IEpENDnB/UGYuktbPR3\nuuVfGq4Qyqv5JM6d4bJJ4gGdiXTrmmq0f0CLEEtFsTK6p0V131TdeMo75kBl\n1aw7Qh1UK81VLWS3ljo0+4uraPSyym1En6kyIcrzBBffepDvjonZnPJkaO8e\nOG/M9QQ/h0uaPVuiSX/EE8up6Rh2L4nNYRMtbxkgYinUcKppKffwma6EabMB\nWiXn/aZS5K5iwhP/vaJmvcb9pzIA4vTtd4Dif7wfaIuMQqQxtBf4HRZrju9q\nWtw6\r\n=PpvB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB+WP5CPjldUtW1Bp59PucX3KzrQwiNxiH5N2ox/OFLlAiBFWiJQSLUFW4gFgPDwuH8ZCR5gHTNFF3M/wpcH99yP2g=="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.4.0_1556196109524_0.054188731536262136"},"_hasShrinkwrap":false},"4.5.0":{"name":"kinvey-cli","version":"4.5.0","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.0","lodash.omitby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"e1f4839c27ecc354dd959de4b7292592a494a272","_id":"kinvey-cli@4.5.0","_shasum":"0de355a5c89233a40616f6ae9317862432ff7ce8","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"0de355a5c89233a40616f6ae9317862432ff7ce8","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.5.0.tgz","integrity":"sha512-hb1kjkbFbGthjBdGi7i3htfupMYT/t7C1933AOi6NdWhZSg2bqHpUCPc4YO3jvNG8w0VK73vFNtr98Q72WEL4Q==","fileCount":48,"unpackedSize":317110,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc3WOKCRA9TVsSAnZWagAAFWUP/iSuajt/OfU9ONXuxppe\n4PPGaZxJf6Tdg/aBYeHi+jmKZaWz/X/C6Xxrr1xjLfPVjqVZTHAIynA3Njli\nIUgmsWyzxhfSsFKQqvYSg1uC5QxrLcc6e3SsKZF+AbUEkVGHmZ1gQzdo1CxR\nD8wu4SKIA1lK3LXlwXqZJk6HzSg4NR+AI2urgU12/pocaY/8Lop3UTG4nKE9\nuWLr+MuCIqJ6q8tnEWntboJf0ZXFWneHqe/cdxgfOevryYE/GRZaTbloat/S\nCeZp3ShmlwaIm7KFTyS1DxP9Q2G6wD+N50z3T0hjrJ0zLLyE6tkiGYf6oEr4\ntKIdVJ6/s5gCWblTO0IKDymopzlLpeVtqQFyQFOGlUQRc4hKuWa/OQofPwK1\nz9K90MjIzyJFLpgmjwkgOBLjqcrhNjPw9mir2G9ZhHTDdrWHYZpR5Wu7y306\nMM4/YYr6YH+MUDqT9NYdfCFjFNyICHYB9QHujlu/AJN4Iq4gtwzr1nXPms1L\ncOOeTubjYMujvdWX4R7ih6QLZKb7cXKWOV9/IwrWGBCA4vcXePiRqWiWYR5j\n9Vqu4R1TELzMJu7v7j2ERBSBdkertqdgBfqymy3+LtKCpSYkd4cqIs3uyoZs\nS9Ca6nU6K3RedOR7XBuYRE330ZKEAbMUST1rzEwDqgrvfPfgyRCEiEM2+2eR\nd+PA\r\n=ELBb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDYUlaYLRJTnz1XS/FsmdfJdtNnI0gVBHxWKlb58oY+ZAiAFMn5F/CVagYrcVtl1Yzfxagm19qJhG5LJPO/JM/3U3g=="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.5.0_1558012809350_0.4624522531696116"},"_hasShrinkwrap":false},"4.5.1":{"name":"kinvey-cli","version":"4.5.1","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"3a0c55da83aa7cad6328168673a823f41a9a285f","_id":"kinvey-cli@4.5.1","_shasum":"a5de91c498f3fce96167e599d2de00894bea71f5","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"a5de91c498f3fce96167e599d2de00894bea71f5","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.5.1.tgz","integrity":"sha512-eiekm4wLwiGLDmczeEu0mTz6jKNLa8FMs+B9u5LlL96d+jAphsEwGU+TBpxxelNBGOVD/Npe2IlrNYohFk3tMQ==","fileCount":48,"unpackedSize":318526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdQs6/CRA9TVsSAnZWagAABw8P/iS3J/UAIH4a1dxaA4AR\nvaIt7nDgS3Zr8pfzNQhVL67Lj6xPl80fUX/sYnIdN9TM5tyCzetmk/4dHli2\nIguLtDEbIClWajG/qAvZQdbcosoO35ct3QbHGd2FaXmEM92JNMoYgNfiBTsy\nkHG1V5kpunXinfLNA1hgDZGY++/kwz4bANDhmsbMEfzOODIC3ycflK88SAuo\nMs/Q4NUOgJOf9GoLUEO5/3x6zjB2fo1kFQZ1kuYzz9wH5cG1ZNl9ovIq5A2o\nPxiP2OOwFRcQ33WJqrx1dViKUvZGdeFvsanaYmT8wgEc+BeZnHWQJUXCgNz0\ntXgtNVd6r/4HejYn5JzbVkpVz89ptQRUUVV49e/s9OBNrso2TlMm3p/LsC3L\nvLx6QBv4ZTltdinfTgZTckpbmiRW3PFZHeNNbM711TT73gHXQBxeBywettys\na+JZ9h9wGSwFWzFRF3NCM0JSVSlWfh4YiSuVqmzvPN9xtJ5S6W1i3J4lUHwc\naIDXig8INW+hmIjFD7G7mlqgF5ZVOnzcftIIQ2pG4H+xSKqqgbcokNKk3a5z\nOmIzuFZgYB6eWfdRUO/0VHBsY6xeJWPMHuEvEwoanPOdaXYc5zDWALIdCKpB\n49FWWoykgHXYxKPzBpEiB2OzMyh9Y52kNN++z8wwT/BVTobEcbqR2QkxTENp\nOoZ+\r\n=bHg3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICy6ERUBYYp4M18Tc85/fwjlYnYfWi5mWg9pPUzottkyAiB34VXTM7lFXr6pW77zNkSL5JBVsdrB94OAHHeuZtcIgQ=="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.5.1_1564659390246_0.8338059193123979"},"_hasShrinkwrap":false},"4.5.2":{"name":"kinvey-cli","version":"4.5.2","description":"Utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration":"mocha test/integration","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"1.4.2","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","lodash.clonedeep":"4.5.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.0","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"6b34eb37d5880b8e28d94d231b35ba1432e8c810","_id":"kinvey-cli@4.5.2","_shasum":"023118a5e22b23b5c8b050c5691ee50ffdcc51ef","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"023118a5e22b23b5c8b050c5691ee50ffdcc51ef","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-4.5.2.tgz","integrity":"sha512-ro98zQB5qC572JlKIeljtxlFs0xg547LwoXdK/ufGOgTRVmuate5UQ5shHbTgILqHLbf7/AunJ/6ZnLy0e2Cuw==","fileCount":48,"unpackedSize":320943,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdg4FpCRA9TVsSAnZWagAApDYP/36whXXucdJ7yRpKFibJ\n5+Kd8UtCap9QIuWcTFP2Bbo/JYtog+S/7XmQTEoKjrHV21H5WIGNOzZQX8/m\nzHxFgI50Tssr6/LG5Q0acgXIM/qXHPEQJGp6zGqnzfCgSPvzpbHnbJTPIN3M\npcY4GhCNLXYBBf72MIyeHBAGYnBJeTCM7qTkbGnVhlCQ8EqSuDVEewXStw+t\nS0MkDr9/gqaeyplQemAEVEno9GQYoJ1AeJIgiSAbklB7uuzBDHpnIStYQ1Ah\n/TUwCt6e+eX7iLNzqew8d2uaW+3FAA5ov+hGiX88wNzWqreVpP0ypKVIdUgz\nxdHFb2fsfV2Fb8yJ98US2+hAxpOCSch8Y01kOY6HJRUFkHcuYlaEUziz8+cT\njAhHxG434tTJCBsxwijEXqOhVc0/MV5NFJGu8+VatRQuEqkWnvFhUH6RacVh\nhmkJtQgWRpjpe7sSsCIEYzoXT6LDaeTAjNuP1UHaiYjHq+Kb5QifbwRuN+lB\nfz2fYeZoQuDRpASRp0XxVTFyQjUmdY7LINv7ZJxnsniCXzCMR0vnK5hpTq99\noBKszqHvdju4KYFAaDHMP5yAEcXqZ9PTMybJwQMkqEyGtfC1XejRoQ9djQqC\nQfrpwZ6jcWp0pguiDCZU80FjDJwvk3RpiztQC7k6OoRQPsobhW/GJpqcH0P4\nEocy\r\n=KF7o\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCFQW3NRvmuFSoup0n7AJDUFFGrOL10AYr9hhh88SlKGgIhAO5cnPhj6XPuoUCVQYsOrU5SW88ue5nYPwBSHURAuzyT"}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_4.5.2_1568899432314_0.5446180103761435"},"_hasShrinkwrap":false},"5.0.0-alpha.1":{"name":"kinvey-cli","version":"5.0.0-alpha.1","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isplainobject":"4.0.6","lodash.isequal":"4.5.0","lodash.isstring":"4.0.1","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"readme":"| LINTING            | UNIT          |   INTEGRATION          |  NPM SECURITY       |\r\n|-------------------|-------------------|-------------------|-------------------|\r\n| [![Build1][1]][5] | [![Build2][2]][5] |  [![Build3][3]][5] | [![Build4][4]][5] |\r\n\r\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\r\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\r\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\r\n[4]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/4\r\n[5]: https://travis-ci.org/Kinvey/kinvey-cli\r\n\r\n\r\n\r\n\r\n# Kinvey CLI\r\n\r\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\r\n\r\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\r\n* Deploying and managing websites\r\n* Creating, listing, and deleting applications\r\n* Creating, listing, and deleting app environments\r\n* Creating, listing, and deleting collections\r\n\r\nContents:\r\n\r\n- [Installation](#installation)\r\n- [Usage](#usage)\r\n- [Commands](#commands)\r\n- [Global Options](#global-options)\r\n- [Environment Variables](#environment-variables)\r\n- [Getting Help](#getting-help)\r\n- [Getting Started](#getting-started)\r\n- [Managing Profiles](#managing-profiles)\r\n- [Authenticating One-time Commands](#authenticating-one-time-commands)\r\n- [Precedence of Configuration Options](#precedence-of-configuration-options)\r\n- [Output Format](#output-format)\r\n- [Flex Runtime Version Selection](#flex-runtime-version-selection)\r\n- [Proxy Settings](#proxy-settings)\r\n- [Troubleshooting](#troubleshooting)\r\n- [Changelog](#changelog)\r\n- [License](#license)\r\n\r\n\r\n\r\n## Installation\r\n\r\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\r\n\r\n    npm install -g kinvey-cli@ea-config\r\n\r\n## Usage\r\n\r\n    kinvey <command> [args] [options]\r\n\r\n## Commands\r\n\r\n* `init`\r\n\r\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\r\n\r\n* `profile create <name> [profile information]`\r\n\r\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\r\n\r\n* `profile list`\r\n\r\n   Lists all existing profiles. Profiles are saved under the user home.\r\n   \r\n* `profile login [name]`\r\n\r\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password and for two-factor authentication token if needed.\r\n\r\n* `profile show [name]`\r\n\r\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\r\n\r\n* `profile use <name>`\r\n\r\n   Sets an active profile.\r\n    \r\n* `profile delete [name]`\r\n\r\n   Deletes the specified profile or the active one if you don't specify a profile name.\r\n\r\n* `org push <file>`\r\n\r\n    Applies org configuration file to the specified org or to the active one.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n\r\n* `org list`\r\n\r\n    Lists all existing organizations within your Kinvey account.\r\n    \r\n* `org show`\r\n\r\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\r\n\r\n    * `--org <organization>`\r\n           \r\n        Specifies a Kinvey organization by ID or name.\r\n          \r\n* `org use <org>`\r\n\r\n    Sets the specified organization as active. You can specify an organization by ID or name.\r\n    \r\n* `org export <file>`\r\n    \r\n    Exports to a file the specified org or the active one.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n    \r\n* `app create <name> [file]`\r\n\r\n    Creates an application. You can specify an organization ID or name if you want to create the app within the context of an organization.\r\n    \r\n    * `--org <organization>`\r\n               \r\n        Specifies a Kinvey organization by ID or name.\r\n\r\n* `app push <file>`\r\n    \r\n    Applies app configuration file to the specified app or to the active one.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `app list`\r\n\r\n    Lists all existing applications within your Kinvey account.\r\n    \r\n* `app show`\r\n\r\n    Shows detailed information about the specified application or about the active one if you don't specify an application.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `app use <app>`\r\n\r\n    Sets the specified application as active. You can specify an application by ID or name.\r\n    \r\n* `app export <file>`\r\n\r\n    Exports to a file the specified app or the active one.\r\n\r\n    * `--app <application>`\r\n               \r\n            Specifies a Kinvey app by ID or name.\r\n    \r\n* `app delete`\r\n\r\n    Deletes the specified application or the active one if you don't specify an application. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n              \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `appenv create <name> [file]`\r\n\r\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n      \r\n* `appenv push <file>`\r\n\r\n    Applies configuration (defined in file) to the specified environment or to the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n        \r\n    * `--env <environment>`\r\n              \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `appenv show`\r\n\r\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv use <env>`\r\n\r\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name.\r\n\r\n* `appenv export <file>`\r\n    \r\n    Exports to a file the specified app environment or the active one.\r\n    \r\n    * `--env <environment>`\r\n              \r\n        Specifies a Kinvey app environment by ID or name.\r\n        \r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n* `appenv delete`\r\n\r\n    Deletes the specified environment or the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--env <environment>`\r\n          \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n    * `--app <application>`\r\n       \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `coll create <name>`\r\n\r\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n    \r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n    \r\n* `coll list`\r\n\r\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n\r\n* `coll delete <coll>`\r\n    \r\n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n\r\n    * `--app <application>`\r\n       \r\n        Specifies a Kinvey app by ID or name. Requires `--env`.\r\n    \r\n    * `--env <environment>`\r\n      \r\n        Specifies a Kinvey app environment by ID or name.\r\n      \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `service create <name> <file>`\r\n\r\n    Creates a service within an application or organization (either `--app` or `--org` must be specified).\r\n    \r\n    * `--app <application>`\r\n           \r\n      Specifies a Kinvey app by ID or name.\r\n      \r\n    * `--org <organization>`\r\n                \r\n      Specifies a Kinvey organization by ID or name.\r\n\r\n* `service push <file>`\r\n\r\n    Applies a service configuration file to the specified service.\r\n    \r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n\r\n* `service export <file>`\r\n\r\n    Exports the specified service to a file.\r\n    \r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n\r\n* `flex init`\r\n\r\n   Configures Kinvey CLI to work with a specific Flex service and service environment combination through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \r\n\r\n* `flex create <service_name>`\r\n\r\n    Creates an internal flex service with the specified name along with a service environment. You need to specify a domain (application or organization) using the `--app` or `--org` option.\r\n\r\n    * `--app <application>`\r\n           \r\n        Specifies a Kinvey app by ID or name.\r\n          \r\n    * `--org <organization>`\r\n            \r\n        Specifies a Kinvey organization by ID or name.\r\n           \r\n    * `--secret <secret>`\r\n     \r\n        Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\r\n       \r\n    * `--env <service environment name>`\r\n    \r\n        Specifies a name for the default service environment that will be created with the service. The name will be set to Development if you omit this option.\r\n        \r\n    * `--vars, --set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n        \r\n    * `--runtime <node6|node8|node10|node12>`\r\n    \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection). Defaults to the [Kinvey-recommended Node.js version](https://devcenter.kinvey.com/guides/flexservice-runtime#environment).\r\n        \r\n* `flex deploy`\r\n\r\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service and service environment combination, which is the one you initiated last on the current profile. To use a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n    \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n    \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n    \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--set-vars <environment variables>`\r\n    \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--runtime <node6|node8|node10|node12>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection). Defaults to the [Kinvey-recommended Node.js version](https://devcenter.kinvey.com/guides/flexservice-runtime#environment).\r\n    \r\n* `flex job [id]`\r\n\r\n   _Deprecated_ Shows the job status of a deploy/recycle command. If you don't specify an `id`, the command returns the status of the most recent `flex deploy` or `flex recycle` command. _Deprecation note: For backward compatibility, the server always returns COMPLETE when the command is executed for the most recent deploy/recycle. Use `flex status` to track the progress of deploy or recycle commands._\r\n\r\n* `flex status`\r\n\r\n   Displays the health of the current Flex service and service environment combination, which is the one you initiated last on the current profile, as well as version information, runtime information, deployment status, etc. To get the status of a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n       \r\n* `flex show`\r\n   \r\n   Shows info about a service environment.\r\n            \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n         \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex list`\r\n\r\n   Lists all Flex services for a domain (app or organization), excluding external Flex services. Specify domain using `--domain` and then an app or organization ID using `--id`. If you skip the domain and ID options, the command lists the services within the domain you've configured as part of running `flex init`. In addition to the global options, this command supports the following options:\r\n\r\n   * `--domain <app|org>`\r\n   \r\n        Specifies the domain type as either `app` for application or `org` for organization.\r\n   \r\n   * `--id <app or organization ID>`\r\n   \r\n        App or organization ID for use with `--domain <app|org>`.\r\n\r\n* `flex logs`\r\n\r\n   Retrieves and displays logs for the current Flex service environment. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\r\n\r\n    * `--service <service>`\r\n        \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n   * `--from`\r\n\r\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n   * `--number`\r\n\r\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\r\n\r\n   * `--page`\r\n\r\n      Page number to fetch. The first page is indexed 1.\r\n\r\n   * `--to`\r\n\r\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\r\n\r\n* `flex update`\r\n\r\n    Updates environment variables and/or runtime environment of the current Flex service environment, which is the one you initiated last on the current profile. To specify a different service, use `--service`. The command causes restart/rebuild of the service.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n        \r\n    * `--replace-vars <environment variables>`\r\n        \r\n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n    \r\n    * `--set-vars <environment variables>`\r\n        \r\n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\r\n\r\n    * `--runtime <node6|node8|node10|node12>`\r\n        \r\n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection). Defaults to the [Kinvey-recommended Node.js version](https://devcenter.kinvey.com/guides/flexservice-runtime#environment).\r\n\r\n* `flex recycle`\r\n   \r\n   Recycles the current Flex service environment, which is the one you initiated last on the current profile. To recycle a different service, specify its service ID.\r\n\r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n        \r\n    * `--env <service environment>`\r\n        \r\n        Specifies a service environment by ID or name.\r\n            \r\n* `flex delete`\r\n\r\n    Deletes the current Flex service, including all service environments inside it. The current service is the one you initiated last on the current profile. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\r\n    \r\n    * `--service <service>`\r\n            \r\n        Specifies service ID.\r\n    \r\n    * `--no-prompt`\r\n    \r\n        Do not ask for confirmation.\r\n\r\n* `flex clear`\r\n\r\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\r\n\r\n* `website create <name>`\r\n\r\n    Create a website. You need to specify an organization or an application.\r\n    \r\n    * `--app <application>`\r\n               \r\n        Specifies a Kinvey app by ID or name.\r\n    \r\n    * `--org <organization>`\r\n                \r\n        Specifies a Kinvey organization by ID or name.\r\n        \r\n    * `--historyApiRouting`\r\n    \r\n        Enables server support for History API routing.\r\n        \r\n    * `--indexPage <index-page>`\r\n    \r\n        Specifies index page.\r\n        \r\n    * `--errorPage <error-page>`\r\n        \r\n        Specifies error page. Not allowed if `--historyApiRouting` is also specified.\r\n    \r\n* `website list`\r\n\r\n    List websites.\r\n    \r\n* `website show`\r\n\r\n    Shows info for the specified website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n\r\n* `website deploy`\r\n\r\n    Deploy your website.\r\n    \r\n    * `--website <website>`\r\n    \r\n        Website ID/name. Required.\r\n        \r\n    * `--path <path>`\r\n    \r\n        Path to file or directory. Required.\r\n        \r\n    * `--force`\r\n        \r\n        Skip client-side validation - deploy even if there are no files for index page and/or error page.\r\n  \r\n* `website publish`\r\n\r\n    Publish your website - enable public access or change domain name.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n      \r\n    * `--domainName <domain-name>`\r\n            \r\n        Domain name. Required.\r\n        \r\n* `website status`\r\n\r\n    Status of the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n\r\n* `website unpublish`\r\n\r\n    Unpublish your website - disable public access.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n\r\n* `website delete`\r\n\r\n    Deletes the specified website.\r\n    \r\n    * `--website <website>`\r\n        \r\n        Website ID/name. Required.\r\n        \r\n    * `--no-prompt`\r\n        \r\n        Do not ask for confirmation.\r\n\r\n* `help`\r\n\r\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\r\n\r\n## Global Options\r\n\r\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instance-id` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\r\n\r\n* `--2fa <2fa-token>`\r\n\r\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\r\n\r\n* `--email <e-mail>`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `--help, -h`\r\n\r\n   When used after a `kinvey-cli` command, shows its usage instructions.\r\n\r\n* `--instance-id <instance ID>`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `--no-color`\r\n\r\n    Disable colors.\r\n    \r\n* `--output <format>`\r\n   \r\n   Output format. Valid choices: json.\r\n\r\n* `--password <password>`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `--profile <profile>`\r\n\r\n   Profile to use.\r\n\r\n* `--version`\r\n\r\n   Prints the version number of `kinvey-cli`.\r\n\r\n* `--silent`\r\n\r\n   Suppresses any output. Useful for scripting.\r\n\r\n* `--suppress-version-check`\r\n\r\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\r\n\r\n* `--verbose`\r\n\r\n   Prints additional debug messages.\r\n\r\n## Environment Variables\r\n\r\nUse environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\r\n\r\nCommand-specific options can also be specified as environment variables. You just need to prefix the name of the option with `KINVEY_CLI_`. For example, `--no-prompt` becomes `KINVEY_CLI_NO_PROMPT` as environment variable.\r\n\r\n* `KINVEY_CLI_EMAIL`\r\n\r\n   Email address of your Kinvey account.\r\n\r\n* `KINVEY_CLI_PASSWORD`\r\n\r\n   Password for your Kinvey account.\r\n\r\n* `KINVEY_CLI_INSTANCE_ID`\r\n\r\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\r\n\r\n* `KINVEY_CLI_2FA`\r\n\r\n    Two-factor authentication token.\r\n\r\n* `KINVEY_CLI_PROFILE`\r\n\r\n   Profile to use.\r\n   \r\nKinvey CLI also supports these universal environment variables:\r\n\r\n* `HTTPS_PROXY`/`https_proxy`\r\n\r\n   Routes all Kinvey CLI requests through the specified proxy server.\r\n\r\n\r\n## Getting Help\r\n\r\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\r\n\r\n    kinvey help\r\n\r\n    kinvey flex -h\r\n\r\n    kinvey flex logs -h\r\n\r\n\r\n## Getting Started\r\n\r\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\r\n\r\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\r\n\r\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\r\n\r\n```\r\n$ kinvey init\r\n? E-mail john.doe@kinvey.com\r\n? Password ***********\r\n? Instance ID (optional) kvy-us1\r\n? Profile name dev\r\n```\r\n\r\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\r\n\r\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console or through `kinvey flex create <service-name>`.\r\n\r\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\r\n\r\n```\r\ncd <node.js project dir>\r\nkinvey flex init\r\n```\r\n\r\nThrough a series of prompts, this command will ask you for a domain in which to operate (app or organization) and a Flex Service to deploy to.\r\n\r\nFinally, you are ready to deploy your Node.js project as a Flex Service.\r\n\r\n    kinvey flex deploy\r\n    \r\nAlongside the deploy you can set environment variables for your service. If both names and values are void of the equality sign (`=`) and comma (`,`), you can use the shorthand syntax:\r\n\r\n    kinvey flex deploy --set-vars \"MY_APP_A=valueA,MY_APP_B=valueB\" \r\n    \r\nOtherwise you need to specify environment variables in stringified JSON format:\r\n\r\n    kinvey flex deploy --set-vars \"{\\\"MY_APP_A\\\":[\\\"value 1\\\", \\\"value 2\\\"], \\\"MY_APP_B\\\":\\\"valueB\\\"}\"\r\n\r\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n\r\n## Managing Profiles\r\n\r\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\r\n\r\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\r\n\r\nYou can create multiple profiles and specify which one to use at the command line.\r\n\r\n    kinvey flex init --profile dev\r\n\r\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\r\n\r\n    kinvey profile use dev\r\n\r\n\r\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\r\n\r\n### Authentication Token Expiration\r\n\r\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\r\n\r\n## Authenticating One-time Commands\r\n\r\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\r\n\r\n    kinvey flex status --service <service-id> --email <email> --password <password>\r\n\r\nYou can also provide the same information through environment variables before running the command.\r\n\r\n**Linux, macOS**\r\n```\r\nexport KINVEY_CLI_EMAIL=<email>\r\nexport KINVEY_CLI_PASSWORD=<password>\r\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n**Windows**\r\n```\r\nset KINVEY_CLI_EMAIL=<email>\r\nset KINVEY_CLI_PASSWORD=<password>\r\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\r\n```\r\n\r\n## Precedence of Configuration Options\r\n\r\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\r\n\r\n* Command line options&mdash;take precedence when specified\r\n* Environment variables&mdash;the first choice when command line arguments are missing\r\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\r\n\r\n\r\n## Output Format\r\n\r\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\r\n\r\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\r\n\r\nThe JSON output format is suitable for cases where the output must be handled programmatically. It could be further processed using a tool like jq (command-line JSON processor). You can run any command with `--output json`. The output will then have the following format:\r\n\r\n```\r\n{\r\n    \"result\": [result]\r\n}\r\n```\r\n\r\n## Flex Runtime Version Selection\r\n\r\nFlex projects that you deploy run server-side on the Flex Runtime which represents a preconfigured Node.js environment. When creating a project and later when running it, you can select a Node.js version for the project to run on using the `--runtime` option. To see the available runtime versions, run `kinvey flex deploy --help`.\r\n\r\nThe runtime selection is limited to the major Node.js version. The minor and patch versions are always determined by the Flex Runtime.\r\n\r\nNew Flex services deploy on the [Kinvey-recommended Node.js version](https://devcenter.kinvey.com/guides/flexservice-runtime#environment) unless otherwise specified.\r\n\r\nAfter you deploy a Flex project, it remains on the same Node.js version until you upgrade it to a new major version or Kinvey decides to upgrade the project's runtime to a more recent minor and patch version because of security or efficiency reasons.\r\n\r\n## Proxy Settings\r\n\r\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\r\n\r\n\r\n    export HTTPS_PROXY=proxy.local\r\n\r\n\r\n## Configuration management\r\n\r\nKinvey CLI supports the usage of configuration files (JSON format) to enable configuring certain aspects of the backend.\r\n\r\n**Organizations** can be modified by applying an organization configuration file. The file can contain applications and org-level services.\r\n\r\n**Applications** can be created and modified by applying an application configuration file. The file can contain app environments and app-level services.\r\n\r\n**Environments** can be created and modified by applying an environment configuration file. The file can contain: environment-related settings, collections, business logic, roles, push settings.\r\n\r\n**Services** can be created and modified by applying a service configuration file. Supported services: internal flex, external flex, REST, Sharepoint, Salesforce, MS SQL, SAP, ProgressData, DataDirect, Rapid health.\r\n\r\n### Environment configuration file\r\n\r\nThe environment configuration file can be used to create a brand new environment or to modify an existing one. It is easiest to generate the file by 'exporting' an existent environment and making the necessary modifications. To export an environment run:\r\n \r\n ```\r\nkinvey appenv export <file> [--env <env>] [--app <app>]\r\n```\r\n\r\nAlternatively, the environment template beneath can be used and modified as needed.\r\n\r\nTo create an environment from a configuration file run:\r\n ```\r\nkinvey appenv create <envName> [file-path] [--app <AppNameOrID>]\r\n```\r\n\r\nTo apply a configuration file to an existent environment run:\r\n ```\r\nkinvey appenv push <file-path> [--env <env>] [--app <app>]\r\n```\r\n\r\nBefore an environment config file gets applied a check will be executed to verify JSON is valid and parameter values are allowed. If the check passes successfully, Kinvey CLI will start applying the changes. In the case of a new environment it will simply try to create all the entities described in the file. \r\n\r\nWhen the file is being applied to an existent environment then existent entities could be updated and new ones can be created. The CLI won't delete any entities even if they are not included in the file. Hence, if you want to create new endpoints but don't want to modify any existent collections for example, then you can exclude them from the configuration to have the file being applied faster.\r\n\r\nIf an error occurs, the CLI stops applying the file and outputs the error message.\r\n\r\n#### Environment sample config file\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"environment\",\r\n  \"settings\": {\r\n    \"apiVersion\": 3,\r\n    \"emailVerification\": {\r\n      \"required\": false\r\n    }\r\n  },\r\n  \"collections\": {\r\n    \"myCollection\": {\r\n      \"type\": \"internal\",\r\n      \"permissions\": \"shared\"\r\n    },\r\n    \"anotherCollection\": {\r\n      \"type\": \"external\",\r\n      \"permissions\": \"shared\",\r\n      \"service\": \"awesomeService\",\r\n      \"serviceEnvironment\": \"development\",\r\n      \"serviceObject\": \"awesomeServiceObject\"\r\n    }\r\n  },\r\n  \"commonCode\": {\r\n    \"my-common-code\": {\r\n      \"code\": \"var commonLogic = {};\\ncommonLogic.print = function print(msg) {\\n  console.log(msg);\\n};\"\r\n    },\r\n    \"another-common-code\": {\r\n      \"codeFile\": \"./another-common-code.js\"\r\n    }\r\n  },\r\n  \"collectionHooks\": {\r\n    \"myCollection\": {\r\n      \"onPreSave\": {\r\n        \"type\": \"internal\",\r\n        \"code\": \"function onPreSave(request, response, modules) {\\n  response.continue();\\n}\"\r\n      },\r\n      \"onPostSave\": {\r\n        \"type\": \"external\",\r\n        \"service\": \"awesomeService\",\r\n        \"serviceEnvironment\": \"development\",\r\n        \"handlerName\": \"awesomeHandler\"\r\n      }\r\n    }\r\n  },\r\n  \"customEndpoints\": {\r\n    \"myEndpoint\": {\r\n      \"type\": \"internal\",\r\n      \"codeFile\": \"./my-endpoint.js\",\r\n      \"schedule\": {\r\n        \"start\": \"2019-07-22T16:35:00Z\",\r\n        \"interval\": \"5-minutes\"\r\n      }\r\n    },\r\n    \"anotherEndpoint\": {\r\n      \"type\": \"external\",\r\n      \"service\": \"awesomeService\",\r\n      \"serviceEnvironment\": \"development\",\r\n      \"handlerName\": \"anotherHandler\"\r\n    }\r\n  },\r\n  \"roles\": {\r\n    \"Intern\": { \"description\": \"Interns\" },\r\n    \"Employee\": { \"description\": \"Employees\" }\r\n  },\r\n  \"groups\": {\r\n    \"myGroup\": {\r\n      \"description\": \"Description here\",\r\n      \"groups\": [ \"otherGroup\" ]\r\n    },\r\n    \"otherGroup\": {\r\n      \"description\": \"Part of 'myGroup'\"\r\n    }\r\n  },\r\n  \"push\": {\r\n  \t\"android\": {\r\n  \t  \"senderId\": \"id123\",\r\n  \t  \"apiKey\": \"key123\"\r\n  \t},\r\n  \t\"ios\": {\r\n  \t  \"production\": false,\r\n  \t  \"certificateFilePath\": \"./mycertdev.p12\"\r\n  \t}\r\n  }  \r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`settings` Environment settings. Optional.\r\n\r\n`settings.apiVersion` The default REST API version for this env.\r\n\r\n`settings.emailVerification` Options regarding email verification for users of this environment. Optional.\r\n                             \r\n`settings.emailVerification.required` *true|false* If true, users who have not verified their email will not be able to access the environment. Required.\r\n\r\n`settings.emailVerification.auto` *true|false* If true, automatically send a email verification request to all new users created within the environment. Optional.\r\n\r\n`settings.emailVerification.since` ISO-8601 date. If specified, any user created before this date will not need a verified email in order to access the environment. Optional.\r\n\r\n`collections` Environment collections. Optional. Object. Each first-level property is the name of a collection and contains an object describing this collection.\r\n\r\n`collections.[collectionName].type` *internal|external* If external, then the collection is backed by a flex service. Required.\r\n\r\n`collections.[collectionName].permissions` Collections permissions. Optional. Could be a string or an object. Allowed string values: private, full, shared, read-only. To specify roles, use an object in the following format:\r\n```\r\n\"permissions\": {\r\n  [roleName]: {\r\n    [operation]: [accessType]\r\n  }\r\n}\r\n```\r\nwhere **operation** is one of: *create, read, update, delete*\r\n\r\nand **accessType** is one of: *never, always, grant, entity*\r\n\r\nTo specify the built-in **All users** role, use *all-users*.\r\n \r\n Example:\r\n\r\n```\r\n\"permissions\": {\r\n  \"all-users\": {\r\n    \"read\": \"always\"\r\n  },\r\n  \"Employee\": {\r\n    \"create\": \"always\",\r\n    \"read\": \"always\",\r\n    \"update\": \"always\",\r\n    \"delete\": \"grant\"\r\n  }\r\n}\r\n```\r\n\r\n`collections.[collectionName].service` Service to connect the collection to. Either service name or ID. Collection type must be set to 'external'.\r\n\r\n`collections.[collectionName].serviceEnvironment` Service environment to connect the collection to. Collection type must be set to 'external'.\r\n\r\n`collections.[collectionName].serviceObject` Service object. Collection type must be set to 'external'.\r\n\r\n`commonCode` Common code functions. Optional. An object where each first-level property is the name of the common code script.\r\n\r\n`commonCode.[commonCodeName].code` Code. Either `code` or `codeFile` must be set.\r\n \r\n`commonCode.[commonCodeName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` must be set.\r\n\r\n`collectionHooks` Collection hooks. Optional. An object where each first-level property is the name of a collection.\r\n\r\n`collectionHooks.[collectionName].[hookName]` *onPreSave|onPreFetch|onPreDelete|onPostSave|onPostFetch|onPostDelete* Hook type.\r\n \r\n`collectionHooks.[collectionName].[hookName].type` *internal|external* External if a service is involved. Required.  \r\n\r\n`collectionHooks.[collectionName].[hookName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`collectionHooks.[collectionName].[hookName].service` Service to use. Collection hook type must be set to 'external'.\r\n\r\n`collectionHooks.[collectionName].[hookName].serviceEnvironment` Service environment to use. Collection hook type must be set to 'external'.\r\n\r\n`collectionHooks.[collectionName].[hookName].handlerName` Handler name. Collection hook type must be set to 'external'.\r\n\r\n`customEndpoints` Custom endpoints. Optional. Object where each first-level property is the name of an endpoint.\r\n\r\n`customEndpoints.[endpointName].type` *internal|external* External if a service is involved. Required. \r\n\r\n`customEndpoints.[endpointName].code` Code. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\r\n\r\n`customEndpoints.[endpointName].service` Service to use. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].serviceEnvironment` Service environment to use. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].handlerName` Handler name. Endpoint type must be set to 'external'.\r\n\r\n`customEndpoints.[endpointName].schedule` Object describing how to schedule the endpoint. Optional.\r\n\r\n`customEndpoints.[endpointName].schedule.start` The code will be scheduled to start running at this date and time. ISO-8601 datetime. Required.\r\n\r\n`customEndpoints.[endpointName].schedule.interval` *weekly|daily|hourly|30-minutes|10-minutes|5-minutes|1-minute* At what intervals to execute the code. Optional.\r\n\r\n`roles` Roles. Optional. Object where each first-level property is the name of a role.\r\n\r\n`roles.[roleName].description` Role description. String. Optional.\r\n\r\n`groups` Groups. Optional. Object where each first-level property is the ID of a group. For example if the name is 'My group', then an appropriate ID could be 'myGroup' or 'my-group'.\r\n\r\n`groups.[groupId].name` Name. Optional.\r\n\r\n`groups.[groupId].description` Description. Optional.\r\n\r\n`groups.[groupId].groups` Nested groups. Optional. An array of other groups IDs.\r\n\r\n`push` Push notifications settings. Optional. Object.\r\n\r\n`push.android` Object describing Android settings. Optional.\r\n\r\n`push.android.senderId` Sender ID. Required.\r\n\r\n`push.android.apiKey` API Key. Required.\r\n\r\n`push.ios` Object describing iOS settings. Optional.\r\n\r\n`push.ios.production` *true|false* If false, then it is a development certificate. Required.\r\n\r\n`push.ios.certificateFilePath` Path to certificate - relative or absolute. Required.\r\n\r\n`push.ios.password` Certificate password. Optional.\r\n\r\n### Service configuration file\r\n\r\nThe service configuration file can be used to create a brand new service or to modify an existing one (excluding Auth services).\r\n\r\nTo create a service from a configuration file run:\r\n ```\r\nkinvey service create <serviceName> <file-path> [--app AppNameOrId|--org OrgNameOrId]\r\n```\r\n\r\nEither `--app` or `--org` option must be set. The service will be accessible only to the chosen application or organization respectively.\r\n\r\nTo apply a configuration file to an existent service run:\r\n ```\r\nkinvey service push <file-path> (--service <service-ID>)\r\n``` \r\n\r\nWhen a new internal flex service is created the CLI will attempt a deploy if `sourcePath` is set. \r\n\r\nWhen an existent internal flex service is updated and `sourcePath` is set, the CLI will attempt to deploy only if the version defined in `package.json` is higher then the cloud version. Otherwise, deployment procedure will be skipped.\r\n\r\n#### Service sample config file\r\n\r\nThe following service template can be used and modified as needed:\r\n\r\n```\r\n{\r\n  \"schemaVersion\": \"1.0.0\",\r\n  \"configType\": \"service\",\r\n  \"type\": \"flex-internal\",\r\n  \"environments\": {\r\n    \"dev\": {\r\n      \"secret\": \"123\",\r\n      \"description\": \"Some description here\",\r\n      \"environmentVariables\": {\r\n        \"MY_KEY\": \"my value\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n#### Allowed fields:\r\n\r\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\r\n\r\n`configType` *environment|service* The configuration type. Required.\r\n\r\n`type` *flex-internal|flex-external|rest|sharepoint|salesforce|mssql|sap|progressData|dataDirect|rapid-health* Service type. Required.\r\n \r\n`description` Service description. String. Optional.\r\n \r\n`environments` Service environments. Object where each first-level property is the name of a service environment. Optional.\r\n \r\n `environments.[envName].secret` Shared secret to use when communicating with the service.\r\n \r\n`environments.[envName].host` URI pointing to the service server's location. Required when `type` is 'flex-external'.\r\n\r\n`environments.[envName].sourcePath` Path to source code - relative or absolute. Optional. Applicable when `type` is 'flex-internal'.\r\n\r\n`environments.[envName].environmentVariables` Environment variables. Object. Optional.\r\n\r\n## Troubleshooting\r\n\r\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\r\n\r\n### Caveats\r\n\r\nKinvey CLI is a subject to the following caveats:\r\n\r\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\r\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\r\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\r\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\r\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\r\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\r\n\r\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\r\n\r\n### Support for Service Environments\r\n\r\nKinvey CLI version 4.1.0 introduces support for environments inside Flex services coinciding with the release of this feature on the backend. When upgrading from a previous Kinvey CLI version, have the following caveats in mind:\r\n\r\n- The `flex init` interactive command prompts for service environment selection in version 4.1.0 and later if the service contains multiple environments.\r\n- Node.js projects configured with `flex init` with a Kinvey CLI version predating 4.1.0 do not contain a service environment ID. Therefore:\r\n    - We recommend rerunning the `flex init` command on these projects.\r\n    - Flex commands targeting the current service will continue to work as long as the service has a single environment.\r\n    - Flex commands targeting the current service will error out if you create additional environments inside the service and don't include `--env`.\r\n- Flex commands specifying a particular service using `--service` must include `--env` if the service has multiple environments. You can omit `--env` if the service has a single environment.\r\n\r\n## Changelog\r\n\r\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\r\n\r\n## License\r\n\r\n    Copyright (c) 2018, Kinvey, Inc. All rights reserved.\r\n\r\n    This software is licensed to you under the Kinvey terms of service located at\r\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\r\n    software, you hereby accept such terms of service  (and any agreement referenced\r\n    therein) and agree that you have read, understand and agree to be bound by such\r\n    terms of service and are of legal age to agree to such terms with Kinvey.\r\n\r\n    This software contains valuable confidential and proprietary information of\r\n    KINVEY, INC and is subject to applicable licensing agreements.\r\n    Unauthorized reproduction, transmission or distribution of this file and its\r\n    contents is a violation of applicable laws.\r\n","readmeFilename":"README.md","gitHead":"74ba6fc52f53357090a78a70bf09913c02c0af61","_id":"kinvey-cli@5.0.0-alpha.1","_shasum":"6d91fe259baabce231a51b328d8a0579f1d49a7a","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"6d91fe259baabce231a51b328d8a0579f1d49a7a","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-5.0.0-alpha.1.tgz","integrity":"sha512-0apL6LoaNbi0PnOiwdDU+DH4gLZwGO1xMMx14FZwCPvEDHbI/iEFKhnLqNkp2ti3zJ/Bg6jiEZHYFcFZBjC4Hw==","fileCount":65,"unpackedSize":500214,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdoB2yCRA9TVsSAnZWagAAvG0P/iNGYiqb3g1TOg4GiTBJ\n48qB11Ek90cxfCRz1oBFSjr6KhGl9ECu1tc/twCAsXVq8ERuSps/cl7YZedM\nOS2GD9vqhC5yqIy5KDIjhW9OIv4bhGYwSs0xzXTCGWMQPYztCjWSA5iifcgd\nsn1d5/3EWhDPrVGEBTSE3xoihV97QO/6oLHW40TO84Q4hiOTH/BmVhx/qOLF\nzCvhwrt9BReu9iU9QTU3Gc83CF/328K6Sxfnpb/LSPcT4ZYyrrPA0PawMc3p\nQormzmg5Htx4fxRKyLWwtlCwAJOSwch/EHtPOZgNFOpZFa8WhfV7ZDR9OBHh\neUs1khkSauxqF0KjChK28lp6TaXiJKSk0fjSRzBwUhwrD30tYHfzuFj+fgQX\n0C914tPiIMWHzHSk4Smxvf95qEaB+BdbCYw8CV24leY5WcNwU/xBLl+WmkTk\njK1lX/Cn/rDsFODtCvwdP+3GsvGSq7KzPsq072lG68d5KoXJIQRMF1iU/bEc\nSYS100eNWZ1hNMR43Vhht1FfJYzurLxzYys4dHes6qipTTgAVhQA90QRhFYX\nYewjPeBrwMimqylyoZlfJ0EkEkGqnRnVIwst8ngDAHbBjNa3yz9cG3uOHuj8\nENOe/dG/Yf4Kk5wT/Omxt0h1IoI0tUohD/IMOuEZ1/6XatHEoUuUUwNLrV42\nmp3A\r\n=vTwO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDX4N2+4GkXVDTGFlTZiFxzIsTyeOtV65MLH2EZKHSgZgIgMHImJoOXroA+mJrA7qjz9arnaVM7itBaEc/K0thCDoQ="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_5.0.0-alpha.1_1570774450174_0.2838282569966246"},"_hasShrinkwrap":false},"5.0.0":{"name":"kinvey-cli","version":"5.0.0","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"./bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isplainobject":"4.0.6","lodash.isequal":"4.5.0","lodash.isstring":"4.0.1","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=6.9.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"b5b8936e83032154052958182d8c9925153ab076","_id":"kinvey-cli@5.0.0","_shasum":"9874138c605ce8f3fd62cbf175c7b7d8a0fd8e80","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"dist":{"shasum":"9874138c605ce8f3fd62cbf175c7b7d8a0fd8e80","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-5.0.0.tgz","integrity":"sha512-ThINDal/RhUP3AmWMzUXNw9mz7hJYopPCkdDUbylUclNnxITYyQv2qI25ByS49i70N77WpS31iJm9ChUf83aqg==","fileCount":65,"unpackedSize":508214,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd37ZFCRA9TVsSAnZWagAAPQAP/AvUo4ZD5iyKVi1Kh3Yd\n4gWIiIr6UFGapbpsFWsy/tySSj5BFRs5H0OwRE0UNDgHEhsrzugpnB/QX/Dl\ni7jy6oaaPmrf8Fm/0zQE8Tk/iNliX6tOQc9aQ9iHGjUir3fXcdNPIfBuw4Dq\nhr8b6xWf4LI6l7TSkYjVGJ7Q2onEKQ6aI2A3k/LZG2zBAGzQVblYHT4WMax1\n3EX5Gqe1r2+sESqBUUFGfy3kSlB88PaVkpfX33X6DQdze44RVi+8WVcWw26H\nwrTjbFGBOJaecSxrC6KX6eVh1tXNyEihDlFpXBu70U6AUOvYuc/FlwKqXDdu\nWXYbCn4F4ddeUUIzo8DfdtnkeRKpaltby+1qpvp2CX2732LLxR0TVw9UNkh+\nyAObxm6HfWWONKPZiWrEDvdBL0mQYskgJ4LYIkV/qQyi7BrRvPNigjbzZFYi\nJisQVUrNYhXI0ITjzMDgNa2AprIw7Odkr7NCE9m6d5N0ZTir3gtopEelDztU\nGARiI0w7GPJR8uEiAJ5Cz9pLD7+5Dc6WnhRKHfhBqHsiZIP2iZ2BeBLLcTUi\nVir1kX+yp/mykarXtrqToQ3KjyPW6DCEFEjKBo/z+Z9fOP5ndc5gK5mBbXEM\nZE0L6jqHfW2ZKtNwD6Wbx9xNwu33QH7fIB5KIc5ulxLx7a9W94njNkXuHOTB\nl4qa\r\n=Gnlu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqM4V1ceJuj5MDa25er77YQHHEd2nruqlL5Pctlk8BwgIhAPaCQqUrhMY1SV1U6ERyEu5ZxeWjk8yPuwb+b8nmSUjO"}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_5.0.0_1574942276970_0.15058258456169882"},"_hasShrinkwrap":false},"6.0.0":{"name":"kinvey-cli","version":"6.0.0","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isplainobject":"4.0.6","lodash.isequal":"4.5.0","lodash.isstring":"4.0.1","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=12.16.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"b80a823a314b714d61179c8e9bdcaf9cf2d0e70c","_id":"kinvey-cli@6.0.0","_nodeVersion":"12.16.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-TlC5Th4dIiaAROZCAUK5ngi/QQtFjvFJSiWz+4P7bb/Rie4uA0q+TYXy3v6WGReqCLhiQotAGvCIALso2gpGCQ==","shasum":"88c02b3bdfb09056097988b609f32669d47cc1de","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-6.0.0.tgz","fileCount":64,"unpackedSize":500305,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe/doHCRA9TVsSAnZWagAAREoQAKINzagg+uXVdhwPH9J3\nvfOat29SYbiTNDcqkQzh1pccur5TuPjLnNtztdQGKG1oR+pAANnqDcoxPo+1\nkWgv1DOUHNhWEeceC1Z7jO+MVkA/k0RbnNaBg0SYnChgWm8YeihRyfMv9KSj\nE0ENNVpHaj8VoB7+ORrcsidrNIjg6Xfp/MswCOV/lLekfKXmskF5SxjHE0sI\n0HlVI3syhtMYv6vlfTmMM7tt5wIqNR0bGRfjy0bpqaUkNNJtaG18OgGORqDJ\ndaLlesalmHW6QHhSvYzUitHRloToL/Af50KBLC0/J1FlN94t1DU0cdqxJnar\nqBIAoR3DUqoMOQTCbXJzq+Nkd0ZVDUKT4h228HNPzT462LvZi8PSy5SrR/eQ\n6LCXzk0z3+zUEa7A0qAY8lid13PlSpOiaZavagqGBhH1FdhjwdkKFETyA0HQ\nv7MR4FrKfXmebV8WE6cxdfCCwcMUqksGVgBhx9UTgZ4D9dMHYk/3uE6lNFJt\n/C9S5paYJC2DRX+dxZn0ek8HV/ZAtdW32PZ0kt8DwV8QMkx4iCH/gMpSEPVc\njPE/p8z4q80rqs4kCFWc8ASUqUzXRF+GBR6t1JtoM4tGj2tNxhMIVzO/jVb8\nbsgqngs+PC8nOfG30UDjwr3sgjUuME+F8Hsl/QOrRgeUZjZTEa0KvkcCN5Ku\nXRp4\r\n=0ps4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCLuFCmpA9d+SHPQXvj5X/xSHKkR0aq0d2mNxIImo86CAIgeTuTlMnbbaUhuxe+ouFDkF4bsp+g4Y201jk/7OoHSKw="}]},"maintainers":[{"email":"denitsa.dimitrova@progress.com","name":"dedimitr"},{"email":"mjsalinger@kinvey.com","name":"mjsalinger"},{"email":"sjl2024@gmail.com","name":"sjl2024"}],"_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_6.0.0_1593694726398_0.34889057884519503"},"_hasShrinkwrap":false},"6.1.0":{"name":"kinvey-cli","version":"6.1.0","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.isplainobject":"4.0.6","lodash.isstring":"4.0.1","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","open":"7.0.4","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=12.16.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"26ec28651cfb57cf1d430733b3f512b73edeb755","_id":"kinvey-cli@6.1.0","_nodeVersion":"12.16.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-Yz9JkOY7ldmweYDF8de9nCENhBGZSzBApwRFrrvJuR42PyqxGjO3C6WowykLkaveu5+Bu9FJZl1VD/WcXqqScg==","shasum":"cf9a03fd117c93c687a6378166b643dad6885f65","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-6.1.0.tgz","fileCount":65,"unpackedSize":517407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfX3/FCRA9TVsSAnZWagAACJgP/0G5XdJ7Tw8aw7NaBNzZ\nRkOmLmsJ5n13t3lkrIzK9Kto9TPqvag3PjA0ljEPrEknX5UeG6DnS66q/HE5\np0c26ARtToe0qWnR5NCu6dpHRprhZFch72/O5+3k2HDvtJBX9urvTxb8YsdF\n+OUMFi6c9Phb/GJcHriktxQsr1Qt9ExyAEz6xlMN5zpJZ7L9IcSgbKpHYzVS\ntPwsiPLoKi59x43TJPkeyOYvBwKcCRXbbvlbbAasxjEHLHnAp2nxE8JxDR+d\npHoxCkqRGELehY50HQSSrOHZcGs5dtNXpXmU2ae3INFHf6N5R91PoxNlqa2s\nBQzvGNmMyMU+cUKQ/rbzCggYJth72/4P3grLr4sNrb0zalfSMF8tei2XcmdH\nMT7J5ta7zgUTM7n4tEvfsV2ScHWtrAm4LZ1e8I+IeJYY/hn33dN+Wnv2O6Bj\nP2Moe8b7POBox9xyFLpskHmrcWYeZ3HNCvOtd2Ax9jEbBjvBK94Fpr5Et+UX\nGKDJCfaGQFhGm5fYktCRLi4hHfxq/XhfKWPo4jySb5v7pOcglMTpeYRQu2GD\n91dGxmIYai5I4FN1gTGzOu4+fIjvaoSWIct+lgx7O8f7wtaCPuhYIjE38py9\nwBXBDqKy8sP8cOsiDb6J1brUBIjPANoSTyce2zM39IaGUUUipfLGaypcN5mK\nUAL2\r\n=tUHu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICXdoxhKF82GqjoLrd9Xch6nqxduCiqHjecbF76DGxm/AiAxSAXsX4ZRhmDuB1RCe9FUVPDP9wUIJ0w6nB0ba0U3Ew=="}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@gmail.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"},{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"}],"_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_6.1.0_1600094149326_0.207252749481738"},"_hasShrinkwrap":false},"6.1.1":{"name":"kinvey-cli","version":"6.1.1","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","coverage":"nyc --reporter=html --reporter=text ./node_modules/.bin/mocha test --NODE_CONFIG_DIR=./test/config","eslint":"eslint bin config lib test","test-npm-security":"npm audit"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.isplainobject":"4.0.6","lodash.isstring":"4.0.1","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","open":"7.0.4","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","nyc":"13.1.0","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=12.16.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"20b51964a7bb867f0ddf2cf7861e7cca79910c8d","_id":"kinvey-cli@6.1.1","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-hcI68zRPb/1z2gCO0wrzgEIdKfWFeP3YEnm2aEcvfswrda8FyD9MOAD+qfrWBugDX554LsEqp1kKmwLRgLOLIg==","shasum":"03c07a51775bbe60a2e51e696acceeeb446b8f68","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-6.1.1.tgz","fileCount":65,"unpackedSize":517759,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfm/E4CRA9TVsSAnZWagAA3mIP/2Z4wjTjJ/blmY4m36s7\nYPqri2xARJRsLmNVrVwQpeux67zIKnHxxyJ6dp9Pzg2BMPYF4+n47EyqrcJc\nrIz63kz3AL0BTHMXWTWoWb2+yiENtG+1d+UXxZPSKSRuYnngpL1HvnsuwCJz\n9fvauzBiVVBMH7tuQ+Eay29BAJN3P50Wx5NLSnomuiw+vFsfHKQMCMV/9HUP\npBjGDl4K6fK+rycFBvrVkvB5KnFgVwZ8Iea+ti6SkaikZF65XiEuNIBSanA9\nG9kxEJkrL3HDRwLsHSB70kWUgLjaSyQa+e+IqJvrz40QrIqAVprpgqitt0Do\nuAogeeiWAT45OopooQmjkEIOriA0rfexAS+dLx05snJF5E/n5aFVV+/Bw3Uo\n8CtcMWDcBEvlV2B3kgqZbF1bB1eUYPGFrMy4KEYB7A1nP4PG2umAZ7mGwu76\nrxshcbeoi/LrGjN+cO32VUDhj1eyQyCv7Zf3qythDjcEUaworsEJQ92xE2bt\nOvzJW+2hXZBLF1tS3xZLr9zk45DWnLV4bVZKvI+u+S8r/YeXclhROQCdN/UP\nltQm1CvNAA1WdOb4+UU6Q9lBI19yPNjLzijnBarDzen618A78DIGvuTqlUOo\nZeraa59fDm1iC9UiGhg8xgG7xrNhavnwPNRlTQgE7g60CDTTMLzqpiw7FvIC\nwhgg\r\n=Sco/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCSiA1IVYfS1jsgprevNCCQSIYCCJgBnf1vrmdkORi//gIhALXzMY7uDBpil+XA5nJFjBXTK1CJONwoOlynwKvQcrha"}]},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@gmail.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"},{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"}],"_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_6.1.1_1604055352138_0.6850456363338673"},"_hasShrinkwrap":false},"6.1.2":{"name":"kinvey-cli","version":"6.1.2","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","eslint":"eslint bin config lib test","test-npm-security":"npm audit --production --audit-level=high"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.isplainobject":"4.0.6","lodash.isstring":"4.0.1","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","open":"7.0.4","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=12.16.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"2ff27e3ad34a71ef47b4466e758eaf6e9e5f5034","_id":"kinvey-cli@6.1.2","_nodeVersion":"12.16.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-8AEK9qGE502QNV7Ss1NQwOlDKZ574WLYKZNzARpazwDPf4wheQfEbdrqN4FsPla65+1Fu4h8BgrwxZ9ElWU7CQ==","shasum":"289c71f859ffb384bf998dfd498a0b89a059b8bb","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-6.1.2.tgz","fileCount":65,"unpackedSize":518052,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgK39uCRA9TVsSAnZWagAAjOMP/iGEIGJDOFhr3c9kLVyC\nJJTyYj0jI8Fzfu4zyO0cHa6W+lxVY+ANXdOM0v4gGT4Z/ETYXEQoUnuB91x/\nCCM+rmL3Owt5YVMEAuU3W5AcxnuFS4G2a+ocI+zyK22z9Z4Co2SN7v9ahY1U\nes3uyXGP0uY7FmxGYCs841hhDqMj9kENSPX50KWFe0GvG5Y+cNoIb0LV7g8z\nj2kGsrzDSsQ5kGes/vTDgmBBxZtwtJ84PM9Hurt0XScbl3tBnPbbVSvsRACq\njTqBOCo00JrfujleiH5Z9TN/h2h/kwQ2QgpLHEeX8pTny/VgeV6kpUtSAd86\neAT0SEp3/esAMMXBXzfDpygd7N+qP8d35ODg5Axu3voO6awLnOqEZEWTeWwQ\njxtBp3BA25aAe/Up3uyHh81FPtqPDjohmDuzrNqe+U0Lk0tjYE0qC53k3LXJ\nZA7K59S+69ZT/klY+hYrckBKt2AFHyoybj4xRj73pkIfXpyZov4kishgv7WA\noMQhJFfP+Z9Jw+A66dhgY6LesDjIRVO3A1pj3J0YVHvLISEeue90dFzPIc42\nEU7O3PSTq99oahr6w06QsRmy4APSta8jWG+amWOU7+N30tScW0OHSXE1FaEo\nYPVlVcUdqoioESHPvMrL5KanIdu/SEvFvrar7D4jpb2w4QX72zMts6E9mKDw\n8qb0\r\n=+3dj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF8W54dXZgNjuCK3RYTSQMGmYWihh7ayB8jMjrjh5bXrAiBUBvbb6WmEH6dEeSIuIfcobCW61/KU4abr/EJbAFXqAg=="}]},"_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"directories":{},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@gmail.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"},{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_6.1.2_1613463406236_0.6609050061677453"},"_hasShrinkwrap":false},"6.1.3":{"name":"kinvey-cli","version":"6.1.3","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","eslint":"eslint bin config lib test","test-npm-security":"npm audit --production --audit-level=high"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.isplainobject":"4.0.6","lodash.isstring":"4.0.1","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","open":"7.0.4","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=12.16.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"df4d29cd4a7575222d9e0da58612f894ae8f1d58","_id":"kinvey-cli@6.1.3","_nodeVersion":"12.16.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-/Z+5HuXgMnWj7FABW/FkQ1DWR0r511MriAZ5MUnGt1jkQxznhG3TDvy8t/I87mZ6ezYVW4NkHFKSeNMyklWDXg==","shasum":"c9f62e29b76822b50337c7d7852044ebb10b5656","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-6.1.3.tgz","fileCount":65,"unpackedSize":518936,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQeAPCRA9TVsSAnZWagAA1KIP/3tOUcWVK8Wly07Q7VYr\n0URbkHvSwqVkjEJyKj5DiR4Agw59GX+Po2s+8GwIdYpL+P9fhyb+fBt6wWvL\n2dYCR60zcboDyBuPnEUK/yKypjEblrGTjT4ABSqkNhqYcwJM5+gWNY5ajCuc\nfC9EiBlTdEEd6bK8/Fqc5hE7V+VvelIjN3NhYGsduGlQR0k6tUV/57qtpwB8\n455hTNycLIyg+A7oSs8mVGhG5oVsWJWocb5Sk3kdHpSLDLC5lTpSHscwtOC0\ntOQb01BUQ7ZRwcRHtZebb37ehbSXB8Tkv4ppEb8UO+3MWBtvxMIrkuw7lCBO\nPWfdN7qvfTM78hzQKgiIIXg+lNoLFIHK4uutaI8bYSvNY0a3smuVw47anIOb\nzr4pnFunnObMKp3yGWydkrba3w9+7WLJpTqVbl0h+ocDS3D9LArSTtvQTBqT\ni+OfE71ckqQW87N9wA95LBFwxpyLLJFp6HA1iVml/ICpvK7ARgzCXXwJMJ19\nRrks2GmBmxzqZB8fFu9udtFSiiKb9uGEqd9AX/QRiU5WiYPQzeRDQElb0Wqn\nQU/X8Ow6s6dP6cSgBBBCCrDjbMEbCeLR996iSSrm49EjbcsDSewPH8vqj2Df\nYIwCd0Twgv1ezmcu5J/m6UF/az7+DOzRsO8Idjeuh6ysZrrH/1ISxN+z96to\n6Yde\r\n=USFw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFnkn34je7ndzeQIprtP9GuN8iOQtaSRO2Q1DSHtc/LwIgHFqpWdXS3l5vj7Tij3whiJeixl7H+ROSidNyG08WS/M="}]},"_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"directories":{},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@gmail.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"},{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_6.1.3_1614929935140_0.847603508788541"},"_hasShrinkwrap":false},"6.2.0":{"name":"kinvey-cli","version":"6.2.0","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","eslint":"eslint bin config lib test","test-npm-security":"npm audit --production --audit-level=high"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.isplainobject":"4.0.6","lodash.isstring":"4.0.1","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","open":"7.0.4","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=12.16.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"7a6c7d7bd73566d23c52dfe39ecaee8cd6f6750f","_id":"kinvey-cli@6.2.0","_nodeVersion":"12.16.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-UH3htmpXHNTUo/WP35caa9eTOinUNBGqBxKFHTT3NfegMlhUqxcZA+A5/aoVnWgeMEIuzlDjVfHAiM+J0o5/hA==","shasum":"94958e5585fbe392897c6e05b020fefc84642d01","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-6.2.0.tgz","fileCount":65,"unpackedSize":519544,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwJaqCRA9TVsSAnZWagAAxXQQAIW0El1B5ewjjGAm7uQy\nFgR/B6ZBeVhiRQm13lgvad4g4KJQ6Ql4uYPJHjzscQsDvcpha1We0HDwD6xq\nD+JSjyndajslK3zJEJRUqoqdnSvFzohlpnCJvECMmmlJNpcWYhYcERb8DvXx\nce2LZz9XaWNjjsGmG2uQdwzpXmPM3urcCKm08S/WGRXmMu0h4XqNU1un4Mo6\nVdeRk5oQ+h8TMBbP2QbBNIhgnsbW/wDNZNrnQhs0e4VcexFrhfVwEhk+GBi+\nApy5IAkts6tghEUEfBGm4aQEJYgj48t768YVZldqilCS70oOetMPgfjVuFZr\nOtC36IrwVYqoz7bRwCVhIsRMaT49rvgHsd1bE7i/Jm9MCCaG3NW7Z7o5iNpS\nlOXuvicPvUMFkGskxToWl7zU9DHxAjgOU9Zb5ThjcfS3pTGl0Dhj6P0q4JOi\nabSq4wUJHZQbkkFDq+u/d6zy/T3P0kvSb5rUfyS6FyMDCE6HNnodCzZ3ZLvS\nM1HrxpHrdzuhp4h/izNS37BFOGiQmN55tmrmMDHFGRK2f+7aW1Lh09/eMf4i\nBmsU+Ua2ZCBO5vcoGXiFgSxxKsQzWjL20/V4rk7Ndu/dwdYmF1KzKfp3Tx4N\nMrvfJwesqor8ak2rRbv77cxk8MFpRo+K6wlfVcAWrfJDUGIzf+dZzSR/z/rp\nxrR4\r\n=9EO9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC90xxbVs1Kogt13GgdLep2B2Ops3BeTDq6VGII4YjQYwIhAI1mV93i2hDtMf6/OTFPi7D9lid/02VDDaK9SDH8XRGi"}]},"_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"directories":{},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@gmail.com"},{"name":"sjl2024","email":"sjl2024@gmail.com"},{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_6.2.0_1623234218735_0.8217216123834012"},"_hasShrinkwrap":false},"6.2.1":{"name":"kinvey-cli","version":"6.2.1","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix ./bin/kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","eslint":"eslint bin config lib test","test-npm-security":"npm audit --production --audit-level=high"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.1","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.isplainobject":"4.0.6","lodash.isstring":"4.0.1","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.22.1","open":"7.0.4","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.3","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=12.16.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"a77c1ad225b96f957fad411a603747e7b969724d","_id":"kinvey-cli@6.2.1","_nodeVersion":"12.16.1","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ntQoFj95szDVNPTt8c7kgsU39rNyWXPoogrg1cIqEJBR7e557qBacbkA3sHllPb1HBb8x02KpjzPZ5F+3f4fHw==","shasum":"4d799142fd7d7ef052243d2f303283f6ef3d3792","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-6.2.1.tgz","fileCount":65,"unpackedSize":519828,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2xJ5CRA9TVsSAnZWagAAQZ0P/Rp5KPxsBDhTp3G2tstL\nJhg1Xd5rolsYBgAhTsPENvBXZwZ7lgPEMTe1UtoTzcRAUx2BxPcKafOqi7z4\n6d28K5yhUXwFQVcTvk+q9D/MiQlk3yLR3fj0gSkRIsIFIq8N2A0v5DZw71XB\ntEJTY1tdo4vrMkPull0Ak6O3jQ3QXZWwdqWXxMEu2XT8J3tXYZoHbYaEBNzn\noztxl906ZsEq+mbxYPUHZod20cq7dv4JqKxlKnbPEUeiFXHc2ZHlQQQL5yDe\nhlpcunqQ1zTZSQn0MvCo3fAHLZ4iajjxoytWnxYRdqAJyALFe7KAEzCWXvfD\n3HwlIzJ+/YuiP243JjTjBCRDUgVmmw4IrOkfWd/kTxwGu7yiO/jHpMKir63d\nX6tcPhZe/0LOcw7pi3WE+EVfY1xwkNPy7+Gv4Nvuls7DXIRM7AMpT6yD/RrC\nA2+w6iDNBmGGdWgcrBF8aUPG+36oKevc3pQxKzp9ejf5Tq7Nt0v17MfJc7Tz\nH/dRH3oVeKkrKplcIeJqqvX7lclUqd/t4KEgwnblJ9v3VeTP/GJCyWD0Rp1N\n/8I1qcXRydt8EjEj9STl+oBvl0ly0PrOQPmWwrzk6GG01fn+LtkZG/86LWhN\n4H7BpeDs0o461LgjPxluhi2HruO8mVWlf2yiR+aOmO3pm7wGJ7VxAsoEzoOC\nF887\r\n=0nJr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGbKTSdO7rGu6HcIb+7rZhb0/lr58kWbP13iNmbMgv+0AiAYSmvETaZsJo85pZOrEYbGLJPNKgmjiO2D9Yoe2sxgaA=="}]},"_npmUser":{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},"directories":{},"maintainers":[{"name":"mjsalinger","email":"mjsalinger@gmail.com"},{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_6.2.1_1636447808524_0.0468400943930245"},"_hasShrinkwrap":false},"6.2.2":{"name":"kinvey-cli","version":"6.2.2","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix .\\bin\\kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","eslint":"eslint bin config lib test","test-npm-security":"npm audit --production --audit-level=high"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.4","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.isplainobject":"4.0.6","lodash.isstring":"4.0.1","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.29.3","open":"7.0.4","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.6","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=12.16.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"10a39d3cb0ad542cc71f2d8fa0a12f68a63fd7fa","_id":"kinvey-cli@6.2.2","_nodeVersion":"12.22.12","_npmVersion":"6.14.16","dist":{"integrity":"sha512-G6DscSCX4OOI29gSyq9VlzSX1O5DOPYTEMbvAlzEr2U6L0U5d1guABkVJOE6moQgRUOg3hY+J+d14zs09m16XQ==","shasum":"f861ad706dd1a42821622d82374cb920d530e88c","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-6.2.2.tgz","fileCount":65,"unpackedSize":505082,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAwQ2QQSYrqbpDEv4dBuuMFylH8Nyi8q20BIME9f+QrrAiB7EpdwNKfGnRUX3/db9XR229oXbbDbVx5KimjHbltkfg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJigfkBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo7DA//ZzwJKRnjVXV3RzjDB+G9ADRSFs0G9/kSW+3/ElP200ypr7VT\r\nvEJPVFid0SO4E9BthAfcFTbVgXEWptl5L2znkYSs8hHLGevCliQx1HXSktCp\r\ndwGl8u+PvKooqtx1/wSzx9xnMAhNP45K3D12okIJM4jM5CAziUzpuzt1dYHk\r\neAK/0cyxoHGJO4FnZbvf4zj9cgkwTCp9nUAKQVvYMkh23H3hejtAsreTfjJH\r\nNZOotqSB5cGTeMa8oBdSDtDqSE0xkgdQ3WX3KSd6/eYIuccdnmZEK0obHGOE\r\noeRz/pW2ICyRAhfWAdLUIoCMEHNy5cXWQR4OlhyPI3FTkhIWJPq9wyh3XGlm\r\naXdzaR4k9tODj2GbwCmzFY/J+3TS8M1ZXfkLv8HsjN2jmAMop/pz5uDmHzpP\r\nWiZyD+Apjk/gXheeF7+o+HerI6eh/l8kqE79tk0K/9v+Ncy+/ngAfYUmfU+q\r\ns1AJSbEn7KpQplTDLwqUIPLSB3/KVEGb+fp3XF9RJkglFH7TMp5LCcg2OHrv\r\nzcJM0EiHsKJRlEDRvDEfzyL+mtvuJ9pyYNUS+hZ1yb+OhJOXuWoUrN2pPKff\r\nEc3zDPPqfC2mXIZi6HJIkUyp72vXYqK1vrl6dvr2Dof9B8FajkSFpIU6t3gS\r\n3yXHWCFdQ+9Fz2e4Pf26hybWVbYRdEu7tx8=\r\n=QzPk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"dimofeev","email":"dimo.mitev@progress.com"},"directories":{},"maintainers":[{"name":"dimofeev","email":"dimo.mitev@progress.com"},{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},{"name":"tsakata1","email":"tsvetomir.nedyalkov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_6.2.2_1652685057332_0.4409316780979142"},"_hasShrinkwrap":false},"6.2.3":{"name":"kinvey-cli","version":"6.2.3","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix .\\bin\\kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","eslint":"eslint bin config lib test","test-npm-security":"npm audit --production --audit-level=high"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.4","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.isplainobject":"4.0.6","lodash.isstring":"4.0.1","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.29.4","open":"7.0.4","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.6","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=12.16.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"0b71abaf5558ce52e45937d7f971f698056ea34d","_id":"kinvey-cli@6.2.3","_nodeVersion":"12.22.12","_npmVersion":"6.14.17","dist":{"integrity":"sha512-HcdsTPnFL09f7+cyPk9MWcQibeo2bMveUoI/2OFxcR3WQ3jPFcHNB5xq6jVsw+R42jT9Jji3sw2o3HuDi+jlQQ==","shasum":"e5e7d9a0d6d8c7f5e31917abcf55dacc5fca9b68","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-6.2.3.tgz","fileCount":65,"unpackedSize":505082,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDXDxRmmhDNZxDjx8vrWK+Y+bb2yZ0z9kQMvxNWzqZ/GgIhAKKNb5e3vOBFLm7Vf5lfyXqOIVhxj6HUMgexhZHpArFD"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj+JuRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqpaQ//c282wYE6ngBtl0am46hyeDCCDZBs+UI99EBgVgJB2uWvXO3h\r\nOVukQOTSdh/o8ou8mOQEJ2an+aaqXp8e7XczMD6JYtV9xoCyA4+qsjw/oWVW\r\n8lCEwSfD50373gUT8+EMHdhxmJqpD3tg4qYLtuMG7SIAg0jsUacfvq0VQmXr\r\nLn0GgZFI1gHwkZTz6c6zQ4is5C8kHM/Rz3NLAxF3jjXKahDCER/qJJtTsm0n\r\n1xmbX+5A8viwqbwAgVNmd63AfoKxLGVuYvDqC+dJd+BFXy2i8HWOSyE56WGV\r\n+YF4FlPjH8b1cvH44Y4/L7szn5bP554xdp6BxhWZrezeehGILNxXNPsWZAr9\r\n8Z2nvZHMgsUBlpPsSV1xZNAEGB/BOBPcbhkCcb3Ox3VCfh9NqVlOsFltNvff\r\nBXYoe6BGcLEtBMZpTNy2j9x9/sm1wgvWv2Opy2I7PA1k/3iPMMCVaKNo0nzV\r\nwoRPO7wk2WQJcl/PImk1H2c0x6T+ZNeKTg9LXK17prc41DSudnxKkVRcjoHT\r\n/PyAyjz5fUk2t/j1VfcjFndTwAmxc5yTcxXz70xdw7vMoDmdwDRvTEBBaDxE\r\nS2w1+MhcXRPUIEYS9a10w9v8emWQgUvRGwvzd+B22RqM+HAfI10LTp3TGzQD\r\nsM3KqyAqVdfJga/hMgw4pmdyHV2wrRqgGE8=\r\n=wcG1\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tsakata1","email":"tsvetomir.nedyalkov@gmail.com"},"directories":{},"maintainers":[{"name":"dimofeev","email":"dimo.mitev@progress.com"},{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},{"name":"tsakata1","email":"tsvetomir.nedyalkov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_6.2.3_1677237137701_0.0023007446729972347"},"_hasShrinkwrap":false},"6.2.4":{"name":"kinvey-cli","version":"6.2.4","description":"Command-line utility for managing various aspects of your Kinvey account","keywords":["Kinvey"],"homepage":"http://www.kinvey.com","bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","author":{"name":"Kinvey, Inc."},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"bin":{"kinvey":"bin/kinvey"},"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"scripts":{"start":"./bin/kinvey","prepublish":"dos2unix .\\bin\\kinvey","pretest":"npm run lint","lint":"eslint config lib test","test":"npm run test-unit && npm run test-integration","test-unit":"mocha test/unit --NODE_CONFIG_DIR=./test/config","test-integration-mock":"mocha test/integration","test-integration-no-mock":"mocha test/integration-no-mock/**/*.test.js","test-integration":"npm run test-integration-mock && npm run test-integration-no-mock","eslint":"eslint bin config lib test","test-npm-security":"npm audit --production --audit-level=high"},"dependencies":{"aes-js":"3.1.1","archiver":"1.0.1","async":"2.6.4","chalk":"2.1.0","config":"1.16.0","console.table":"0.10.0","inquirer":"0.12.0","isemail":"1.2.0","joi":"13.6.0","lodash.clonedeep":"4.5.0","lodash.findkey":"4.6.0","lodash.get":"4.4.2","lodash.isempty":"4.4.0","lodash.isequal":"4.5.0","lodash.isplainobject":"4.0.6","lodash.isstring":"4.0.1","lodash.merge":"4.6.2","lodash.omitby":"4.6.0","lodash.pick":"4.4.0","lodash.pickby":"4.6.0","lodash.sortby":"4.7.0","moment":"2.29.4","open":"7.0.4","request":"2.87.0","semver":"5.5.0","update-notifier":"0.5.0","uuid":"2.0.3","uuid-v4":"0.1.0","valid-url":"1.0.9","winston":"2.4.6","yargs":"10.0.3"},"devDependencies":{"body-parser":"1.18.2","chai":"3.3.0","dos2unix-cli":"1.0.1","eslint":"5.0.1","eslint-config-kinvey-platform":"github:kinvey/eslint-kinvey-platform#0.1.4","eslint-plugin-import":"2.13.0","express":"4.16.2","mocha":"5.0.4","sinon":"4.1.3","sinon-chai":"2.14.0","snap-shot-it":"6.1.9","strip-ansi":"4.0.0","suppose":"0.6.2","test-console":"1.0.0"},"engines":{"node":">=12.16.1"},"os":["darwin","linux","win32"],"preferGlobal":true,"yargs":{"boolean-negation":false,"camel-case-expansion":false},"gitHead":"d50eaac744b0ede6935155dd46ad00aeab2b784d","_id":"kinvey-cli@6.2.4","_nodeVersion":"12.22.12","_npmVersion":"6.14.17","dist":{"integrity":"sha512-bnaqRoXRpqglp3RTWmQaIEEoVVTSgdXYnYp24ipUJhIokha3NjYQquRT+xSKTVEb4cJjZ6ROpWUdYVnWNkECYg==","shasum":"6070b04ecaa270ef9f062800386494d4cdfafc00","tarball":"https://registry.npmjs.org/kinvey-cli/-/kinvey-cli-6.2.4.tgz","fileCount":65,"unpackedSize":505134,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQClV4zgRFpIzct2/mZiONo4tv6/wIyHVIhkdyPiObQ5GgIhAIafwdQoTKuvYf6UXL6gWTDgedimnzjNvkDhZJT5SwFa"}]},"_npmUser":{"name":"tsakata1","email":"tsvetomir.nedyalkov@gmail.com"},"directories":{},"maintainers":[{"name":"dimofeev","email":"dimo.mitev@progress.com"},{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},{"name":"tsakata1","email":"tsvetomir.nedyalkov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kinvey-cli_6.2.4_1685634427035_0.21428931720468114"},"_hasShrinkwrap":false}},"readme":"| LINTING            | UNIT          |   INTEGRATION          |  NPM SECURITY       |\n|-------------------|-------------------|-------------------|-------------------|\n| [![Build1][1]][5] | [![Build2][2]][5] |  [![Build3][3]][5] | [![Build4][4]][5] |\n\n[1]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/1\n[2]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/2\n[3]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/3\n[4]: https://travis-matrix-badges.herokuapp.com/repos/Kinvey/kinvey-cli/branches/master/4\n[5]: https://travis-ci.org/Kinvey/kinvey-cli\n\n\n\n\n# Kinvey CLI\n\nKinvey CLI is a utility for managing various aspects of your Kinvey account from the command line. Its features include:\n\n* Deploying and managing FlexServices running on the Kinvey FlexService Runtime\n* Deploying and managing websites\n* Creating, listing, and deleting applications\n* Creating, listing, and deleting app environments\n* Creating, listing, and deleting collections\n\nContents:\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [Commands](#commands)\n- [Global Options](#global-options)\n- [Environment Variables](#environment-variables)\n- [Getting Help](#getting-help)\n- [Getting Started](#getting-started)\n- [Managing Profiles](#managing-profiles)\n- [Authenticating One-time Commands](#authenticating-one-time-commands)\n- [Precedence of Configuration Options](#precedence-of-configuration-options)\n- [Output Format](#output-format)\n- [Flex Runtime Version Selection](#flex-runtime-version-selection)\n- [Proxy Settings](#proxy-settings)\n- [Configuration management](#configuration-management)\n- [Troubleshooting](#troubleshooting)\n- [Changelog](#changelog)\n- [License](#license)\n\n\n\n## Installation\n\nKinvey CLI is distributed as an NPM package. After you install NPM, run the following command to download and install Kinvey CLI.\n\n    npm install -g kinvey-cli\n\n## Usage\n\n    kinvey <command> [args] [options]\n\n## Commands\n\n* `init`\n\n   Prompts you to provide account credentials and instance ID and creates a new working profile for you based on the information you provided. Command-line options that specify the same data are ignored.\n\n* `profile create <name> [profile information]`\n\n   Creates a profile with the specified name. You can specify the profile information either at the command line as arguments or as environment variables. In the presence of command line argument, any values specified through environment variables are ignored.\n\n* `profile list`\n\n   Lists all existing profiles. Profiles are saved under the user home.\n   \n* `profile login [name]`\n\n    Re-authenticates a specified profile. If you omit the profile name, the active profile is used. Prompts for password and for two-factor authentication token if needed.\n\n* `profile show [name]`\n\n   Shows detailed information about the specified profile. If you omit the profile name, information about the active profile is shown.\n\n* `profile use <name>`\n\n   Sets an active profile.\n    \n* `profile delete [name]`\n\n   Deletes the specified profile or the active one if you don't specify a profile name.\n\n* `org apply`\n\n    Applies org configuration file to the specified org or to the active one.\n    \n    * `--org <organization>`\n               \n        Specifies a Kinvey organization by ID or name.\n        \n    * `--file <file path>`\n        \n        Specifies path to an organization configuration file. Required.\n\n* `org list`\n\n    Lists all existing organizations within your Kinvey account.\n    \n* `org show`\n\n    Shows detailed information about the specified organization or about the active one if you don't specify an organization. You can specify an organization by ID or name.\n\n    * `--org <organization>`\n           \n        Specifies a Kinvey organization by ID or name.\n          \n* `org use <org>`\n\n    Sets the specified organization as active. You can specify an organization by ID or name.\n    \n* `org export`\n    \n    Exports to a file the specified org or the active one. The organization services and the organization apps along with their services are exported in separate configuration files in the respective 'applications' and 'services' directories.\n    \n    * `--org <organization>`\n               \n        Specifies a Kinvey organization by ID or name.\n        \n    * `--file <file path>`\n            \n            Specifies path to file. Required.\n    \n* `app create <name>`\n\n    Creates an application in the specified organization or in the active one.\n    \n    * `--org <organization>`\n               \n        Specifies a Kinvey organization by ID or name.\n        \n    * `--file <file path>`\n            \n            Specifies path to an application configuration file.\n\n* `app apply`\n    \n    Applies app configuration file to the specified app or to the active one.\n    \n    * `--app <application>`\n               \n        Specifies a Kinvey app by ID or name.\n        \n    * `--file <file path>`\n            \n        Specifies path to an application configuration file. Required.\n    \n* `app list`\n\n    Lists all existing applications within your Kinvey account.\n    \n* `app show`\n\n    Shows detailed information about the specified application or about the active one if you don't specify an application.\n    \n    * `--app <application>`\n           \n        Specifies a Kinvey app by ID or name.\n\n* `app use <app>`\n\n    Sets the specified application as active. You can specify an application by ID or name.\n    \n* `app export`\n\n    Exports to a file the specified app or the active one. Also exports the app environments and the app services in separate files in the corresponding 'environments' and 'services' directories\n\n    * `--app <application>`\n               \n        Specifies a Kinvey app by ID or name.\n        \n    * `--file <file path>`\n            \n        Specifies path to file. Required.\n    \n* `app delete`\n\n    Deletes the specified application or the active one if you don't specify an application. You will be prompted for confirmation unless you set the `--no-prompt` flag.\n    \n    * `--app <application>`\n               \n        Specifies a Kinvey app by ID or name.\n              \n    * `--no-prompt`\n        \n        Do not ask for confirmation.\n\n* `appenv create <name>`\n\n    Creates an environment within the active application. To use a different application, specify it using `--app`.\n    \n    * `--app <application>`\n       \n        Specifies a Kinvey app by ID or name.\n        \n    * `--file <file path>`\n            \n        Specifies path to an app environment configuration file.\n      \n* `appenv apply`\n\n    Applies configuration (defined in file) to the specified environment or to the active one if you don't specify an environment. You can specify an environment by ID or name. By default, the command searches inside the active application but you can specify a different application using `--app`.\n    \n    * `--app <application>`\n           \n        Specifies a Kinvey app by ID or name.\n        \n    * `--env <environment>`\n              \n        Specifies a Kinvey app environment by ID or name.\n        \n    * `--file <file path>`\n            \n        Specifies path to an app environment configuration file. Required.\n    \n* `appenv show`\n\n    Shows detailed information about the specified environment or about the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`.\n    \n    * `--env <environment>`\n          \n        Specifies a Kinvey app environment by ID or name.\n    \n    * `--app <application>`\n       \n        Specifies a Kinvey app by ID or name.\n\n* `appenv use <env>`\n\n    Sets the specified environment as active. By default, the command searches inside the active application but you can specify a different application using `--app`.\n    \n    * `--app <application>`\n       \n        Specifies a Kinvey app by ID or name.\n\n* `appenv export`\n    \n    Exports to a file the specified app environment or the active one.\n    \n    * `--env <environment>`\n              \n        Specifies a Kinvey app environment by ID or name.\n        \n    * `--app <application>`\n           \n        Specifies a Kinvey app by ID or name.\n        \n    * `--file <file path>`\n            \n        Specifies path to file. Required.\n    \n* `appenv delete`\n\n    Deletes the specified environment or the active one if you don't specify an environment. By default, the command searches inside the active application but you can specify a different application using `--app`. You will be prompted for confirmation unless you set the `--no-prompt` flag.\n    \n    * `--env <environment>`\n          \n        Specifies a Kinvey app environment by ID or name.\n    \n    * `--app <application>`\n       \n      Specifies a Kinvey app by ID or name.\n      \n    * `--no-prompt`\n        \n        Do not ask for confirmation.\n\n* `coll create <name>`\n\n    Creates a collection within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\n    \n    * `--app <application>`\n       \n        Specifies a Kinvey app by ID or name. Requires `--env`.\n    \n    * `--env <environment>`\n      \n        Specifies a Kinvey app environment by ID or name.\n    \n* `coll list`\n\n    Lists all existing collections within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options.\n\n    * `--app <application>`\n       \n        Specifies a Kinvey app by ID or name. Requires `--env`.\n    \n    * `--env <environment>`\n      \n        Specifies a Kinvey app environment by ID or name.\n\n* `coll delete <coll>`\n    \n    Deletes a collection by name within the active application and environment. You can specify another pair of application and environment using the `--app` and `--env` options. You will be prompted for confirmation unless you set the `--no-prompt` flag.\n\n    * `--app <application>`\n       \n        Specifies a Kinvey app by ID or name. Requires `--env`.\n    \n    * `--env <environment>`\n      \n        Specifies a Kinvey app environment by ID or name.\n      \n    * `--no-prompt`\n        \n        Do not ask for confirmation.\n\n* `service create <name>`\n\n    Creates a service within an organization (either `--org <organization>`must be specified or active org must be set).\n      \n    * `--org <organization>`\n                \n      Specifies a Kinvey organization by ID or name.\n      \n    * `--file <file path>`\n            \n        Specifies path to a service configuration file. Required.\n\n* `service apply`\n\n    Applies a service configuration file to the specified service.\n    \n    * `--service <service>`\n        \n        Specifies service ID.\n        \n    * `--file <file path>`\n            \n        Specifies path to a service configuration file. Required.\n\n* `service export`\n\n    Exports the specified service to a file.\n    \n    * `--service <service>`\n        \n        Specifies service ID.\n        \n    * `--file <file path>`\n            \n        Specifies path to file. Required.\n\n* `flex init`\n\n   Configures Kinvey CLI to work with a specific Flex service and service environment combination through prompts. This command is designed to be executed in a Node.js project directory where it creates a `.kinvey` configuration file. Information within the file is saved per profile. Each successive execution in the same directory overwrites the respective profile section in the configuration file. This command requires that either an active profile is set or a profile is specified using the `--profile` option. Profile data options such as `--email`, `--password`, and `--instanceId` are ignored if specified. \n\n* `flex create <service_name>`\n\n    Creates an internal flex service with the specified name along with a service environment. You need to specify an organization using `--org <organization>` option or set an active one.\n          \n    * `--org <organization>`\n            \n        Specifies a Kinvey organization by ID or name.\n           \n    * `--secret <secret>`\n     \n        Specifies a shared secret of your choice (minimum 2 characters, no leading or trailing whitespaces). If you skip this option, a random shared secret is generated for you. In the latter case, Kinvey CLI will pass the secret automatically to the Flex Runtime and print it on the screen for your information.\n       \n    * `--env <service environment name>`\n    \n        Specifies a name for the default service environment that will be created with the service. The name will be set to Development if you omit this option.\n        \n    * `--vars, --set-vars <environment variables>`\n    \n        Specifies environment variables to set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\n        \n    * `--runtime <node6|node8|node10|node12>`\n    \n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection). Defaults to the [Kinvey-recommended Node.js version](https://devcenter.kinvey.com/guides/flexservice-runtime#environment).\n        \n* `flex deploy`\n\n   Deploys the current project to the Kinvey FlexService Runtime, using the current service and service environment combination, which is the one you initiated last on the current profile. To use a different service, specify its service ID.\n\n    * `--service <service>`\n    \n        Specifies service ID.\n        \n    * `--env <service environment>`\n    \n        Specifies a service environment by ID or name.\n        \n    * `--replace-vars <environment variables>`\n    \n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\n\n    * `--set-vars <environment variables>`\n    \n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\n    \n    * `--runtime <node6|node8|node10|node12>`\n        \n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection). Defaults to the [Kinvey-recommended Node.js version](https://devcenter.kinvey.com/guides/flexservice-runtime#environment).\n    \n\n* `flex status`\n\n   Displays the health of the current Flex service and service environment combination, which is the one you initiated last on the current profile, as well as version information, runtime information, deployment status, etc. To get the status of a different service, specify its service ID.\n\n    * `--service <service>`\n        \n        Specifies service ID.\n        \n    * `--env <service environment>`\n        \n        Specifies a service environment by ID or name.\n       \n* `flex show`\n   \n   Shows info about a service environment.\n            \n    * `--service <service>`\n            \n        Specifies service ID.\n         \n    * `--env <service environment>`\n        \n        Specifies a service environment by ID or name.\n            \n* `flex list`\n\n   Lists all Flex services for a certain organization, excluding external Flex services. Specify an organization using `--org <organization>`. If you skip specifying the `--org` option, the command lists the services within the organization you've configured as part of running `flex init`. If the project is not configured, then the command uses the active organization. In addition to the global options, this command supports the following options:\n\n    * `--org <organization>`\n                \n        Specifies a Kinvey organization by ID or name.   \n\n* `flex logs`\n\n   Retrieves and displays logs for the current Flex service environment. Log calls return 100 entries by default and can return up to 2,000 entries. Logs are displayed in the following format: `<runtime id> <timestamp> - <message>`. Combine with the paging and limiting options to narrow down your search. Logs for external Flex Services are not returned. In addition to the global options, this command supports the following options:\n\n    * `--service <service>`\n        \n        Specifies service ID.\n        \n    * `--env <service environment>`\n        \n        Specifies a service environment by ID or name.\n            \n   * `--from`\n\n      Timestamp specifying the beginning of a period for which you want to fetch log entries, in ISO 8601 format.\n\n   * `--number`\n\n      Number of entries to fetch, i.e. page size. The default is 100, the maximum allowed is 2000.\n\n   * `--page`\n\n      Page number to fetch. The first page is indexed 1.\n\n   * `--to`\n\n      Timestamp specifying the end of a period for which you want to fetch log entries, in ISO 8601 format.\n\n* `flex update`\n\n    Updates environment variables and/or runtime environment of the current Flex service environment, which is the one you initiated last on the current profile. To specify a different service, use `--service`. The command causes restart/rebuild of the service.\n\n    * `--service <service>`\n            \n        Specifies service ID.\n        \n    * `--env <service environment>`\n        \n        Specifies a service environment by ID or name.\n        \n    * `--replace-vars <environment variables>`\n        \n        Overwrite the full set of existing environment variables with a new set. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\n    \n    * `--set-vars <environment variables>`\n        \n        Specifies environment variables to set. If any of the variables already exist on the server, they are overwritten without prompt. Specify either as a comma-separated list of key-value pairs (key1=value1,key2=value2) or in stringified JSON format.\n\n    * `--runtime <node6|node8|node10|node12>`\n        \n        Specifies major Node.js version to run the project on. The minor and patch versions will vary depending on the [latest Flex Runtime updates](#flex-runtime-version-selection). Defaults to the [Kinvey-recommended Node.js version](https://devcenter.kinvey.com/guides/flexservice-runtime#environment).\n\n* `flex recycle`\n   \n   Recycles the current Flex service environment, which is the one you initiated last on the current profile. To recycle a different service, specify its service ID.\n\n    * `--service <service>`\n            \n        Specifies service ID.\n        \n    * `--env <service environment>`\n        \n        Specifies a service environment by ID or name.\n            \n* `flex delete`\n\n    Deletes the current Flex service, including all service environments inside it. The current service is the one you initiated last on the current profile. To delete a different service, specify its service ID. You will be prompted for confirmation unless you set the `--no-prompt` flag.\n    \n    * `--service <service>`\n            \n        Specifies service ID.\n    \n    * `--no-prompt`\n    \n        Do not ask for confirmation.\n\n* `flex clear`\n\n   When executed in a Node.js project directory, this command removes the current Flex Service configuration from the project.\n\n* `website create <name>`\n\n    Create a website. You need to specify an organization or set the active one.\n    \n    * `--org <organization>`\n                \n        Specifies a Kinvey organization by ID or name.\n        \n    * `--historyApiRouting`\n    \n        Enables server support for History API routing.\n        \n    * `--indexPage <index-page>`\n    \n        Specifies index page.\n        \n    * `--errorPage <error-page>`\n        \n        Specifies error page. Not allowed if `--historyApiRouting` is also specified.\n    \n* `website list`\n\n    List websites.\n    \n* `website show`\n\n    Shows info for the specified website.\n    \n    * `--website <website>`\n    \n        Website ID/name. Required.\n\n* `website deploy`\n\n    Deploy your website.\n    \n    * `--website <website>`\n    \n        Website ID/name. Required.\n        \n    * `--path <path>`\n    \n        Path to file or directory. Required.\n        \n    * `--force`\n        \n        Skip client-side validation - deploy even if there are no files for index page and/or error page.\n  \n* `website publish`\n\n    Publish your website - enable public access or change domain name.\n    \n    * `--website <website>`\n        \n        Website ID/name. Required.\n      \n    * `--domainName <domain-name>`\n            \n        Domain name. Required.\n        \n* `website status`\n\n    Status of the specified website.\n    \n    * `--website <website>`\n        \n        Website ID/name. Required.\n\n* `website unpublish`\n\n    Unpublish your website - disable public access.\n    \n    * `--website <website>`\n        \n        Website ID/name. Required.\n\n* `website delete`\n\n    Deletes the specified website.\n    \n    * `--website <website>`\n        \n        Website ID/name. Required.\n        \n    * `--no-prompt`\n        \n        Do not ask for confirmation.\n\n* `help`\n\n   Prints general usage instructions. For detailed command usage instruction, use the `--help` option with the command.\n\n## Global Options\n\nYou can add a global option to every Kinvey CLI command to get the described behavior. The only exceptions are `--email`, `--password`, `--instance-id` and `--2fa` which get ignored when added to a command that is designed to prompt for this information.\n\n* `--2fa <2fa-token>`\n\n    Two-factor authentication token. Applicable when two-factor authentication is enabled.\n\n* `--email <e-mail>`\n\n   Email address of your Kinvey account.\n\n* `--help, -h`\n\n   When used after a `kinvey-cli` command, shows its usage instructions.\n\n* `--instance-id <instance ID>`\n\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\n\n* `--no-color`\n\n    Disable colors.\n    \n* `--output <format>`\n   \n   Output format. Valid choices: json.\n\n* `--password <password>`\n\n   Password for your Kinvey account.\n\n* `--profile <profile>`\n\n   Profile to use.\n\n* `--version`\n\n   Prints the version number of `kinvey-cli`.\n\n* `--silent`\n\n   Suppresses any output. Useful for scripting.\n\n* `--suppress-version-check`\n\n   Prevents Kinvey CLI to check for new versions, which normally happens each execution.\n\n* `--verbose`\n\n   Prints additional debug messages.\n\n## Environment Variables\n\nUse environment variables to specify profile information for the `profile create` command when you don't want to specify it at the command line. Keep in mind that any values specified at the command line take precedence over the environment variable values.\n\nCommand-specific options can also be specified as environment variables. You just need to prefix the name of the option with `KINVEY_CLI_`. For example, `--no-prompt` becomes `KINVEY_CLI_NO_PROMPT` as environment variable.\n\n* `KINVEY_CLI_EMAIL`\n\n   Email address of your Kinvey account.\n\n* `KINVEY_CLI_PASSWORD`\n\n   Password for your Kinvey account.\n\n* `KINVEY_CLI_INSTANCE_ID`\n\n   ID (e.g., `kvy-us2`) or full hostname (e.g., `https://kvy-us2-manage.kinvey.com/`) of a Kinvey instance. It has a default value of `kvy-us1` (or `https://manage.kinvey.com/`) which most customers should use. If you are a customer on a dedicated Kinvey instance, enter your dedicated instance ID.\n\n* `KINVEY_CLI_2FA`\n\n    Two-factor authentication token.\n\n* `KINVEY_CLI_PROFILE`\n\n   Profile to use.\n   \nKinvey CLI also supports these universal environment variables:\n\n* `HTTPS_PROXY`/`https_proxy`\n\n   Routes all Kinvey CLI requests through the specified proxy server.\n\n\n## Getting Help\n\nKinvey CLI comes with a two-stage help system. You can either call the `help` command to see an overview of the available commands or request details about a command usage with the `-h` flag.\n\n    kinvey help\n\n    kinvey flex -h\n\n    kinvey flex logs -h\n\n\n## Getting Started\n\nKinvey CLI requires you to authenticate. The fastest way to get started is to run the `kinvey init` command. It prompts for credentials and hostname and creates a working profile for you, which stores the provided settings for future executions.\n\nNote that you only need to specify an instance ID if you are on a dedicated Kinvey instance. Otherwise just press Enter to continue.\n\nWhen prompted for `Profile name`, enter a name for your new working profile that Kinvey CLI will create for you. Kinvey CLI will use this profile automatically for future executions as long as it is the only profile on the system. You can create new profiles and select an active profile if you need to.\n\n```\n$ kinvey init\n? E-mail john.doe@kinvey.com\n? Password ***********\n? Instance ID (optional) kvy-us1\n? Profile name dev\n```\n\nYou can run `kinvey init` from any directory as it always writes your new profile in your home directory.\n\nNext, you need to configure Kinvey CLI to connect to a Flex Service that you've already created using the Kinvey Console or through `kinvey flex create <service-name>`.\n\nFor the following commands, you need to switch to the Node.js project directory that you will be deploying as a Flex Service as the configuration they create and read is project-specific.\n\n```\ncd <node.js project dir>\nkinvey flex init\n```\n\nThrough a series of prompts, this command will ask you for an organization in which to operate and a Flex Service to deploy to.\n\nFinally, you are ready to deploy your Node.js project as a Flex Service.\n\n    kinvey flex deploy\n    \nAlongside the deploy you can set environment variables for your service. If both names and values are void of the equality sign (`=`) and comma (`,`), you can use the shorthand syntax:\n\n    kinvey flex deploy --set-vars \"MY_APP_A=valueA,MY_APP_B=valueB\" \n    \nOtherwise you need to specify environment variables in stringified JSON format:\n\n    kinvey flex deploy --set-vars \"{\\\"MY_APP_A\\\":[\\\"value 1\\\", \\\"value 2\\\"], \\\"MY_APP_B\\\":\\\"valueB\\\"}\"\n\n**Note**: Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\n\n## Managing Profiles\n\nAnother way to create working profiles, besides running `kinvey init`, is invoking `kinvey profile create <name>`. You can choose between providing the credentials at the command line or as preset [environment variables](#environment-variables).\n\n    kinvey profile create dev --email john.doe@kinvey.com --password john'sPassword --instanceId kvy-us2\n\nYou can create multiple profiles and specify which one to use at the command line.\n\n    kinvey flex init --profile dev\n\nIf you don't want to specify a profile every time, you can set one as active and it will be used for future executions:\n\n    kinvey profile use dev\n\n\n**Note**: If you have a single profile, you can skip setting it as active as well as providing it as a command line option. It will be used if no other credentials are provided.\n\n### Authentication Token Expiration\n\nAs part of creating a working profile, the authentication token provided by Kinvey is stored locally. This token will be used to authenticate future command executions until it expires. At that point, you need to reenter your password or recreate the profile to keep working with Kinvey CLI. Run `kinvey profile login` to reenter your password. You can recreate the profile by providing the profile name to `kinvey init` or `kinvey profile create`.\n\n## Authenticating One-time Commands\n\nEvery command that requires authentication can take credentials and a hostname as command line options. If a hostname is not provided, its default value is used.\n\n    kinvey flex status --service <service-id> --email <email> --password <password>\n\nYou can also provide the same information through environment variables before running the command.\n\n**Linux, macOS**\n```\nexport KINVEY_CLI_EMAIL=<email>\nexport KINVEY_CLI_PASSWORD=<password>\nexport KINVEY_CLI_INSTANCE_ID=<instance ID>\n```\n\n**Windows**\n```\nset KINVEY_CLI_EMAIL=<email>\nset KINVEY_CLI_PASSWORD=<password>\nset KINVEY_CLI_INSTANCE_ID=<instance ID>\n```\n\n## Precedence of Configuration Options\n\nFor the Kinvey CLI commands that require passing configuration values, the following precedence order applies.\n\n* Command line options&mdash;take precedence when specified\n* Environment variables&mdash;the first choice when command line arguments are missing\n* Profile data&mdash;values saved as part of the applicable working profile are used if neither command line arguments nor environment variables are set\n\n\n## Output Format\n\nKinvey CLI supports two output formats: plain text and JSON. Both are printed on the screen unless you redirect the output using shell syntax.\n\nPlain text is printed by default. Depending on the command, it produces tabular data or a simple message stating that the action has completed successfully.\n\nThe JSON output format is suitable for cases where the output must be handled programmatically. It could be further processed using a tool like jq (command-line JSON processor). You can run any command with `--output json`. The output will then have the following format:\n\n```\n{\n    \"result\": [result]\n}\n```\n\n## Flex Runtime Version Selection\n\nFlex projects that you deploy run server-side on the Flex Runtime which represents a preconfigured Node.js environment. When creating a project and later when running it, you can select a Node.js version for the project to run on using the `--runtime` option. To see the available runtime versions, run `kinvey flex deploy --help`.\n\nThe runtime selection is limited to the major Node.js version. The minor and patch versions are always determined by the Flex Runtime.\n\nNew Flex services deploy on the [Kinvey-recommended Node.js version](https://devcenter.kinvey.com/guides/flexservice-runtime#environment) unless otherwise specified.\n\nAfter you deploy a Flex project, it remains on the same Node.js version until you upgrade it to a new major version or Kinvey decides to upgrade the project's runtime to a more recent minor and patch version because of security or efficiency reasons.\n\n## Proxy Settings\n\nKinvey CLI supports the universal environment variables `HTTPS_PROXY` and `https_proxy` for routing commands through a proxy server. Set it if you are using a proxy.\n\n\n    export HTTPS_PROXY=proxy.local\n\n\n## Configuration management\n\nKinvey CLI supports the usage of configuration files (JSON format) to enable configuring certain aspects of the backend.\n\n**Organizations** can be modified by applying an organization configuration file. The file can contain applications and org-level services.\n\n**Applications** can be created and modified by applying an application configuration file. The file can contain app environments.\n\n**Environments** can be created and modified by applying an environment configuration file. The file can contain: environment-related settings, collections, business logic, roles, push settings.\n\n**Services** can be created and modified by applying a service configuration file. Supported services: internal flex, external flex, REST, Sharepoint, Salesforce, MS SQL, ProgressData, DataDirect, Rapid health.\n\n### Environment configuration file\n\nThe environment configuration file can be used to create a brand new environment or to modify an existing one. It is easiest to generate the file by 'exporting' an existent environment and making the necessary modifications. To export an environment run:\n \n ```\nkinvey appenv export (--file <file-path>) [--env <env>] [--app <app>]\n```\n\nAlternatively, the environment template beneath can be used and modified as needed.\n\nTo create an environment from a configuration file run:\n ```\nkinvey appenv create <envName> (--file <file-path>) (--app <AppNameOrID>)\n```\n\nTo apply a configuration file to an existent environment run:\n ```\nkinvey appenv apply [--file <file-path>] (-env <env>) (--app <app>)\n```\n\nBefore an environment config file gets applied a check will be executed to verify JSON is valid and parameter values are allowed. If the check passes successfully, Kinvey CLI will start applying the changes. In the case of a new environment it will simply try to create all the entities described in the file. \n\nWhen the file is being applied to an existent environment then existent entities could be updated and new ones can be created. The CLI won't delete any entities even if they are not included in the file. Hence, if you want to create new endpoints but don't want to modify any existent collections for example, then you can exclude them from the configuration to have the file being applied faster.\n\nConfig files generated by the export command contain only the name of the iOS push notification certificate, and not the actual certificate. To apply the exported config file and have valid push settings, you need to replace `push.ios.certificateFilename` with `push.ios.certificateFilePath` - the path to the actual certificate on your machine. Another alternative is removing the `push.ios` field - however, this means that the iOS push settings won't be applied or will be removed if the config file is applied to an environment with configured iOS push settings.\n\nIf an error occurs, the CLI stops applying the file and outputs the error message.\n\n#### Environment sample config file\n\n```\n{\n  \"schemaVersion\": \"1.0.0\",\n  \"configType\": \"environment\",\n  \"settings\": {\n    \"apiVersion\": 3,\n    \"emailVerification\": {\n      \"required\": false\n    }\n  },\n  \"collections\": {\n    \"myCollection\": {\n      \"type\": \"internal\",\n      \"permissions\": \"shared\"\n    },\n    \"anotherCollection\": {\n      \"type\": \"external\",\n      \"permissions\": \"shared\",\n      \"service\": \"awesomeService\",\n      \"serviceEnvironment\": \"development\",\n      \"serviceObject\": \"awesomeServiceObject\"\n    }\n  },\n  \"commonCode\": {\n    \"my-common-code\": {\n      \"code\": \"var commonLogic = {};\\ncommonLogic.print = function print(msg) {\\n  console.log(msg);\\n};\"\n    },\n    \"another-common-code\": {\n      \"codeFile\": \"./another-common-code.js\"\n    }\n  },\n  \"collectionHooks\": {\n    \"myCollection\": {\n      \"onPreSave\": {\n        \"type\": \"internal\",\n        \"code\": \"function onPreSave(request, response, modules) {\\n  response.continue();\\n}\"\n      },\n      \"onPostSave\": {\n        \"type\": \"external\",\n        \"service\": \"awesomeService\",\n        \"serviceEnvironment\": \"development\",\n        \"handlerName\": \"awesomeHandler\"\n      }\n    }\n  },\n  \"customEndpoints\": {\n    \"myEndpoint\": {\n      \"type\": \"internal\",\n      \"codeFile\": \"./my-endpoint.js\",\n      \"schedule\": {\n        \"start\": \"2019-07-22T16:35:00Z\",\n        \"interval\": \"5-minutes\"\n      }\n    },\n    \"anotherEndpoint\": {\n      \"type\": \"external\",\n      \"service\": \"awesomeService\",\n      \"serviceEnvironment\": \"development\",\n      \"handlerName\": \"anotherHandler\"\n    }\n  },\n  \"roles\": {\n    \"Intern\": { \"description\": \"Interns\" },\n    \"Employee\": { \"description\": \"Employees\" }\n  },\n  \"groups\": {\n    \"myGroup\": {\n      \"description\": \"Description here\",\n      \"groups\": [ \"otherGroup\" ]\n    },\n    \"otherGroup\": {\n      \"description\": \"Part of 'myGroup'\"\n    }\n  },\n  \"push\": {\n  \t\"android\": {\n  \t  \"senderId\": \"id123\",\n  \t  \"apiKey\": \"key123\"\n  \t},\n  \t\"ios\": {\n  \t  \"production\": false,\n  \t  \"certificateFilePath\": \"./mycertdev.p12\"\n  \t}\n  }  \n}\n```\n\n#### Allowed fields:\n\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\n\n`configType` *environment|service* The configuration type. Required.\n\n`settings` Environment settings. Optional.\n\n`settings.apiVersion` The default REST API version for this env.\n\n`settings.emailVerification` Options regarding email verification for users of this environment. Optional.\n                             \n`settings.emailVerification.required` *true|false* If true, users who have not verified their email will not be able to access the environment. Required.\n\n`settings.emailVerification.auto` *true|false* If true, automatically send a email verification request to all new users created within the environment. Optional.\n\n`settings.emailVerification.since` ISO-8601 date. If specified, any user created before this date will not need a verified email in order to access the environment. Optional.\n\n`settings.passwordReset` Password reset URL. Optional.\n\n`collections` Environment collections. Optional. Object. Each first-level property is the name of a collection and contains an object describing this collection.\n\n`collections.[collectionName].type` *internal|external* If external, then the collection is backed by a flex service. Required.\n\n`collections.[collectionName].permissions` Collections permissions. Required. Could be a string or an object. Allowed string values: private, full, shared, read-only. To specify roles, use an object in the following format:\n```\n\"permissions\": {\n  [roleName]: {\n    [operation]: [accessType]\n  }\n}\n```\nwhere **operation** is one of: *create, read, update, delete*\n\nand **accessType** is one of: *never, always, grant, entity*\n\nTo specify the built-in **All users** role, use *all-users*.\n \n Example:\n\n```\n\"permissions\": {\n  \"all-users\": {\n    \"read\": \"always\"\n  },\n  \"Employee\": {\n    \"create\": \"always\",\n    \"read\": \"always\",\n    \"update\": \"always\",\n    \"delete\": \"grant\"\n  }\n}\n```\n\n`collections.[collectionName].service` Service to connect the collection to. Either service name or ID. Collection type must be set to 'external'.\n\n`collections.[collectionName].serviceEnvironment` Service environment to connect the collection to. Collection type must be set to 'external'.\n\n`collections.[collectionName].serviceObject` Service object. Collection type must be set to 'external'.\n\n`commonCode` Common code functions. Optional. An object where each first-level property is the name of the common code script.\n\n`commonCode.[commonCodeName].code` Code. Either `code` or `codeFile` must be set.\n \n`commonCode.[commonCodeName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` must be set.\n\n`collectionHooks` Collection hooks. Optional. An object where each first-level property is the name of a collection.\n\n`collectionHooks.[collectionName].[hookName]` *onPreSave|onPreFetch|onPreDelete|onPreLogin|onPreInsert|onPreUpdate|onPostSave|onPostFetch|onPostUpdate|onPostInsert|onPostDelete|onLoginFailure|onLoginFailure* Hook type.\n \n`collectionHooks.[collectionName].[hookName].type` *internal|external* External if a service is involved. Required.  \n\n`collectionHooks.[collectionName].[hookName].code` Code. Either `code` or `codeFile` can be set.\n\n`collectionHooks.[collectionName].[hookName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\n\n`collectionHooks.[collectionName].[hookName].service` Service to use. Collection hook type must be set to 'external'.\n\n`collectionHooks.[collectionName].[hookName].serviceEnvironment` Service environment to use. Collection hook type must be set to 'external'.\n\n`collectionHooks.[collectionName].[hookName].handlerName` Handler name. Collection hook type must be set to 'external'.\n\n`customEndpoints` Custom endpoints. Optional. Object where each first-level property is the name of an endpoint.\n\n`customEndpoints.[endpointName].type` *internal|external* External if a service is involved. Required. \n\n`customEndpoints.[endpointName].code` Code. Either `code` or `codeFile` can be set.\n\n`customEndpoints.[endpointName].codeFile` Path to code - relative or absolute. Either `code` or `codeFile` can be set.\n\n`customEndpoints.[endpointName].service` Service to use. Endpoint type must be set to 'external'.\n\n`customEndpoints.[endpointName].serviceEnvironment` Service environment to use. Endpoint type must be set to 'external'.\n\n`customEndpoints.[endpointName].handlerName` Handler name. Endpoint type must be set to 'external'.\n\n`customEndpoints.[endpointName].schedule` Object describing how to schedule the endpoint. Optional.\n\n`customEndpoints.[endpointName].schedule.start` The code will be scheduled to start running at this date and time. ISO-8601 datetime. Required.\n\n`customEndpoints.[endpointName].schedule.interval` *weekly|daily|hourly|30-minutes|10-minutes|5-minutes|1-minute* At what intervals to execute the code. Optional.\n\n`roles` Roles. Optional. Object where each first-level property is the name of a role.\n\n`roles.[roleName].description` Role description. String. Optional.\n\n`groups` Groups. Optional. Object where each first-level property is the ID of a group. For example if the name is 'My group', then an appropriate ID could be 'myGroup' or 'my-group'.\n\n`groups.[groupId].name` Name. Optional.\n\n`groups.[groupId].description` Description. Optional.\n\n`groups.[groupId].groups` Nested groups. Optional. An array of other groups IDs.\n\n`push` Push notifications settings. Optional. Object.\n\n`push.android` Object describing Android settings. Optional.\n\n`push.android.senderId` Sender ID. Required.\n\n`push.android.apiKey` API Key. Required.\n\n`push.ios` Object describing iOS settings. Optional.\n\n`push.ios.production` *true|false* If false, then it is a development certificate. Required.\n\n`push.ios.certificateFilePath` Path to certificate - relative or absolute. Required.\n\n`push.ios.password` Certificate password. Optional.\n\n### Service configuration file\n\nThe service configuration file can be used to create a brand new service or to modify an existing one (excluding Auth services).\n\nTo create a service from a configuration file run:\n ```\nkinvey service create <serviceName> <file-path> [--org OrgNameOrId]\n```\n\nThe service will be accessible only to the chosen organization and its apps.\n\nTo apply a configuration file to an existent service run:\n ```\nkinvey service apply [--file <file-path>] [--service <service-ID>]\n``` \n\nWhen a new internal flex service is created the CLI will attempt a deploy if `sourcePath` is set to the project root directory. \n\nWhen an existent internal flex service is updated and `sourcePath` is set, the CLI will attempt to deploy only if the version defined in `package.json` is higher then the cloud version. Otherwise, deployment procedure will be skipped.\n\nThe following service templates can be used and modified as needed:\n\n#### `flex-internal` service sample config file\n\n```\n{\n  \"schemaVersion\": \"1.0.0\",\n  \"configType\": \"service\",\n  \"type\": \"flex-internal\",\n  \"environments\": {\n    \"dev\": {\n      \"secret\": \"123\",\n      \"description\": \"Some description here\",\n      \"environmentVariables\": {\n        \"MY_KEY\": \"my value\"\n      }\n    }\n  }\n}\n```\n\n#### `data-rest` service sample config file\n\n```\n{\n    \"schemaVersion\": \"1.0.0\",\n    \"configType\": \"service\",\n    \"type\": \"data-rest\",\n    \"environments\": {\n        \"Default\": {\n            \"host\": \"http://www.test.com\",\n            \"authentication\": {\n                \"type\": \"None\",\n                \"credentials\": {\n                    \"mapTo\": {\n                        \"decode\": false\n                    }\n                },\n                \"loginOptions\": {\n                    \"type\": \"noLogin\",\n                    \"headers\": {},\n                    \"querystring\": {},\n                    \"body\": {}\n                }\n            },\n            \"connectionOptions\": {\n                \"strictSSL\": false,\n                \"rejectUnauthorized\": false,\n                \"headers\": {},\n                \"querystring\": {}\n            },\n            \"mapping\": {\n                \"users\": {\n                    \"sourceObject\": {\n                        \"primaryKey\": {\n                            \"type\": \"string\",\n                            \"name\": \"Id\"\n                        },\n                        \"endpoint\": \"/users\",\n                        \"httpMethod\": \"GET\",\n                        \"queryMapping\": {\n                            \"query\": \"header\"\n                        },\n                        \"querystring\": {\n                            \"query_param_name\": \"query_param_value\"\n                        },\n                        \"headers\": {\n                            \"header_name\": \"header_value\"\n                        }\n                    },\n                    \"fields\": [\n                        {\n                            \"kinveyFieldMapping\": \"username\",\n                            \"sourceFieldMapping\": \"username\"\n                        },\n                        {\n                            \"kinveyFieldMapping\": \"_id\",\n                            \"sourceFieldMapping\": \"userId\"\n                        }\n                    ],\n                    \"methods\": {\n                        \"getAll\": {\n                            \"isEnabled\": true\n                        },\n                        \"getById\": {\n                            \"isEnabled\": false\n                        },\n                        \"insert\": {\n                            \"isEnabled\": true\n                        },\n                        \"update\": {\n                            \"isEnabled\": false\n                        },\n                        \"deleteById\": {\n                            \"isEnabled\": false\n                        },\n                        \"deleteByQuery\": {\n                            \"isEnabled\": false\n                        },\n                        \"getCount\": {\n                            \"isEnabled\": true\n                        },\n                        \"getCountByQuery\": {\n                            \"isEnabled\": false\n                        }\n                    }\n                }\n            }\n        }\n    }\n}\n```\n\n#### Allowed fields:\n\n`schemaVersion` The schema version the CLI supports. Required. Current: 1.0.0\n\n`configType` *environment|service* The configuration type. Required.\n\n`type` *flex-internal|flex-external|data-rest|data-sharepoint|data-salesforce|data-mssql|data-progress|data-direct|data-health* Service type. Required.\n \n`description` Service description. String. Optional.\n \n`environments` Service environments. Object where each first-level property is the name of a service environment. Optional.\n \n `environments.[envName].secret` Shared secret to use when communicating with the service. Аpplicable and required for 'flex-internal' and 'flex-external'\n \n`environments.[envName].host` URI pointing to the service server's location. Required for all service types except 'flex-internal' and 'data-health'.\n\n`environments.[envName].sourcePath` Path to source code - relative or absolute. Optional. Applicable when `type` is 'flex-internal'.\n\n`environments.[envName].runtime` The nodejs version of the runtime. Optional. The value must be one of [node6, node8, node10, node12]. Applicable when `type` is 'flex-internal'.\n\n`environments.[envName].authentication` Authentication type and credentials. Object. Optional. Applicable for 'data-rest', 'data-sharepoint', 'data-salesforce', 'data-mssql', 'data-progress', 'data-direct' and 'data-health' service types\n\n`environments.[envName].connectionOptions` Connection options. Object. Optional. Applicable for 'data-rest', 'data-sharepoint', 'data-salesforce', 'data-mssql', 'data-progress', 'data-direct' and 'data-health' service types.\n\n`environments.[envName].mapping` Contains the source object, the source fields mapping and the supported operations. Object. Optional. Applicable for 'data-rest', 'data-sharepoint', 'data-salesforce', 'data-mssql', 'data-progress', 'data-direct' and 'data-health' service types.\n\n`environments.[envName].version` The version of the source server. Object. Optional. Applicable when `type` is 'data-sharepoint' or 'data-mssql'.\n\n`environments.[envName].environmentVariables` Environment variables. Object. Optional. Applicable when `type` is 'flex-internal'.\n\n## Troubleshooting\n\nRun any command with the `--verbose` flag to receive more detailed information about a command execution.\n\n### Caveats\n\nKinvey CLI is a subject to the following caveats:\n\n- The CLI has a 10-second request timeout when communicating with the backend for initialization which may cause a connection error in some rare cases. Retrying the command remedies the problem in many cases.\n- If you are using a profile that has been configured a while ago, you may stumble upon the `InvalidCredentials` error. It may mean that the session token has expired. See [Authentication Token Expiration](#authentication-token-expiration) for details.\n- You cannot deploy the same service version to the FlexService Runtime more than once. You must increment the version in `package.json` before redeploying.\n- Kinvey CLI sends binary data (content type \"multipart/form-data\") during the deploy process. The deploy job will fail if traffic of this type is blocked within your network.\n- There is a limit of 100 MB to the size of the FlexService logs that are kept on the backend. When log entries exceed that size, the oldest ones are deleted.\n- Running the CLI from Git Bash on Windows is known to cause issues ranging from failing commands to complete inability to start. Use Windows Command Prompt instead.\n\nIf problems persist, contact [Kinvey](http://support.kinvey.com).\n\n### Support for Service Environments\n\nKinvey CLI version 4.1.0 introduces support for environments inside Flex services coinciding with the release of this feature on the backend. When upgrading from a previous Kinvey CLI version, have the following caveats in mind:\n\n- The `flex init` interactive command prompts for service environment selection in version 4.1.0 and later if the service contains multiple environments.\n- Node.js projects configured with `flex init` with a Kinvey CLI version predating 4.1.0 do not contain a service environment ID. Therefore:\n    - We recommend rerunning the `flex init` command on these projects.\n    - Flex commands targeting the current service will continue to work as long as the service has a single environment.\n    - Flex commands targeting the current service will error out if you create additional environments inside the service and don't include `--env`.\n- Flex commands specifying a particular service using `--service` must include `--env` if the service has multiple environments. You can omit `--env` if the service has a single environment.\n\n## Changelog\n\nSee the [Changelog](./CHANGELOG.md) for a list of changes.\n\n## License\n\n    Copyright (c) 2018, Kinvey, Inc. All rights reserved.\n\n    This software is licensed to you under the Kinvey terms of service located at\n    http://www.kinvey.com/terms-of-use. By downloading, accessing and/or using this\n    software, you hereby accept such terms of service  (and any agreement referenced\n    therein) and agree that you have read, understand and agree to be bound by such\n    terms of service and are of legal age to agree to such terms with Kinvey.\n\n    This software contains valuable confidential and proprietary information of\n    KINVEY, INC and is subject to applicable licensing agreements.\n    Unauthorized reproduction, transmission or distribution of this file and its\n    contents is a violation of applicable laws.\n","maintainers":[{"name":"dimofeev","email":"dimo.mitev@progress.com"},{"name":"dedimitr","email":"denitsa.dimitrova@progress.com"},{"name":"tsakata1","email":"tsvetomir.nedyalkov@gmail.com"}],"time":{"modified":"2023-06-01T16:08:20.352Z","created":"2016-11-10T16:20:43.526Z","1.0.0":"2016-11-10T16:20:43.526Z","1.0.1":"2016-11-16T01:19:27.747Z","1.0.2":"2016-11-16T02:16:04.504Z","1.1.0":"2017-01-09T16:43:02.060Z","1.1.1":"2017-01-12T17:05:04.995Z","1.1.2":"2017-01-26T20:00:52.298Z","1.1.3":"2017-02-25T17:15:48.043Z","1.1.4":"2017-05-05T14:51:53.664Z","1.1.5":"2017-06-20T14:27:47.193Z","1.2.0-rc.1":"2017-07-12T18:56:31.409Z","1.2.0":"2017-07-25T15:00:49.023Z","1.2.1":"2017-07-26T00:56:56.876Z","2.0.0-beta.0":"2017-09-19T16:32:15.125Z","2.0.0-beta.1":"2017-09-19T20:04:31.112Z","2.0.0":"2017-10-05T02:11:10.295Z","2.1.0":"2017-10-26T22:25:30.302Z","3.0.0-beta.0":"2017-12-14T17:07:16.378Z","3.0.0-beta.1":"2018-01-04T09:09:51.806Z","3.0.0-beta.2":"2018-02-09T10:30:36.547Z","3.0.0-beta.3":"2018-02-13T20:11:13.967Z","3.0.0-beta.4":"2018-02-21T20:45:51.080Z","3.0.0":"2018-02-26T14:25:34.785Z","3.1.0":"2018-04-13T08:51:48.236Z","4.0.0-beta.0":"2018-04-24T09:54:45.312Z","4.0.0-beta.1":"2018-05-28T12:42:00.674Z","4.1.0-alpha.0":"2018-06-21T12:54:45.099Z","4.1.0-alpha.1":"2018-06-25T14:14:06.625Z","3.1.1":"2018-07-20T11:27:20.548Z","4.0.0-beta.2":"2018-07-20T11:41:54.687Z","4.1.0-alpha.2":"2018-07-20T11:55:50.019Z","4.0.0-beta.3":"2018-08-24T10:21:40.628Z","3.1.2":"2018-09-25T08:41:41.116Z","4.0.0":"2018-11-08T07:05:31.264Z","4.0.1":"2018-11-21T14:22:42.872Z","4.1.0-alpha.3":"2018-11-21T14:46:24.406Z","4.1.0":"2018-11-27T15:18:35.565Z","4.1.1":"2018-11-29T11:21:56.680Z","5.0.0-alpha.0":"2018-12-14T13:42:44.227Z","4.4.0-alpha.0":"2018-12-14T14:15:54.339Z","4.4.0-alpha.1":"2019-02-04T09:35:53.170Z","4.1.2":"2019-03-05T11:02:02.793Z","4.4.0-alpha.2":"2019-03-05T11:25:40.646Z","4.1.3":"2019-03-20T15:20:33.945Z","4.4.0-alpha.3":"2019-04-12T11:32:49.519Z","4.4.0-alpha.4":"2019-04-19T06:07:22.493Z","4.4.0":"2019-04-25T12:41:49.817Z","4.5.0":"2019-05-16T13:20:09.499Z","4.5.1":"2019-08-01T11:36:30.386Z","4.5.2":"2019-09-19T13:23:52.679Z","5.0.0-alpha.1":"2019-10-11T06:14:10.414Z","5.0.0":"2019-11-28T11:57:57.194Z","6.0.0":"2020-07-02T12:58:46.581Z","6.1.0":"2020-09-14T14:35:49.438Z","6.1.1":"2020-10-30T10:55:52.472Z","6.1.2":"2021-02-16T08:16:46.378Z","6.1.3":"2021-03-05T07:38:55.403Z","6.2.0":"2021-06-09T10:23:38.870Z","6.2.1":"2021-11-09T08:50:08.654Z","6.2.2":"2022-05-16T07:10:57.520Z","6.2.3":"2023-02-24T11:12:17.858Z","6.2.4":"2023-06-01T15:47:07.158Z"},"homepage":"http://www.kinvey.com","keywords":["Kinvey"],"repository":{"type":"git","url":"git+https://github.com/Kinvey/kinvey-cli.git"},"contributors":[{"name":"Mark van Seventer","email":"mark@kinvey.com"},{"name":"Sam Levin","email":"sam@kinvey.com"}],"author":{"name":"Kinvey, Inc."},"bugs":{"url":"https://github.com/Kinvey/kinvey-cli/issues"},"license":"Apache-2.0","readmeFilename":"README.md"}