How to add a Form from the Catalog
Adding forms has never been easier.
Choose from over 140 pre-made forms from many different industries.
Adding forms has never been easier.
Choose from over 140 pre-made forms from many different industries.
To date this has been achieved by having detailed documentation on each API endpoint and option, but we’ve released a new way to discover and understand our APIs – introducing the API Explorer!
You can access the API Explorer on:
https://secure.formsfly.com/apiexplorer
Built on the Swagger open source library, we’ve exposed our current version 2 API endpoints in an easy to understand visual format.
Browse each available endpoint and its supported HTTP verbs, view the model properties and even test out calls to the API in the API Explorer.
Simply put its an integrators dream and we think it should make API integration projects much easier to implement.
While the primary focus of the Explorer is in JSON format requests and responses, there are areas where you can specify an XML response type to get an idea of what the API requires and responds with on the XML side too.
The API Explorer is a dynamic, living document of our version 2 API and is generated directly from our API code, thus allowing you to have confidence that what you see in the Explorer is exactly what is supported and available on the API.
You now have the ability to associate key/value metadata on both the Company/Organisation and User level on our platform.
This enables you to record additional information against these entities, and then access this data in Forms and other areas of the system via new META formula functions.
To get started with adding or editing metadata, simply head over to the “Edit User” and “Organisation Setup” pages in the secure website.
There you will see a new “Metadata” field, which lets you add key/value sets of information.
Don’t forget to hit the Save button to persist your changes ![]()

The new metadata is also available right now on our v2 Company and User APIs, so you can programatically get and set metadata values as desired.
To make use of the metadata you have loaded, we’ve added two new formula functions:
Both the above functions will get you the value for the given key name at Organisation and User level respectively.
As this is part of our formula engine, you can make use of these functions anywhere formulae are supported – Form screens, data templates, conditions etc.
We’ve just launched a host of new functionality for location and other related geo areas.
This includes adding heading/direction information to geo data, reverse geocoding address support for Location fields in Forms, and a new option to geo-stamp images captured with the app.
Plus we’ve also added new System (built-in) data sources for Active Users and Published Docs.
We’ve upgraded our geo data fields to support more information when its available from the device.
This extra info is stored in the Location field, and is also available through new formula functions:
We expect this extra information will open up a range of new geo-based scenarios for our customers.
We’ve added a new “Enable Address” option to the Location field in the Form designer.
Turning this option on will allow the user to find address information for a given location point, through a new “Find Address” button on the app.

The app uses standard Android and iOS geocoding functionality to perform a reverse geocode lookup of the location coordinates.
Addresses are returned in data fields that correspond to the global OASIS address standard.
You can access these data fields through new formula functions (OASIS field equivalents in brackets):
Having formula support means that you can dynamically assign address data into other form fields via the Dynamic Value option.
Use this for cases where you need to allow the user to edit the address found.
You can also use the address data in your data templates and anywhere else formula functions are supported.
There’s now a new “Display Map Type” option on the Location field in the Form designer which lets you specify the style of map to display when the user selects or views a location through the field.
We’ve also added parameter support for specifying the map type onto the “Open Address in Map” and “Open Coordinates on Map” user interaction type.
Simply add a “|” character followed by the type of map (Satellite, Hybrid or Standard).
Photo images have the ability to embed GPS information into the file through the EXIF standard.
We’ve now added support for reading this EXIF data from existing images, as well as stamping GPS data into images captured with the app.
You can turn this on through the new “Include GPS Information” option found on Media fields in the Form designer.
This means that GPS data can now be stored in image fields, allowing you to track the individual GPS locations of each picture when it was taken.
The geo data is available through our location formula functions too, so you can again make dynamic use of this information in your apps.
For forms that require the user to walk around a large area while capturing images, this gives a new level of information to those pictures.
Coupled with the new Heading data, this means you can even tell the direction a user was facing when taking each picture ![]()
Previously any media files captured using the app would be stored in the app’s private secure area on the device and as such were not available for use by other apps on the device. The files could also not be copied off the device for external use and backup.
We’ve now added a “Copy to Gallery” option on the Media field type in the Form designer, which allows you to specify when a file should be copied to the public gallery / album area of the device.
The app will still keep the original file in it’s secure area, but this way you can enable cases where the files need to be more generally accessible to the user.
We’ve improved and standardised the display of GPS data on the app and the website, providing a consistent and easily readable display of geo data.
On the website particularly, this means that the geo data is now displayed inline on the Data page, allowing quick access to the GPS coordinate info.
The “View Map” and “View Entry” pages also now include improved geo data display.
Additionally, you can now play video and audio files directly from the “View Entry” page, instead of simply getting the file name displayed.
A new option is available on the App Setup page (App Builder -> App Setup), which lets you control whether or not the app should log the user’s location.
This option is turned off by default to avoid any possible issues with privacy or legal concerns – this is something each client must answer for themselves before turning on this feature.
If enabled, the app will send the user’s location every time the app performs a synchronisation with the web platform.
Location data is logged in a new Location History that can be viewed on the “Edit User” page (Menu -> Users -> Edit User).
The Location History contains the last 50 logged locations, along with the date/time of the record.
Our Users v2 API has also been updated with a new LocationHistory property, allowing external integration access to this information.
We’re planning to add visualisation options in the future to leverage this new user location information, and we also have designs on improving our Tasking area with this data to make for easier scheduling of Tasks.
With a system as dynamic as ours, often there arises a need to have access to an up to date list of Active users and currently published Docs.
For example in a Process Step scenario, where you want to show a list of the current app users in the Form screen for the user to choose from.
Or if you’re maintaining a lot of Docs on our platform, and you want to show a Listing screen of these for the user to view.
So we added two new built-in Data Sources that the system automatically maintains –
and
Active Users is like the name says, an always up to date list of all active users on the organisation account. This data source uses the user email as the unique key for each row, and includes a “Last Location” column that contains the user’s last known GPS coordinates, leveraging the new “Log User Location” option mentioned earlier.
Published Docs provides a listing of all Docs in published status, using the Doc’s key as the unique row identifier.
This makes it easy to create a Listing screen driven by the Published Docs data.
Set the user interaction of the Listing rows to “Open Doc”, and you can pass in the Doc’s identifier as a parameter using our {{this[0]}} syntax.
If your users are already maintained in a separate external system, then today’s update is for you!
We have a new option on the Organisation Setup page which allows any Platform Administrator to configure external “pass through” authentication.
This lets your users authenticate against an external system when they log in, avoiding the need to have your user’s passwords stored on our platform.

