Zapier Platform Core
This is the SDK used in Zapier integrations.
Development
See CONTRIBUTING.md and ARCHITECTURE.md of this package in particular.
Useful commands:
npm install
for getting startednpm test
for running unit testsnpm run local-integration-test
for running integration tests locallynpm run build-boilerplate -- --debug
for building a build-boilerplate/*.zip
(if you want to test buildless locally)
Integration Test on AWS Lambda
Make sure your AWS access key have permission to update and run Lambda functions, and then you can use these commands to run tests on AWS Lambda:
npm run deploy-integration-test
builds and deploys a zip to a function named integration-test-cli
on Lambdanpm run lambda-integration-test
runs the integration test using the live Lambda function integration-test-cli
Publishing
Only do this after merging your PR to main
.
npm version [patch|minor|major]
will pull, test, update schema version in dependencies for this package, update docs, increment version in package.json, and push tags, which then will tell Travis to publish to npm
15.19.0
released 2024-11-25
For optimal performance, an optional argument has been added to z.dehydrate to allow devs to control the cache duration on hydrators. The default cache duration for hydrators is unchanged (5 minutes).
Also, with the new optional meta
field object added to the FieldSchema object, devs now have a supported mechanism for storing field-specific context which may be obtained when constructing dynamic needs, and then making that context available during actual action execution in the perform method.
Lastly, the zapier scaffold now supports TypeScript (TS) applications. It automatically detects TS and JS projects if the --entry
flag isn't provided, so that it can generate and edit the right files in the right places, given TS projects tend to keep their files in ./src.
cli
- :nail_care: Add support for TS on the
zapier scaffold
command (#884)
core
- :tada: Add support for providing the cache expiration for hydrators (#918)
- :scroll: Add
timezone
and withSearch
fields to the bundle.meta
object (#922) - :scroll: Update the
BeforeRequestMiddleware
typings to require url
in the request object (#924)
schema
- :tada: Add
meta
field support for the FieldSchema
(#883)
schema-to-ts
None!
misc
- :hammer: Bump elliptic from 6.5.7 to 6.6.0 (#911)
- :hammer: Bump cross-spawn from 7.0.3 to 7.0.6 in /schema-to-ts (#919)