Sha256: 42f0b88f287654cbba222da811a6889dc817841d712275155c5fdc02b7ed9727
Contents?: true
Size: 1.65 KB
Versions: 1
Compression:
Stored size: 1.65 KB
Contents
const sample = { "url": "https://www.site.com/...", "method": "GET", "encoding": "RAW" } const operationLabel = 'Webhook Test' const operationImportant = false const validParams = ["url", "method", "encoding"] const extraInputFields = [] const modelName = 'Behavior' const perform = (z, bundle) => { const requestParams = validParams.reduce((params, paramName) => { if (Boolean(bundle.inputData[paramName])) { params[paramName] = bundle.inputData[paramName] } return params }, []) const responsePromise = z.request({ method: 'POST', url: 'https://app.files.com/api/rest/v1/behaviors/webhook/test.json', body: JSON.stringify({ ...requestParams, }) }) return responsePromise .then(response => JSON.parse(response.content)); } const inputFields = [ { key: 'url', label: 'Url', helpText: "URL for testing the webhook.", required: true, type: 'string', }, { key: 'method', label: 'Method', helpText: "HTTP method(GET or POST).", required: false, type: 'string', }, { key: 'encoding', label: 'Encoding', helpText: "HTTP encoding method. Can be JSON, XML, or RAW (form data).", required: false, type: 'string', }, ].filter(field => validParams.includes(field.key)) module.exports = { key: modelName.toLowerCase(), noun: modelName, display: { label: operationLabel, description: "Test webhook.", important: operationImportant, }, operation: { inputFields: [...inputFields, ...extraInputFields], perform: perform, sample: sample } }
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
files.com-1.0.55 | zapier/creates/behaviorWebhookTest.js |