Once external auth is configured, every time a user logs in (on our website or apps) our system will receive the login request and first ensure the user email is registered on our platform.
Assuming the user email is found, our system will then transparently “pass through” the login credentials to the external service you configured for authentication.
The external service MUST return a 200 HTTP status code to be considered authenticated by our platform; any other response will be deemed a login failure.
Currently HTTP/REST endpoints are supported, we’re looking at adding Active Directory support in the future.
User passwords are never stored on our platform when external auth is configured.
The following placeholders can be used to inject the user’s login details, use these to form a dynamic URL, Headers and/or Body:
{{USEREMAIL}}
{{USERPASSWORD}}
{{ORGID}}
We’ve just released a handy upgrade to our REST connector that should help with a number of scenarios customers have been asking for.
All items described below are considered to be in BETA.
The new features/changes included in this release are:
New option in App Setup page, lets you specify the colour of title bar navigation text (e.g. “Exit”, “Back” etc)
New in App Setup page, lets you specify that the app should remember logins for all users of that company account.
This means that after the user’s first initial login, the app will auto-login on subsequent app launches.
Of course users can still log out manually via the Settings screen in the app.
On the Activities page of Tasks, you can upload files for the user to access on the app.
The new V2 of our Tasks API will include support for Task Files as well as pre-setting answers on the new Table field type in Forms.
Tasks V2 API is due out in the next few weeks.
When a Task is Sent, a push notification will appear on the target user’s registered devices.
This is feature is being switched on progressively across company accounts – we expect full operation by Wednesday.
Previously, Docs were always downloaded to the device when a user had access to them.
This could be heavy on data allowances and often the Docs in question were not needed offline.
Use the Download on Demand option to prevent the pre-emptive downloading of Doc files – when the app user attempts to access the file, it will be downloaded at that point.
This is a new option in the Title bar part of Form Designer (click on the Title Bar in the design preview to see these options).
When enabled, the app will show a horizontal tab at the top of the Form, with every visible Page name displayed.
Can be useful for quick navigation to Pages, though in complex Forms where Pages are conditionally displayed this may prove confusing for users.
Display a set of captured rows in a tabular format within your Form.
The user can add new rows to the Table, and they can edit existing rows by tapping on the chosen row to enter an editing Page.
In the Form Designer, you define the fields in the Table by dragging fields into the Table field itself.
Control which fields will display as columns by using the “Disable Table Display” property found on fields within the Table.
A long requested filter option – allows you to filter a Choices field by looking for all Data Source column values that are found within a given comma or pipe delimited text list of values.
For those with larger Data Sources containing more than 50 columns, previously a limit was applied when referring to columns via our [ ] syntax in Form formulae. This restriction no longer applies.
Another highly requested improvement, you can now set the “unselected” background of option buttons via the “Option Background Color” property on Choices fields set to use horizontal field layout.
– File downloads to the app have been made more robust and efficient
– Improvements to app handling of timezones in date/time Form fields
– Fix sporadic app crash when no data source sort order is defined
– Fix bug with MIN() formula function returning zero is certain scenarios
– Fix bug with data source filters in certain Form user cases
– Fix Detail screen not refreshing when editing row on Form screen that was access from a field link on said Detail screen
– Fix issues with assigning default or dynamic co-ordinates to Location field in Forms
– Fix bug with Listing screen ordering in cases where not set correctly in Listing Designer
This would be necessary after any new Form version and new or modified Template document.
If using a Form from a sent Task, any existing forms sent previously to a new form version or Template, would not reflect the changes.
In this case, the old Task would need to be cancelled and a new Task sent to the device. Whether this Task was sent from the Platform or via the API system like a Widget.
After a new version or template has been published or uploaded and any new task has been sent, the sync needs to be done on the device.

