We currently provide a service where human agents submit business information to numerous local directories – e.g. yelp.com, insiderpages.com
This business information consists of data such as business name, address, URL, description of services, working hours, logo & photos
These submissions are currently done by hand with an agent going to each directory & copy/pasting the data into the directory.
We want to create a browser plug-in which our human agents can use to help them with submissions and to speed up the submission process.
This plug would be used internally by our team (not for customer/consumer use) so we want to focus on the functionality not the look/feel of it.
About our service
Our customers enter their data 1 time and then we take that data and enter it into the relevant directories.
On most directories we need to create a new user account to submit data. The directories usually send us a verification email which our agents respond to and confirm their email/name.
When a customer submits their data to us it creates a ‘campaign’ in our system. Each campaign has a unique campaignID. We ‘tie’ the data they provide to this campaignID so that we can then retrieve this data using the campaignID.
A typical campaign may consist of between 10-100 submissions depending on how many the customer purchases.
Our agents then complete all submissions within 14 days. After 14 days we return a report to the customer.
Why we want to develop this Plugin
There are 2 main reasons for developing this Plugin
1. Speed up data submission process
2. Reduce potential for human error by part-automating the submissions
We do NOT expect the Plugin to do 100% of the data submission.
Our agents will operate the plugin and handle some steps in the process manually – e.g.
1. Captcha screens – agents will handle any captchas manually
2. Logo/image upload – agents will do this manually
User Experience of using Plugin
The following steps describe how a human agent will use the plugin to complete a typical set of submissions –
1. Agent clicks on plugin
2. Plugin expands to show simple interface
3. Agent enters ‘campaignID’ into interface & clicks button
4. Plugin connects to database via API
a. Plugin uses API key to authenticate
5. API returns JSON encoded data for specific ‘campaignID’
6. Plugin displays Campaign Name, Campaign ID, Customer Name
7. Agent confirms that campaign is correct
8. Plugin stores JSON data locally (does not need to call database again)
9. Plugin displays list of directories for campaign
a. This data supplied in API
10. Agent clicks on 1st directory
11. Plugin opens directory
12. Agent does a search on directory for existing business listing
a. Agent must decide if they should / should not update listing
13. Agent goes to ‘submit listing’ page or create account page
14. Agent clicks on button in Plugin
15. Plugin completes form fill of fields on screen
a. Plugin uses pre-defined config file for each directory
b. Plugin recognizes fields & what data to insert
16. Agent double checks data entered & updates where incorrect
17. Agent goes to email account and clicks on verify link in email
18. Agent comes back to directory
19. Agent goes to submit details page
20. Agent clicks on Plugin button
21. Plugin completes all fields on the page
22. Agent double checks data entered & updates where incorrect
23. Agent uploads images/logo
24. Agent goes to Plugin & clicks on 2nd directory in the list
25. Steps 10 – 23 are completed over & over until all directories have been submitted to
Creating config files for Plugin
The plugin needs to have awareness of the different directories we submit to.
Specifically the plugin needs to know the field names for the input fields used on different directories and how these match up to the data in our database.
To do this we will supply an excel doc which can be turned into a config file or something similar. The plugin can then use/read this config as it needs to.
The config which provide a match up the field names used in our database with the field names used on each directory.
Here is a mock up of what this excel file will look like –
Our agents will be in charge of gathering the field names for each directory.
Fields names will change if/when the directories update their service. Therefore we need a simple & easy way for our agents to update this config file.
Our preferred browser to use is Chrome. We only need the plug in to work in 1 browser. We do NOT need the plugin to work cross browser.
Working with API
The API will be built by BrightLocal’s in-house developers.
We will create a very simple API with 1 end point which will be called using s simple URL.
• API type: JSON
• API request type: GET method (no POST method)
• Authentication: unique API key (to be supplied)
• Extra authentication: a ‘secret password’ to be used together with API key
o API key