action exavault_update_form_by_id { label: "Updates a form with given parameters" description: "Add, update, or delete a form's parameters. This will alter how your users/customers will see and interact with the form when sending you files. \n\n**Notes**\n\n*This call will **replace** your current form in its entirety.* If you want to keep any existing elements unchanged, be sure to submit the call with an element's current settings to preserve them. " provider: exavault method: PATCH path: "/forms/{id}" encoding: json input: { type: "object" properties: { cssStyles: { type: "string" } elements: { type: "array" items: { type: "object" properties: { id: { type: "integer" description: "ID of the form element. If you're adding a new element to the form, do not include this field." } name: { type: "string" description: "Name of the form element." } order: { type: "integer" description: "The order the fields will be displayed to the recipient. Starts at 0. " } settings: { type: "object" properties: { isRequired: { type: "boolean" description: "True is the form element is required for submission. " } senderEmail: { type: "boolean" } useAsFolderName: { type: "boolean" description: "True if the submitted response should be used as the name for the new folder. " } } } type: { type: "string" description: "Type of form field to use." enum: ["name", "email", "text", "textarea", "upload_area"] } } } } "ev-access-token": { type: "string" } "ev-api-key": { type: "string" } formDescription: { type: "string" description: "Set a description for the form that will be visible to recipients. " } submitButtonText: { type: "string" description: "Text to be displayed on the submission button." } successMessage: { type: "string" description: "Text to be displayed when a recipient has submitted the form. " } } required: ["ev-access-token", "ev-api-key"] additionalProperties: false } output: { type: "object" description: "Response object for forms." properties: { data: { type: "object" description: "Regular form object." properties: { attributes: { type: "object" description: "Attributes of the form including it's included fields and css styles" properties: { cssStyles: { type: "string" description: "CSS Styles of the form." } elements: { type: "array" description: "Array of form fields defined for the form" items: { type: "object" properties: { id: { type: "integer" format: "int32" description: "ID of the form field. " } name: { type: "string" description: "Label of the field." } order: { type: "integer" format: "int32" description: "Order that field appears on the form, starting from 0" } settings: { type: "object" description: "Advanced field settings" properties: { description: { type: "string" description: "Secondary description of field." } isRequired: { type: "boolean" description: "Whether this field must be completed before form can be submitted" } senderEmail: { type: "boolean" } useAsFolderName: { type: "boolean" description: "Whether to place submitted files into a subfolder named the contents of this field. Only takes effect when the `fileDropCreateFolders` parameter on the receive folder is `true`. `isRequired` must be set to `true` if this setting is `true`." } width: { type: "number" format: "float" description: "How much of the available width the field should occupy" } } } type: { description: "Field type" enum: ["email", "textarea", "name", "text"] type: "object" } } } } formDescription: { type: "string" description: "Text that appears at the top of a receive form" } submitButtonText: { type: "string" description: "Text that appears on the submit button for the form" } successMessage: { type: "string" description: "Message displayed to submitter after files are uploaded" } } } id: { type: "integer" format: "int32" description: "ID of the form." } relationships: { type: "object" description: "Share relationship data of the form. " properties: { share: { type: "object" properties: { data: { type: "object" properties: { id: { type: "integer" description: "ID of the share. " } type: { type: "string" description: "Type is share. " enum: ["share"] } } } } } } } type: { type: "string" description: "Type is \"form\"." } } } included: { type: "array" items: { type: "object" description: "Object contains share properties." properties: { attributes: { type: "object" description: "Attributes of the share including the name, path and share recipients. " properties: { accessDescription: { type: "string" description: "Description of the share access rights." } accessMode: { type: "object" description: "An object defining what a not-logged-in visitor can do with the share contents" properties: { delete: { type: "boolean" description: "Whether share allows visitors to delete contents" } download: { type: "boolean" description: "Whether share allows visitors to download" } modify: { type: "boolean" description: "Whether share allows visitors to rename or move contents." } upload: { type: "boolean" description: "Whether share allows visitors to upload" } } } created: { type: "string" format: "date-time" description: "Timestamp of share creation." } embed: { type: "boolean" description: "True if share can be embedded." } expiration: { type: "string" description: "Expiration date of the share." } expired: { type: "boolean" description: "True if the share has expired." enum: [true, false] } fileDropCreateFolders: { type: "boolean" description: "Flag to show if separate folders should be created for each file upload to receive folder." enum: [true, false] } formId: { type: "integer" description: "ID of the form." } hasNotification: { type: "boolean" description: "True if share has notification." enum: [true, false] } hasPassword: { type: "boolean" description: "True if the share has password." enum: [true, false] } hash: { type: "string" description: "Share hash." } inherited: { type: "boolean" description: "True if share inherited from parent folder." enum: [true, false] } messages: { type: "array" description: "Array of invitation messages." items: { type: "object" properties: { body: { type: "string" description: "Share invitation message text." } created: { type: "string" format: "date-time" description: "Timestamp of message creation." } id: { type: "integer" format: "int32" description: "Message id." } modified: { type: "string" format: "date-time" description: "Timestamp of message modification." } shareId: { type: "integer" format: "int32" description: "ID of associated share" } subject: { type: "string" description: "Share invitation message subject." } userId: { type: "integer" format: "int32" description: "User ID who generated share invite" } } } } modified: { type: "string" format: "date-time" description: "Timestamp of share modification. Can be `null` if it wasn't modified." } name: { type: "string" description: "Share name." } ownerHash: { type: "string" description: "Share owner's hash." } paths: { type: "array" description: "Path to the shared resource in your account." items: { type: "string" } } public: { type: "boolean" description: "True if the share has a public url." enum: [true, false] } recipients: { type: "array" description: "Array of recipients." items: { type: "object" properties: { created: { type: "string" format: "date-time" description: "Timestamp of adding recipient to the share." } email: { type: "string" description: "Recipient email address." } hash: { type: "string" description: "Share hash." } id: { type: "integer" format: "int32" description: "ID of the recipient." } received: { type: "boolean" description: "Set to true if recipient has accessed the share. Note this is set to true when the recipient clicks the link to access the share; not when they download a file." enum: [true, false] } sent: { type: "boolean" description: "Set to true if invite email was sent; false otherwise." enum: [true, false] } shareId: { type: "string" description: "ID of the share that the recipoient belongs to." } type: { type: "string" description: "Type of the recipient." enum: ["owner", "direct"] } } } } requireEmail: { type: "boolean" description: "True if share requires email to access." } resent: { type: "string" format: "date-time" description: "Invitations resent date. Can be `null` if resent never happened." } status: { type: "integer" format: "int32" description: "Share activity status. Can be active (1) or deactivated (0)." enum: [0, 1] } trackingStatus: { type: "string" description: "Checks recipient received status and returns whether it's been received (`complete`,) partial received (`incomplete`,) or not received yet (`pending`.)" enum: ["complete", "incomplete", "pending"] } type: { type: "string" description: "Type of share." enum: ["shared_folder", "send", "receive"] } } } id: { type: "integer" format: "int32" description: "ID of the share." } relationships: { type: "object" description: "Message, owner, resource, and notification relationships of the share. " properties: { messages: { type: "array" items: { type: "object" properties: { data: { type: "object" properties: { id: { type: "integer" description: "ID of the message." } type: { type: "string" description: "Type is message. " enum: ["message"] } } } } } } notifications: { type: "array" items: { type: "object" properties: { data: { type: "object" properties: { id: { type: "integer" description: "ID of the notification. " } type: { type: "string" description: "Type is notification. " enum: ["notification"] } } } } } } owner: { type: "object" properties: { data: { type: "object" properties: { id: { type: "integer" description: "ID of the owner." } type: { type: "string" description: "Type is user." } } } } } resources: { type: "array" items: { type: "object" properties: { data: { type: "object" properties: { id: { type: "integer" format: "int64" description: "ID of the shared resource." } type: { type: "string" description: "Type is resource. " enum: ["resource"] } } } } } } } } type: { type: "string" description: "Type of the share. " enum: ["share"] } } } } responseStatus: { type: "integer" description: "Http status code of the response. " } } } }