Click the cog in the top right of the app screen.

Then click on “Check For Updates” part way down the page.

You will then see the Updates Progress.

If the update lasts only a second, it is possible the device isn’t connected to a data network like 3g or WiFi at that moment so click the Update button again until the Progress popup lasts for a few seconds. There should be a notification icon appear to indicate the device is syncing.
[post-slides categories=’136′]
I was speaking with a client a couple of weeks ago, who already signed up to get mobile forms working for his team as part of a plan to reduce paper usage and to speed up their operation. Let’s call him Ted.
Now when Ted first spoke with us, he loved the product and, after trialling it, realised that it could do all the things on his “wish list”. But, a few months on, his project was no further forward and the organisation was still not getting the benefits of a solution they already investigated and selected. Sound familiar?
Ted is not alone – this is a situation which crops up fairly regularly, and there are recurrent themes and issues which are common to most of these cases.
I thought I’d share some of them, as they relate to other types of project too. Some of it is familiar territory, but I reckon it doesn’t hurt to remind ourselves sometimes.
The Moon On A Stick Will Take Longer
Yes, it’s great to know the full picture about where you’d like to be at the end of the project. You probably won’t get there if you don’t know the direction in which you’re heading.
But, for all but the simplest projects, it’s a good idea to break the project down into more manageable chunks, and to have milestones and deliverables along the way.
In Ted’s case, the ultimate aim is to have data flowing freely from the office to the mobile workforce and then get the results back into the Head Office system, with a copy to his clients. For that, the Head Office system is going to require some adjustment by a 3rd party supplier, which is a possible hold-up.
So we created a “Phase 1” project where the data comes back to the office, and to the end client, in PDF format. We identified with Ted that this would immediately cut a large hole in his team’s administration task, and impress his clients with the increased speed of reporting. It’s a “quick win”, while the software people look at writing the code for the full integration.
No One Said It Would Be Easy
If you’re implementing something new, there WILL be issues. It’s a fact of life, but it seems to stop some folks in their tracks, whilst others crack on.
Could it be that those who push onward were expecting to have issues and so were not perturbed? Or is it that the non-implementers weren’t so serious about the project as they thought?
At the outset, it’s worth doing a couple of things.
Firstly, ask yourself if this change is going to drive your company forward and improve the way you work in some material way. Is it going to save you money? Save you time? Improve the quality of your product or service, or increase the speed at which you provide it? Is it going to help you comply better with your policies, for instance your Environmental Policy?
If you’re answering “yes” to these kind of questions, then it’s a no-brainer. COMMIT! Decide that you’re going to implement your plan, and mean it.
Secondly, get it clear in your head from the start that there will probably be some hurdles to overcome along the way. This is to be expected and your commitment (remember, you just made it?) will help to see you through.
We’re Just Too Busy!
This one sort of comes under the same heading as the previous one, but is often the reason given for “Failure To Implement”.
Being busy is a good thing, of course. But if the planned project truly is a priority for you, I’d strongly suggest that you can usually find one or two current activities which are lower priority, and slip or skip those in order to progress your money-saving/time-saving/product-enhancing project.
Most of us spend some time on business-related social media, for instance. You’re reading an article right now!
If you cannot give your important project any time during a 14 day period, then it probably just isn’t a priority for you, is it? Maybe go back and re-examine the potential benefits to see if you’re short-changing yourself and your business.
Use All Your Resources
It transpired that one of the things holding Ted up was that he didn’t know how to create the forms he needed. We’d actually offered to do them for him but he hadn’t picked up on that.
Once he realised that a large chunk of the exercise could be delegated, the pace soon picked up in that area.
You may need to call on colleagues or employees, your senior management, or perhaps external third parties.
Maybe, if your time is in short supply, someone else needs to be the “Champion” for the project. Whatever it takes, within reason, to keep things on track.
Everybody Onboard?
Because change can be difficult, you need to get everyone onside. If your senior management don’t see the benefit of the project, then it may be hard to keep it on track and/or to fund it.
But equally, if those “on the ground” (who have to use the new solution) can’t see something in it for them, then it will make implementation a steeper climb.
You already identified the benefits of your project up front. But try to also see those benefits from each stakeholder’s point of view.
In Ted’s case, he admitted that he’d been working pretty much alone on the project. Once he talked to the field service team, they were so excited about the whole thing that they went out of their way to help drive things forward.
Call To Action?
Whether your project is mobilising your data or something completely different, I really hope you won’t let inertia hold things up.
Seize the day and you’ll be glad you did.
Oh and Ted? He is a real client of ours and he gave me permission to talk about his project – only his name has been changed, to spare his blushes! The good news is that he now has six mobile workers submitting their data electronically with FormsFly and they no longer have to buy multi-part stationery, nor decipher scrappy handwriting on their returns.
You must be logged in to post a comment.