{"_id":"@getbrevo/cli","_rev":"27-e0fa2fddb5999e76260e917c54494d99","name":"@getbrevo/cli","dist-tags":{"alpha":"0.0.1-alpha.1","latest":"2.3.0"},"versions":{"0.0.1-alpha.1":{"name":"@getbrevo/cli","version":"0.0.1-alpha.1","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Piyush Sarin"},"license":"MIT","_id":"@getbrevo/cli@0.0.1-alpha.1","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"4c6b4c2782aafd3a6996fb92400ca763495d7bd8","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-0.0.1-alpha.1.tgz","fileCount":171,"integrity":"sha512-PbRjNEy7bZbwTgMdhggOaSPWVWwJFQOOuXsbIfETLYaALjF7BDy1+JtzJp9Fr59pOAyKoaWDVzbAfpTdK6audQ==","signatures":[{"sig":"MEUCIG4ujFDxwCGwTQnaTiRwIp9MbGhGhJwkcfP4kGF+UyknAiEAiPL9gJvb4werVRS2R5fsfyouwaopFUuWci/hpsTir9E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":400757},"main":"dist/bin/index.js","type":"commonjs","types":"./dist/bin/index.d.ts","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"bb857f692ec207db9e4063625f7332682e1ef73a","scripts":{"dev":"tsc --watch","lint":"eslint 'src/**/*.ts' --quiet","mock":"npx @stoplight/prism-cli mock mock/openapi.yaml --port 3112","test":"jest --passWithNoTests","build":"tsc && node -e \"require('fs').cpSync('src/templates/files','dist/templates/files',{recursive:true})\"","clean":"rm -rf dist","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","postbuild":"node -e \"try{require('fs').chmodSync('dist/bin/index.js',0o755)}catch{}\"","format:check":"prettier --check 'src/**/*.ts'","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"},"deprecated":"Use 0.1.0-alpha.4 instead","repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"_nodeVersion":"22.21.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0","simple-update-notifier":"^2.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.0.1-alpha.1_1777479513291_0.791311884918225","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.2":{"name":"@getbrevo/cli","version":"0.0.1-alpha.2","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Piyush Sarin"},"license":"MIT","_id":"@getbrevo/cli@0.0.1-alpha.2","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"af4d73f9458e645faf5887bd39ff0bd2f974aa07","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-0.0.1-alpha.2.tgz","fileCount":179,"integrity":"sha512-vG54Qh4CL54mM69/5R7PVNVBGkAhAv7ZGjcVbxq2Din+Gxz8Rw5c4KdJTfF4sxG/kON1MjtaivLS6cs8+pRBnw==","signatures":[{"sig":"MEQCIDvuxlyg6/2re1AgpY6JNecrD/qfyg887f7KwTKPcYQ2AiABYaIxqvfor7wZOKyB62x3aLpbyifhp5gmiuJFeSZR4w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":440186},"main":"dist/bin/index.js","type":"commonjs","types":"./dist/bin/index.d.ts","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"3618367c9bc128c0a253d32c5f092ddb0e4e606c","scripts":{"dev":"tsc --watch","lint":"eslint 'src/**/*.ts' --quiet","mock":"npx @stoplight/prism-cli mock mock/openapi.yaml --port 3112","test":"jest --passWithNoTests","build":"tsc && node -e \"require('fs').cpSync('src/templates/files','dist/templates/files',{recursive:true})\"","clean":"rm -rf dist","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","postbuild":"node -e \"try{require('fs').chmodSync('dist/bin/index.js',0o755)}catch{}\"","format:check":"prettier --check 'src/**/*.ts'","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"},"deprecated":"Use 0.1.0-alpha.4 instead","repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"_nodeVersion":"22.21.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.0.1-alpha.2_1777544075790_0.9697904397288646","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-alpha.0":{"name":"@getbrevo/cli","version":"1.0.0-alpha.0","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Piyush Sarin"},"license":"MIT","_id":"@getbrevo/cli@1.0.0-alpha.0","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"0c0b1b75e12d1a1c8b3f1f31070d3336e79de074","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-1.0.0-alpha.0.tgz","fileCount":177,"integrity":"sha512-+3mgcAmof9jq9/nXhkQxEF6KOSRlJPcijlwh6k+9P5K1fTOpx2zGMpfGrtzmUbfzhC/HRieSOaENvbnVwpjwyA==","signatures":[{"sig":"MEQCIG7ufu0+hti7R5aQytqtvOKibM7moXYJwrXTwE084hVzAiAqbMUvw5zwo7RF/cw4Db0a4kiSyTdGl9l2pEQBgQ0bvw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":422074},"main":"dist/bin/index.js","type":"commonjs","types":"./dist/bin/index.d.ts","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"0171257bef95154ff636b96b226ea0c5dcc405d7","scripts":{"dev":"tsc --watch","lint":"eslint 'src/**/*.ts' --quiet","mock":"npx @stoplight/prism-cli mock mock/openapi.yaml --port 3112","test":"jest --passWithNoTests","build":"tsc && node -e \"require('fs').cpSync('src/templates/files','dist/templates/files',{recursive:true})\"","clean":"rm -rf dist","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","postbuild":"node -e \"try{require('fs').chmodSync('dist/bin/index.js',0o755)}catch{}\"","format:check":"prettier --check 'src/**/*.ts'","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"},"deprecated":"This alpha version is deprecated and no longer supported. Please upgrade to @getbrevo/cli@1.0.0 for the stable release.","repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"_nodeVersion":"22.21.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.0.0-alpha.0_1778070254621_0.7721908853696253","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@getbrevo/cli","version":"1.0.0","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@1.0.0","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"55c204e7b48e5bc2d296b95280983d60a9dddf2f","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-1.0.0.tgz","fileCount":177,"integrity":"sha512-q5tdrQMTtAMKl6zzG91WpYS/fVc+MvHsnxuFrB5uJurQf4R7FAYcr+OEV0BtE4Y1220kmY/GMZ4jEUMgbARdVw==","signatures":[{"sig":"MEQCIASOaHQFiI2wjR8jWmMLm3Q3yI2xue7qwo87yp3ToRwFAiBomaefRO9fCwxNVusMk9t4dnCmux3ZYSlIr9FCeIhwkg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":423248},"main":"dist/bin/index.js","type":"commonjs","types":"./dist/bin/index.d.ts","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"ef5351259d76a4811c8d574c2dd60f789fe9d326","scripts":{"dev":"tsc --watch","lint":"eslint 'src/**/*.ts' --quiet","mock":"npx @stoplight/prism-cli mock mock/openapi.yaml --port 3112","test":"jest --passWithNoTests","build":"tsc && node -e \"require('fs').cpSync('src/templates/files','dist/templates/files',{recursive:true})\"","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","postbuild":"node -e \"try{require('fs').chmodSync('dist/bin/index.js',0o755)}catch{}\"","format:check":"prettier --check 'src/**/*.ts'","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"},"deprecated":"This package is deprecated. Please install the latest package instead: npm install -g @getbrevo/cli","repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"_nodeVersion":"22.21.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.0.0_1778497560002_0.822450589848085","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@getbrevo/cli","version":"1.0.1","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@1.0.1","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"7a350ed404ca128beb8fe60801b6d9ad74960b08","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-1.0.1.tgz","fileCount":193,"integrity":"sha512-+j16pAn5Unj4DrZCv8Mb5Aj+cg/TSzJwQfFzVeXHRT5u52O/3lkUloA5WwoWO7FKgS+nC7LmItr9kEq+2DGPcQ==","signatures":[{"sig":"MEUCIBsTIbWpUSq3Y+hrkpEvnxg2InHomziohtvZ7R16JQ5/AiEA+XHrcg8R8ai4V3/gnIx0p8emJW2hJvJMgi3PynvzxYY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":470396},"main":"dist/bin/index.js","type":"commonjs","types":"./dist/bin/index.d.ts","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"5058b8bb5a68c4c0821f2c7122a8b8dd90dfc797","scripts":{"dev":"tsc --watch","lint":"eslint 'src/**/*.ts' --quiet","mock":"npx @stoplight/prism-cli mock mock/openapi.yaml --port 3112","test":"jest --passWithNoTests","build":"tsc && node -e \"const fs=require('fs');fs.cpSync('src/templates/files','dist/templates/files',{recursive:true})\"","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","postbuild":"node -e \"try{require('fs').chmodSync('dist/bin/index.js',0o755)}catch{}\"","format:check":"prettier --check 'src/**/*.ts'","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"deprecated":"This package is deprecated. Please install the latest package instead: npm install -g @getbrevo/cli","repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"11.5.1","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"_nodeVersion":"20.19.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.0.1_1778744334315_0.7977860302773085","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@getbrevo/cli","version":"1.1.0","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@1.1.0","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"a381d5771b7b409562bdeb96fbeec75765c01fc8","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-1.1.0.tgz","fileCount":209,"integrity":"sha512-pBqy7WTif57oFinTuE8Ag9enkPlxC4R1+NvPuTkqxMoT6hLsPwv4TY/fzC4apTFNnSfutFZ8+F+HWXYU4mb3sQ==","signatures":[{"sig":"MEUCIQC31g/KZlmdHdQQl6nvyYfYUg3gd3T40QLCoVIa9VlHTAIgRncVbOaqZ88pxofRhSxsaKfSSMG2Url9WQbGmKyBcBM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":533067},"main":"dist/bin/index.js","type":"commonjs","types":"./dist/bin/index.d.ts","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"fc3c675de5a8d95505e5d4a065297e8e8d59a536","scripts":{"dev":"tsc --watch","lint":"eslint 'src/**/*.ts' --quiet","mock":"npx @stoplight/prism-cli mock mock/openapi.yaml --port 3112","test":"jest --passWithNoTests","build":"tsc && node -e \"const fs=require('fs');fs.cpSync('src/templates/files','dist/templates/files',{recursive:true})\"","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","postbuild":"node -e \"try{require('fs').chmodSync('dist/bin/index.js',0o755)}catch{}\"","format:check":"prettier --check 'src/**/*.ts'","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"deprecated":"This package is deprecated. Please install the latest package instead: npm install -g @getbrevo/cli","repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"11.5.1","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"_nodeVersion":"20.19.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.1.0_1780060051532_0.7316276651030935","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@getbrevo/cli","version":"1.1.1","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@1.1.1","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"6e66612e819cf2b81a411c09e9747d3c18dc8dfa","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-1.1.1.tgz","fileCount":213,"integrity":"sha512-kV/fJ34dTghwtoYrldvKi3qwOg6WGrh9o54KYNuu5autaFHuSVtOfmARIers+AWxgik6HsC5bUeW9Jh5LvDGJw==","signatures":[{"sig":"MEUCIQDj5FH8MWfkvbfh/yNh1q3njiFwIZP+MDPpNK/xpmYLawIgGv57jCjmRkGq3lLio0xOITmnfcMRNyULyoLEKhVBdIc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":567651},"main":"dist/bin/index.js","type":"commonjs","types":"./dist/bin/index.d.ts","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"d112f69da420c19499343288d374c1818918b8b5","scripts":{"dev":"tsc --watch","lint":"eslint 'src/**/*.ts' --quiet","test":"jest --passWithNoTests","build":"tsc && node -e \"const fs=require('fs');fs.cpSync('src/templates/files','dist/templates/files',{recursive:true})\"","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","postbuild":"node -e \"try{require('fs').chmodSync('dist/bin/index.js',0o755)}catch{}\"","format:check":"prettier --check 'src/**/*.ts'","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"deprecated":"This package is deprecated. Please install the latest package instead: npm install -g @getbrevo/cli","repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"11.5.1","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"_nodeVersion":"20.19.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.1.1_1780665001670_0.8650682598919566","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@getbrevo/cli","version":"2.0.0","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@2.0.0","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"f0e67f165f9c59dd68ab9b6ff984ce43fd6b18a0","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-2.0.0.tgz","fileCount":213,"integrity":"sha512-I3Qyq6HGGny/IvScL6r7HBR1Pu6szxaYfPPomSsz9h5pt6UiPb/6i4cgT3/4bHws6IZXBuLK1qVGYP9Ae0Zq5Q==","signatures":[{"sig":"MEUCIQDSfJwvcyIrRe+Gnfl0slH2AAAtWI932dqAXXvkHTo+nQIgUNfV6qahtSYx8HYYxRG9m+QTyaWkkTe7cuU6BWs4vdU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":575677},"main":"dist/bin/index.js","type":"commonjs","types":"./dist/bin/index.d.ts","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"5abef82b0e4c8dd531135514a32c51812c09ba3f","scripts":{"dev":"tsc --watch","lint":"eslint 'src/**/*.ts' --quiet","test":"jest --passWithNoTests","build":"tsc && node -e \"const fs=require('fs');fs.cpSync('src/templates/files','dist/templates/files',{recursive:true})\"","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","postbuild":"node -e \"try{require('fs').chmodSync('dist/bin/index.js',0o755)}catch{}\"","format:check":"prettier --check 'src/**/*.ts'","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"11.5.1","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"_nodeVersion":"20.19.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.0.0_1782989650289_0.48513354561364275","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@getbrevo/cli","version":"2.0.1","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@2.0.1","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"c1469375b2fe788138a9ef68cb9d23817827ead1","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-2.0.1.tgz","fileCount":213,"integrity":"sha512-RkquW/0DWw18bEFaDp9MdFLld0YgPj1LLjI5NYfbIf+mEh347Pxl7wJCZ8vc69z7euLgC5nGUF+kyB94nlNgYQ==","signatures":[{"sig":"MEYCIQCKqxYCdknRb07qIYyYK8L4ex//LvxfpxglkIb7yeIPOAIhAPX+MzoT4feM9FFnUMG7FE6jM6UaZmYkyUMhlk/U8a/v","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@2.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":575796},"main":"dist/bin/index.js","type":"commonjs","types":"./dist/bin/index.d.ts","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"b934f6df8df334ce12cc0ad09de04539ef8a7cd1","scripts":{"dev":"tsc --watch","lint":"eslint 'src/**/*.ts' --quiet","test":"jest --passWithNoTests","build":"tsc && node -e \"const fs=require('fs');fs.cpSync('src/templates/files','dist/templates/files',{recursive:true})\"","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","postbuild":"node -e \"try{require('fs').chmodSync('dist/bin/index.js',0o755)}catch{}\"","format:check":"prettier --check 'src/**/*.ts'","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"11.5.1","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"_nodeVersion":"20.19.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.0.1_1784269444772_0.47825923279486937","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@getbrevo/cli","version":"2.0.2","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@2.0.2","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"87c3b726ae99661e691b8903468fe62b427840b0","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-2.0.2.tgz","fileCount":217,"integrity":"sha512-CJd1W1LWYQGyzSI9gUISVFcZ75OYfnPVIk15uhgUQViGEdTQqxmrqxBdcS/SXxVDaHJMgMaYns1vdE5HbdL/6Q==","signatures":[{"sig":"MEUCIQDaf/AkRR+DYJspZr1VwPQkMZu7WkPk+pbw0hZasrInGgIgWP298Vy75FYc7iHrqnBEH97kt1QIvcIEmF1YyzovdLo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@2.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":588711},"main":"dist/bin/index.js","type":"commonjs","types":"./dist/bin/index.d.ts","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"0ad977c19f433c60ef0a2c0ea69ed6e59ec2f0e8","scripts":{"dev":"tsc --watch","lint":"eslint 'src/**/*.ts' --quiet","test":"jest --passWithNoTests","build":"tsc && node -e \"const fs=require('fs');fs.cpSync('src/templates/files','dist/templates/files',{recursive:true})\"","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","postbuild":"node -e \"try{require('fs').chmodSync('dist/bin/index.js',0o755)}catch{}\"","format:check":"prettier --check 'src/**/*.ts'","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"11.5.1","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"_nodeVersion":"20.19.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.0.2_1785997128973_0.9615721786675715","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@getbrevo/cli","version":"2.1.0","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@2.1.0","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"24c68e98d5bced94ca09bb3fd32db566ba4a869d","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-2.1.0.tgz","fileCount":19,"integrity":"sha512-A2Pfdy8nCP95qNnjufmOW4paA491J4rqBYMX3sdnwAyAr8roHg0MPUZv4tALoD8hNhk2PqJQrM4DXx7LPntpxg==","signatures":[{"sig":"MEYCIQDAvf0g/HdeFyKteX3YVVU86ppL5qA2uzgksQSpF5HkPAIhAMU5BbNhoTTJRiGMEAtdvYwfFX6q4ePlBQbnkzpFmkeq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@2.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":926135},"main":"dist/bin/index.js","type":"commonjs","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"44294681f4c7d2ee700b29bedba08e95a20563c8","scripts":{"dev":"tsc --noEmit --watch","lint":"eslint 'src/**/*.ts' --quiet","test":"jest --passWithNoTests","build":"tsc --noEmit && node scripts/build.mjs","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","format:check":"prettier --check 'src/**/*.ts'","build:preview":"PREVIEW=1 yarn build","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"11.5.1","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"sideEffects":false,"_nodeVersion":"20.19.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","esbuild":"~0.28.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.1.0_1786699083483_0.5075378421985552","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@getbrevo/cli","version":"2.2.0","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@2.2.0","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"d5f5b4cdd2b42de12e5cd5d924df45acf34e9085","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-2.2.0.tgz","fileCount":19,"integrity":"sha512-EBtyT/NOkeFyJIR216BV9DCsHcoWrdHrxlGMLXfjxmgGwpDHEgRRc/YxL3MIhjUCAn90dyJzh2Yv+TLeZYVz/Q==","signatures":[{"sig":"MEYCIQDdfm252KXR080Qj+5ExVFDJ5Qx+UDey6otZR0tv4iCxgIhALxrE/GohlW4aWz1iMkvJBO58gyWbMmSTxsORPrJWN5y","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@2.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1108194},"main":"dist/bin/index.js","type":"commonjs","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"0b206d9fcb4c7a6631e813a637d4f5822978e7b5","scripts":{"dev":"tsc --noEmit --watch","lint":"eslint 'src/**/*.ts' --quiet","test":"jest --passWithNoTests","build":"tsc --noEmit && node scripts/build.mjs","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","format:check":"prettier --check 'src/**/*.ts'","build:preview":"PREVIEW=1 yarn build","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"11.5.1","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"sideEffects":false,"_nodeVersion":"20.19.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","esbuild":"~0.28.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.2.0_1787660341734_0.08964938320972515","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"@getbrevo/cli","version":"2.2.1","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@2.2.1","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"56c9b12587ded86e42b78c1d9f8c9b376e525a3d","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-2.2.1.tgz","fileCount":19,"integrity":"sha512-fq3ADiHUEmICfs4Z6cOhoXAAYSSRsXbMa+xC46bZc8kv+bebSgGdjiz9vTBsFdfFR9v/62awtBr4XZIt74bIZQ==","signatures":[{"sig":"MEUCIQCACK8BAwGKGE5jzTA2cfNsWnAyP0DKHFnesozesMwX9QIgHh2ofZPFS53XrmIEcier6wpY6vw25p6/8XELTZxTKag=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@2.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":525212},"main":"dist/bin/index.js","type":"commonjs","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"cafde5e2ba60372908d37708c4ac5567296e8be4","scripts":{"dev":"tsc --noEmit --watch","lint":"eslint 'src/**/*.ts' --quiet","test":"jest --passWithNoTests","build":"tsc --noEmit && node scripts/build.mjs","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","format:check":"prettier --check 'src/**/*.ts'","build:preview":"PREVIEW=1 yarn build","release:check":"node scripts/release-check.mjs","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"11.5.1","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"sideEffects":false,"_nodeVersion":"20.19.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","esbuild":"~0.28.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.2.1_1788344836466_0.26636581117154057","host":"s3://npm-registry-packages-npm-production"}},"2.2.2":{"name":"@getbrevo/cli","version":"2.2.2","keywords":["brevo","cli","oauth","developer-tools"],"author":{"name":"Brevo"},"license":"MIT","_id":"@getbrevo/cli@2.2.2","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"bin":{"brevo":"dist/bin/index.js"},"dist":{"shasum":"d510a2f735e756f30cd80459cea7214e6aadef36","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-2.2.2.tgz","fileCount":19,"integrity":"sha512-xVLzuQ4mW74hRdUy6hL2k0ZFGrNl6Q4SSOA4VpJTZPBfY6pSDDdhTaEzXh4O1WfagvVxyDE00GV7jQ3Is9kuuQ==","signatures":[{"sig":"MEUCIQDliDt/RDDk8Yq6I8y0y5HDetA71mSjVm4abXvvaPsgAgIgXHlSYh/vxyI6NNBdDvoR51nOOuNBF1TRKb81OgY32J8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@2.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":535635},"main":"dist/bin/index.js","type":"commonjs","engines":{"node":">=20.15.0","yarn":">=1.19.1"},"gitHead":"a70e4731dd1adf8e37e00e4f963c6b6bc7eeecd7","scripts":{"dev":"tsc --noEmit --watch","lint":"eslint 'src/**/*.ts' --quiet","test":"jest --passWithNoTests","build":"tsc --noEmit && node scripts/build.mjs","clean":"rm -rf dist","smoke":"tsx scripts/smoke-test.ts","format":"prettier --write 'src/**/*.ts'","unlink":"yarn unlink","prepare":"husky","test:ci":"jest --coverage --passWithNoTests","link:dev":"yarn build && yarn link","lint:fix":"eslint 'src/**/*.ts' --fix","changeset":"changeset","format:check":"prettier --check 'src/**/*.ts'","build:preview":"PREVIEW=1 yarn build","release:check":"node scripts/release-check.mjs","prepublishOnly":"npm run clean && npm run build && npm test","publish:packages":"changeset publish","version:packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"repository":{"url":"git+https://github.com/getbrevo/brevo-cli.git","type":"git"},"_npmVersion":"11.5.1","description":"Brevo Developer CLI — create, manage apps and OAuth integrations","directories":{},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"sideEffects":false,"_nodeVersion":"20.19.0","dependencies":{"inquirer":"^8.2.7","commander":"^12.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","jest":"^29.7.0","husky":"^9.1.0","eslint":"^8.57.0","esbuild":"~0.28.0","ts-jest":"^29.2.0","prettier":"^3.2.0","typescript":"^5.7.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","lint-staged":"^15.2.0","@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@typescript-eslint/parser":"^7.0.0","@typescript-eslint/eslint-plugin":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.2.2_1788352364881_0.2811232634355074","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@getbrevo/cli","version":"2.3.0","author":{"name":"Brevo"},"description":"Brevo Developer CLI — create, manage apps and OAuth integrations","type":"commonjs","main":"dist/bin/index.js","sideEffects":false,"bin":{"brevo":"dist/bin/index.js"},"engines":{"node":">=20.15.0","yarn":">=1.19.1"},"scripts":{"build":"tsc --noEmit && node scripts/build.mjs","build:preview":"PREVIEW=1 yarn build","dev":"tsc --noEmit --watch","unlink":"yarn unlink","link:dev":"yarn build && yarn link","test":"jest --passWithNoTests","test:ci":"jest --coverage --passWithNoTests","lint":"eslint 'src/**/*.ts' --quiet","lint:fix":"eslint 'src/**/*.ts' --fix","format":"prettier --write 'src/**/*.ts'","format:check":"prettier --check 'src/**/*.ts'","smoke":"tsx scripts/smoke-test.ts","release:check":"node scripts/release-check.mjs","clean":"rm -rf dist","prepare":"husky","prepublishOnly":"npm run clean && npm run build && npm test","changeset":"changeset","version:packages":"changeset version","publish:packages":"changeset publish"},"dependencies":{"commander":"^12.1.0","inquirer":"^8.2.7"},"devDependencies":{"@changesets/cli":"^2.30.0","@types/inquirer":"^8.2.10","@types/jest":"^29.5.0","@types/node":"^20.0.0","@typescript-eslint/eslint-plugin":"^7.0.0","@typescript-eslint/parser":"^7.0.0","esbuild":"~0.28.0","eslint":"^8.57.0","husky":"^9.1.0","jest":"^29.7.0","lint-staged":"^15.2.0","prettier":"^3.2.0","ts-jest":"^29.2.0","tsx":"^4.19.0","typescript":"^5.7.0"},"lint-staged":{"src/**/*.ts":["prettier --write","eslint --fix --quiet"]},"keywords":["brevo","cli","oauth","developer-tools"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/getbrevo/brevo-cli.git"},"homepage":"https://github.com/getbrevo/brevo-cli#readme","bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_id":"@getbrevo/cli@2.3.0","gitHead":"035a2f0338abab149e46647763f1a90753740a02","_nodeVersion":"20.19.0","_npmVersion":"11.5.1","dist":{"integrity":"sha512-/IVTpHiOsGSHJZ0i1MG4wjVe3lrpLM/gglEZVgT24Xs8Ot8ui62/wRuLLL3nT8dMufJypNrVIhtn/8sfyVWXsg==","shasum":"6257b91724c18fdb011accfa913ce143fd6d6042","tarball":"https://registry.npmjs.org/@getbrevo/cli/-/cli-2.3.0.tgz","fileCount":19,"unpackedSize":629794,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@getbrevo%2fcli@2.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIC/5/aYdyS1RmWqJXXj0dYi8OFvnfQnBXNRdO1xds4awAiBLY3GwidhkRDzaRuc02RFFEWszPB5Zk4P/9zMdRkC3Ug=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e0c0783-8bf6-42f1-b451-7fcc5648a10e"}},"directories":{},"maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_2.3.0_1788521805743_0.2423406146346585"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-29T16:18:33.168Z","modified":"2026-09-04T11:36:46.217Z","0.0.1-alpha.1":"2026-04-29T16:18:33.434Z","0.0.1-alpha.2":"2026-04-30T10:14:36.002Z","0.1.0-alpha.3":"2026-05-04T08:05:49.545Z","0.1.0-alpha.4":"2026-05-06T05:56:37.820Z","1.0.0-alpha.0":"2026-05-06T12:24:14.765Z","1.0.0":"2026-05-11T11:06:00.175Z","1.0.1":"2026-05-14T07:38:54.463Z","1.1.0":"2026-05-29T13:07:31.686Z","1.1.1":"2026-06-05T13:10:01.848Z","2.0.0":"2026-07-02T10:54:10.441Z","2.0.1":"2026-07-17T06:24:04.938Z","2.0.2":"2026-08-06T06:18:49.126Z","2.1.0":"2026-08-14T09:18:03.775Z","2.2.0":"2026-08-25T12:19:01.871Z","2.2.1":"2026-09-02T10:27:16.599Z","2.2.2":"2026-09-02T12:32:45.050Z","2.3.0":"2026-09-04T11:36:45.877Z"},"bugs":{"url":"https://github.com/getbrevo/brevo-cli/issues","email":"support@brevo.com"},"author":{"name":"Brevo"},"license":"MIT","homepage":"https://github.com/getbrevo/brevo-cli#readme","keywords":["brevo","cli","oauth","developer-tools"],"repository":{"type":"git","url":"git+https://github.com/getbrevo/brevo-cli.git"},"description":"Brevo Developer CLI — create, manage apps and OAuth integrations","maintainers":[{"name":"shubhamupadhyayinblue","email":"shubham.upadhyay@brevo.com"},{"name":"mauriciobrevo","email":"mauricio@brevo.com"},{"name":"antoine-sib","email":"antoine.tanguy@brevo.com"},{"name":"piyush.sarin","email":"piyush.sarin@brevo.com"}],"readme":"# Brevo Developer CLI\n\nCommand-line tool to build [Brevo](https://www.brevo.com/) integrations from your terminal — OAuth apps, UI apps that render inside Brevo, and Brevo Functions.\n\n> 📖 Full command and option documentation: **[Brevo CLI reference](https://developers.brevo.com/docs/cli-reference)**\n\n> [!WARNING]\n> **Upgrade to the latest released version.** All versions from **1.1.1** up to (but not including) **2.0.0** should be migrated to at least **2.3.0**. The `2.0.0` release introduced **breaking changes**, so some CLI commands may not work as expected on older versions. **`2.3.0`** also carries further `app-config.json` migrations — legacy `auth.redirectUrls` → `auth.redirect_uris`, and the camelCase keys `appId` / `appName` / `logoUri` / `appType` / `auth.redirectUris` → their snake_case spellings — that are applied automatically the next time the CLI writes your config (`brevo app upload`, `brevo app start`, …). Older configs keep working: both spellings are still read, and the migration never changes a value.\n>\n> **`2.3.0` also begins a `--json` key deprecation.** Every JSON document now carries each camelCase key alongside its snake_case twin (`appId` **and** `app_id`, `clientId` **and** `client_id`, `exitCode` **and** `exit_code`, …). Nothing is removed yet — the camelCase spellings go away in the next major release, so point new scripts at the snake_case ones.\n>\n> Upgrade with `npm install -g @getbrevo/cli@latest` (or `yarn global add @getbrevo/cli@latest`, or `brew upgrade brevo`), then confirm with `brevo --version`.\n\n## What's new in 2.3.0\n\n- **UI apps and action links.** `brevo app create` can build a **UI app** — an app that Brevo\n  renders directly on a CRM record page. The integration type it authors is an **action link**: a\n  menu entry or card CTA button that opens a URL you host, with the record's data passed along as\n  query parameters. `brevo app install` / `brevo app uninstall` put it into an account, and\n  `brevo app upload` pushes placement changes live to every account it is installed in. See\n  [UI apps](#ui-apps) for the full shape of a placement.\n- **Brevo Functions.** A new `brevo function` command group for serverless functions that run on\n  Brevo's own infrastructure. **Available on an invite basis** — see [Brevo Functions](#brevo-functions).\n- **`app-config.json` is snake_case throughout**, and `--json` output now carries both spellings of\n  every key. Both are covered by the upgrade note above.\n\nFull detail for every release is in [CHANGELOG.md](CHANGELOG.md).\n\n## Requirements\n\n- **Node.js** 20.15.0 or newer (required to run the CLI)\n- **Yarn** 1.19.1 or newer (only required for developing/building from source; not needed when installing via `npm install -g @getbrevo/cli`)\n\n## Installation\n\n### Homebrew (macOS/Linux)\n\n```bash\nbrew tap getbrevo/tap\nbrew install getbrevo/tap/brevo\nbrevo --version\n```\n\n(`brew install getbrevo/tap/brevo` adds the tap automatically if you skip the first command — the formula lives in [`getbrevo/homebrew-tap`](https://github.com/getbrevo/homebrew-tap).)\n\n### npm\n\n```bash\nnpm install -g @getbrevo/cli\n# or:\nyarn global add @getbrevo/cli\n```\n\nThis puts the `brevo` binary on your PATH. Verify:\n\n```bash\nbrevo --version\n```\n\nTo upgrade later: `brew update && brew upgrade brevo` (Homebrew) or `npm install -g @getbrevo/cli@latest` (npm).\n\n> Building from source? See [Development](#development) below.\n\n## Quick start\n\nThe fastest path is `brevo app init`, which walks you through login, creating your first app, and generating starter code:\n\n```bash\nbrevo app init\n```\n\nOr step by step:\n\n1. **Authenticate.** `brevo login` defaults to a browser sign-in; you can also pick API-key auth from the prompt or pass `--browser` to skip it:\n\n   ```bash\n   brevo login              # interactive — choose browser (default) or API key\n   brevo login --browser    # force the browser flow\n   ```\n\n   For non-interactive use (CI), set `BREVO_API_KEY` ([create or copy a key](https://app.brevo.com/settings/keys/api)) before running `brevo login`:\n\n   ```bash\n   export BREVO_API_KEY=xkeysib-...\n   brevo login\n   ```\n\n2. **Confirm** the active account:\n\n   ```bash\n   brevo whoami\n   ```\n\n3. **Manage OAuth apps** (examples):\n\n   ```bash\n   brevo app list\n   brevo app create --name \"My App\" --distribution private\n   brevo app scaffold --app-id 3f8c1a2e-5b47-4d9c-8e10-6a2b7d4f0c93\n   brevo app start oauth --port 3000\n   ```\n\nRun `brevo --help` or `brevo <command> --help` for full command and option lists. Every command supports `--json` for machine-readable output.\n\n## Commands\n\n| Command | Description |\n| --- | --- |\n| `brevo login` | Authenticate — browser sign-in by default, or `BREVO_API_KEY` for CI |\n| `brevo logout` | Clear stored credentials (`--force` to skip confirmation) |\n| `brevo whoami` | Show the authenticated user |\n| `brevo app init` | Guided setup — login, create app, and scaffold in one go |\n| `brevo app create` | Create an app — an OAuth app (`--name`, `--distribution private`, repeatable `--redirect-uri`, `--logo-uri`), or a UI app or Brevo Function via the interactive prompts (there is no `--type` flag; non-interactive runs always create an OAuth app) |\n| `brevo app list` | List apps in your account (each row names its type) |\n| `brevo app credentials` | Show client ID and secret (`--app-id`, `--reveal-secret`) |\n| `brevo app upload` | Push `app-config.json` to Brevo after showing a local-vs-server diff — field by field, including every `ui_app` placement (`--yes`) |\n| `brevo app delete` | Delete an app (`--app-id`, `--force`) |\n| `brevo app scaffold` | Add a feature to the app in the current directory, or set an empty directory up for an app you already have — picked interactively, or named with `--app-id` (`--overwrite`, `--json`) |\n| `brevo app start` | Run a scaffolded feature locally (e.g. `brevo app start oauth --port 3000`) |\n| `brevo app install` | Install a UI app into a Brevo account, after showing the configuration and version it will install (`[account-id]` optional — a regular account installs into itself; a corporate account is prompted to pick a sub-account, so pass the ID explicitly in scripts; `--app-id`, `--force`) |\n| `brevo app uninstall` | Uninstall a UI app from a Brevo account (same arguments as `install`) |\n| `brevo app available-scopes` | List the OAuth scopes the IdP supports (`--web` opens the catalog in a browser) |\n| `brevo function init` | Create a Brevo Function — from a template or generated from a description, previewed on sample contacts before it deploys (interactive only) |\n| `brevo function list` | List the functions in your account (`--draft` for drafts only) |\n| `brevo function get` | Show one function's details (`--id`, or pick from a list) |\n| `brevo function deploy` | Deploy a draft, optionally linking it to an app (`--id`, `--app-id`) |\n| `brevo function activate` | Activate a function so it processes live data (`--id`) |\n| `brevo function deactivate` | Stop a function from processing (`--id`) |\n| `brevo function delete` | Permanently delete a deployed function (`--id`, `--force`) |\n\nMost commands require a successful `brevo login` first, except authentication/help flows (`brevo login`, `brevo logout`, `brevo app init`, `--help`). Every command accepts `--json` for machine-readable output.\n\nThe table above is the complete command surface of a published release. Features that aren't live on the Brevo platform yet aren't built into the package — `brevo --help` always lists everything the binary can do, so there is nothing hidden behind a flag or an environment variable.\n\n### UI apps\n\n`brevo app create`'s interactive prompt can build three kinds of app: an OAuth app, a **UI app**\nthat renders directly inside a Brevo CRM record, or a [Brevo Function](#brevo-functions)\n(interactive-only — there is no `--type` flag, so `--json` and piped runs always create an OAuth\napp).\n\nToday the prompt authors one integration type, an **action link** (`extension_type: \"actionLink\"`).\nIn short: it's a clickable menu entry or card CTA button that Brevo renders on a record page — no\nembed, no iframe — and clicking it just opens a URL you host, with the record's data passed along\nas query parameters, never in the path. Each authored placement lives in `app-config.json` under\n`ui_app.surface_point_list` and carries:\n\n- `surface_point_name` — which slot on which record page, chosen from Brevo's live registry at\n  create time\n- `label` — the menu entry's text, or the card's CTA button\n- `more_info` *(optional)* — a supporting line under the menu entry / card description\n- `redirect_link` — the destination URL\n- `context` *(optional)* — which record fields to pass along as query parameters, narrowed from\n  whatever that slot allows\n- `size` *(optional)* — card sizing, e.g. `{ \"width\": \"280px\", \"height\": \"160px\" }`; seeded from\n  the slot's own registry default when it declares one, and freely editable afterwards\n\nThe interactive flow authors exactly one placement per run. More placements — or edits to any\nfield above — are hand-added as further `surface_point_list` entries in `app-config.json` and\npushed with `brevo app upload`, which validates every entry against the registry before it goes\nlive. See [Uploading a UI app that is already installed](#uploading-a-ui-app-that-is-already-installed)\nbelow for what that push looks like.\n\n### Uploading a UI app that is already installed\n\nA UI app's `ui_app` block is what every account it is installed in renders, and there is no\nseparate publish step — an upload is live in those accounts as soon as it succeeds. So the two\ncommands show you what you are about to change:\n\n- **`brevo app upload`** diffs the block against the server placement by placement, printing\n  each changed value as `before → after` and tagging placements as `(new)` / `(removed)`. It\n  then warns that the app may already be installed in Brevo accounts and asks for confirmation\n  naming that consequence. `--yes` skips the question, not the warning; `--json` prints neither\n  and stays a single parseable document.\n- **`brevo app install`** prints the configuration it is about to install — **as stored on the\n  server**, since that is what the install makes visible — with the app's version, extension\n  type and every placement, before asking to confirm. If the `app-config.json` in the current\n  directory has drifted from it, the command says so and points at `brevo app upload`; the\n  install still proceeds, because the stored configuration is a legitimate thing to install.\n  Under `--json` the same information comes back as `version` and `ui_app`.\n\nTo change what an installed app renders: edit `app-config.json`, run `brevo app upload`, and the\naccounts it is installed in pick the change up — no re-install needed.\n\n### Brevo Functions\n\n> [!NOTE]\n> Brevo Functions are rolling out **on an invite basis**. The commands ship in every release and\n> `brevo --help` always lists them, but they only work on accounts that have been given access — so\n> if they fail on your account, that is why. Ask your Brevo contact to have it enabled.\n\nA **Brevo Function** is a serverless function that runs on Brevo's own infrastructure and processes\nyour account's data in real time — no server of yours to host or deploy to. It is a third app type\nalongside OAuth and UI apps: `brevo app create` offers it in the app-type prompt, and a Function app\nis recorded in `app-config.json` by a `brevo_function` block (`app_type: \"function\"`).\n\nThe `function` group (aliased to `fn`) is the whole lifecycle:\n\n```bash\nbrevo function init                       # create one — template, or generated from a description\nbrevo function list --draft               # drafts waiting to be deployed\nbrevo function deploy --id draft-001      # deploy a draft, optionally --app-id to link it to an app\nbrevo function list                       # everything deployed, with its status\nbrevo function deactivate --id fn-001     # stop it processing, without deleting it\n```\n\n`brevo function init` is interactive only — it previews the function against sample contacts from\nyour account and lets you iterate on it before anything is deployed, which is not something `--json`\nor a piped run can do. Deploying activates the function against **real, live data**, so both `init`\nand `deploy` confirm that before they go ahead. Every other command supports `--json`, and the ones\nthat act on a single function take `--id`, so a script never has to reach the interactive picker.\n\n### Browser login\n\n`brevo login` defaults to a browser-based sign-in. The CLI starts a temporary loopback server, opens your browser to the Brevo CLI login service, and stores the returned tokens in `~/.brevo/credentials.json`. Access tokens refresh automatically on expiry.\n\nFlags:\n\n- `--browser` — force browser flow.\n\nFor non-interactive use (CI), set `BREVO_API_KEY=<key>` before running `brevo login`. The legacy `--api-key <key>` flag was removed because it leaks the secret into process listings and shell history; the env var is the only supported way to pass an API key non-interactively.\n\nEnvironment overrides:\n\n- `BREVO_API_URL` — points the CLI at a different Brevo API (defaults to `https://api.brevo.com`).\n- `BREVO_OAUTH_PROXY_URL` — points the browser-login flow at a different OAuth proxy (defaults to `https://oauth-cli.brevo.com`; useful for local development or non-default environments).\n- `BREVO_OAUTH_BASE_URL` — points scope lookups and scaffolded project templates at a different OAuth realm (defaults to `https://oauth.brevo.com`).\n\n## Exit codes\n\n| Code | Meaning |\n| --- | --- |\n| `0` | Success |\n| `1` | General error |\n| `2` | Aborted (Ctrl+C or SIGTERM) |\n| `3` | Authentication failure (401) |\n| `4` | Network error (API unreachable) |\n| `5` | Not found (404) |\n\n## Configuration\n\n| Variable | Purpose | Default |\n| --- | --- | --- |\n| `BREVO_API_KEY` | API key used for non-interactive `brevo login` | – |\n| `BREVO_API_URL` | API base URL (HTTPS required, except for `localhost`) | `https://api.brevo.com` |\n| `BREVO_OAUTH_PROXY_URL` | OAuth proxy used by browser login (HTTPS required, except for `localhost`) | `https://oauth-cli.brevo.com` |\n| `BREVO_OAUTH_BASE_URL` | OAuth realm used for scope lookups and scaffolded project templates (HTTPS required, except for `localhost`) | `https://oauth.brevo.com` |\n| `BREVO_CONFIG_HOME` | Override for the credentials directory | `~/.brevo/` |\n| `BREVO_NO_SKILL_AUTOREFRESH` | Set to `1` to suppress automatic skill refresh on `brevo` runs | off |\n| `NO_COLOR` / `FORCE_COLOR` | Disable / force ANSI colour output | – |\n| `DEBUG` or `--debug` | Verbose HTTP and error logging | off |\n\nCredentials are stored at `~/.brevo/credentials.json`; per-app client secrets are cached under an `apps` key. Linked project config lives in `./.brevo.json` (gitignored).\n\n## AI agent integration\n\nIf you use Claude Code, Cursor, Aider, Copilot CLI, or another agent that reads project context, the package ships ready-to-use context files so agents know how to call `brevo` correctly:\n\n- `node_modules/@getbrevo/cli/agent-context/AGENTS.md` — overview, command list, conventions, and safety rules. Compatible with the [agents.md](https://agents.md) format.\n- `node_modules/@getbrevo/cli/agent-context/SKILL.md` — Claude Code skill (with YAML frontmatter and trigger keywords) for auto-activation when a conversation touches the Brevo CLI.\n\n### Claude Code skill (recommended)\n\nThe CLI installs and maintains the skill for you:\n\n```bash\nbrevo skill:cli install\n```\n\nThis copies `SKILL.md` into `~/.claude/skills/brevo-cli/`. Every subsequent `brevo` invocation auto-refreshes it when the bundled version is newer than the installed one — you'll see a `↻ refreshed brevo-cli skill (vX → vY)` notice on stderr when that happens. Opt out with `BREVO_NO_SKILL_AUTOREFRESH=1`. Remove with `brevo skill:cli uninstall`.\n\nOn the first interactive `brevo` invocation after install, you'll also see a one-time banner on stderr inviting you to install the skill. The notice records itself at `~/.brevo/skill-banner.json` and never repeats. Skipped under CI, non-TTY, `--json`, or any `brevo skill:cli` command.\n\n### Manual install (escape hatch)\n\nIf you prefer not to install via the CLI, copy the files in directly:\n\n```bash\n# AGENTS.md — append into your existing AGENTS.md, or copy if you don't have one\ncat node_modules/@getbrevo/cli/agent-context/AGENTS.md >> AGENTS.md\n\n# Claude Code skill — note the directory name matches what `brevo skill:cli install` uses\nmkdir -p .claude/skills/brevo-cli\ncp node_modules/@getbrevo/cli/agent-context/SKILL.md .claude/skills/brevo-cli/SKILL.md\n```\n\nThe `AGENTS.md` content is wrapped in `<!-- BREVO_CLI_AGENTS_BEGIN -->` / `<!-- BREVO_CLI_AGENTS_END -->` markers — when you upgrade the CLI, delete the existing block (markers included) before re-running the append so the section isn't duplicated.\n\n## Development\n\n```bash\ngit clone https://github.com/getbrevo/brevo-cli.git\ncd brevo-cli\nyarn install\nyarn build          # compile TypeScript + copy templates to dist/\nyarn link:dev       # build and yarn link the binary for local testing\nyarn dev            # watch mode (rebuilds on save)\nyarn test           # run jest\nyarn test:ci        # jest --coverage\nyarn lint           # ESLint on src/\nyarn format         # prettier --write\nyarn smoke          # end-to-end smoke test against the real API (see below)\nyarn clean          # remove dist/\n```\n\nA husky pre-commit hook runs prettier and eslint on staged `.ts` files and then runs the full test suite.\n\n### Smoke test\n\n`yarn smoke` exercises the full CLI lifecycle (login → app create → scaffold → start → delete → logout) against the real Brevo API. App creation, scaffold, and start always run via the individual commands (`brevo app create`, `brevo app scaffold`, `brevo app start`). The interactive `brevo app init` wizard is **not** part of the default run — pass `--with-init` to also exercise it as an extra step (which creates and deletes a second app).\n\n```bash\nyarn smoke                       # default run (no init wizard)\nyarn smoke --with-init           # also exercise `brevo app init`\nyarn smoke --skip-auth           # assume already logged in\nyarn smoke --ci                  # API-key auth via BREVO_API_KEY (non-interactive)\nyarn smoke --against=published   # run against the published npm package instead of local build\nyarn smoke --help                # full flag list\n```\n\n### Publishing\n\nReleases use [changesets](https://github.com/changesets/changesets) and publish to npm via CI. Merging a changeset to `main` opens a \"Version Packages\" PR; merging that PR publishes. Pushes to `release-*` branches publish alpha prereleases.\n\n## Reporting issues\n\nBugs and feature requests: [open an issue](https://github.com/getbrevo/brevo-cli/issues/new/choose) or email [support@brevo.com](mailto:support@brevo.com). Include CLI version (`brevo --version`), Node version, and the command output. Redact any credentials.\n\nFor security issues, use [private vulnerability reporting](https://github.com/getbrevo/brevo-cli/security/advisories/new) — do not file a public issue.\n\n## Resources\n\n- [Brevo Developers](https://developers.brevo.com)\n- [CLI reference](https://developers.brevo.com/docs/cli-reference) — full command and option documentation\n- [Package on npm](https://www.npmjs.com/package/@getbrevo/cli)\n- [Repository](https://github.com/getbrevo/brevo-cli)\n- [Issue tracker](https://github.com/getbrevo/brevo-cli/issues)\n- [Email Support](mailto:support@brevo.com)\n- [Changelog](./CHANGELOG.md)\n\n## License\n\n[MIT](./LICENSE)\n","readmeFilename":"README.md"}