Instagram Bot Documentation

Last updated: June 21, 2017

Purchase

Purchasing the software (Instagram Bot) is only available through our website. We do not have any official re-sellers and we are NOT responsible if you get scammed trying to buy it from somewhere else.

Download

The download link is provided in the e-mail address you receive when you purchase the software. It also contains the license key which is required for activation later on.

Installation

Instagram Bot does not require any special installation. After you have downloaded the software, all you have to do is extract the files to your computer. From there, you can immediately run the software.

Licensing

When running the software for first time, you will have to create an account in our licensing system with your code you have purchased.

screenshot

Press "Create new account" to create a new account.

screenshot

Username - your username for the license account
Password - your password for the account
Repeat password - the same password as above
Email - your e-mail, used to verify your account, reset your password and more

screenshot

Product code - your produce code you have received when purchasing the software

After activating your product, you can now use the Instagram bot.

Dashboard

Our software has multiple versions of the "dashboard".

The basic dashboard looks like this:


screenshot

You can see the menu has two elements "File" and "View", which will be explained each later on in the documentation.

In the middle, there's a table, which will contain your account(s).

At the bottom, there's two elements. One showing the current status of the software (when it's in use) and the duration how long it's been running for.

The dashboard with a loaded project looks like this:


screenshot

You can see there's a new button "Enable", which is the start button of the software and another menu called "Tools", for external tools (such as editing the profile of your account(s))

The dashboard with a loaded project and accounts running looks like this:


screenshot

View menu

The view menu contains the settings of the software. Below is given an explanation for each of them.

screenshot

Settings

Restore - will restore the settings to the default ones
Apply - will apply the current changes
OK - will save the settings and close the window
Cancel - will close the window

screenshot

Simultaneous threads allowed to operate during session - the amount of threads used by the software to do the operations/tasks. The more threads you set, the higher amount of resources the software will use, but the more tasks/operations it will do.
Thread spawning time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to delay next thread spawn - is the minimum amount of time before spawning (creating) a thread
Maximum time (milliseconds, seconds, minutes, hours, days) to delay next thread spawn - is the maximum amount of time before spawning (creating) a thread


screenshot

Web request timeout interval (sec) - is the timeout interval for web requests (if a request does not receive a response within the specified time, it will time out)
Prevent accounts without proxies assigned from operation - will prevent you from starting the software if all the accounts don't have proxy assigned to them
Maximum assignments per proxy - the maximum amount of times a proxy can be assigned to accounts
Dump detailed error log to file upon unexpected response from server - will create a log file if an unexpected response is received


screenshot

Log in attempt time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to delay log in attempt - is the minimum amount of time before attempting to log in
Maximum time (milliseconds, seconds, minutes, hours, days) to delay log in attempt - is the maximum amount of time before attempting to log in
Unsuccessful login attempt quota - the maximum amount of times to try and login (if unsuccessful, will mark the account as invalid)
Unsuccessful session validation attempt quota - the maximum amount of times to try and validate the session (if unsuccessful, will mark the account as invalid)

Proxy manager

The proxy manager is where all your proxies are saved. You can directly add new proxies here or assign them to account(s) directly when adding them. It's up to you. You can also "control" your proxies from here.

screenshot

You can see the available options by right clicking in the table. The following options are available:
1. Add new proxy - will open a new window to add a proxy
2. Remove proxies - will remove existing proxies
3. Import proxies - to import proxies from file (the current format is "ip:port" for normal proxies and "user:pass@ip:port" for proxies with authorization, one per line)
4. Export proxies - to export your existing proxies to a .txt file on your PC

Macro manager

Macro manager is used to manage your macros. A macro is a single instruction that expands automatically into a set of instructions to perform a particular task.
There are several built-in macros by the software itself, but you can create new ones by right clicking and selecting "Add new macro". It will prompt a new window with the details.

screenshot

Script (manager)

If you have loaded a global project, then you will see an option to edit the script directly, because global projects have only one script affecting all accounts in the project.

screenshot

If you have loaded a custom project, then you will see an option to create a script or edit existing ones. Custom projects use different scripts (you can create as many as you want and assign different scripts to different account(s)).

screenshot

For more information about the script(s), please read the section below.

Event log

The event log shows the logs of the software, which operations it's been doing, for which account and at which time. You can export the logs to a file if necessary.

screenshot

Status bar

If the status bar is enabled, it will show at the bottom of the software (the current status and duration). If disabled, it will hide them from the GUI.

Script(s)

Scripts are used to configure how the software will do the tasks/operations for your account(s). You can configure your script(s) to do specific task(s) at specific time. For global projects, there's only one script being used for all of your accounts. For custom projects, you can create more than one script and assign different script(s) to different account(s).

Global script

Global script is the script used by account(s) in global projects. All accounts will share the same actions and database. To access the global script, go to "View" -> "Script"

screenshot

Custom script(s)

Custom script(s) are created by the user (you). You can create as many as you want. Each script can be assigned to an account of your choice. You can assign one script to multiple accounts, which means they'll be sharing the same actions/database.

screenshot

When creating a new script, there are 4 menus in the manager:
1. Actions - where you choose the actions of the script that the software will be doing when running
2. Scheduling - where you can schedule which actions to be done in which days (and overall which time)
3. Access lists - where you can manage your whitelist/blacklist of users
4. Advanced - where you can view the database items and edit them (also add new items directly)

Understanding script(s)

The script has 4 menus in it.

  • Actions
  • Scheduling
  • Access lists
  • Advanced
Actions
Actions are done by the software when running the specific script. Each action has its own meaning and they are all explained in their own section below.

Scheduling
screenshot
Time constraint - the time during the day which the software will be doing actions
You can also choose if you want to run specific action(s) in specific day(s) here.

Access lists
screenshot
User whitelist - users who won't be unfollowed during the unfollow action. You can add new users or import from file.
User blacklist - users who won't be followed during the follow action. You can add new users or import from file.
Word blacklist - if a user/media contains any of these words in it, they will be ignored (not interacted with)

Advanced
screenshot
You can directly view the database of the current script and manage it from the GUI itself. This is an advanced feature and only recommended for use if you know what you're doing.
You can add directly from the GUI or import from a file new data in the database (such as scraped users, medias and more).

Setting up a script

Setting up a script is fairly simple. Once again, if you have global project, you can immediately open it from the menu. If you have a custom project, you will have to create a new one.

screenshot

Step 1: Choose your action(s) you want the software to be doing when running the script. There are several action(s) explained below in their own section.
Step 2 (optional): Choose the scheduling of your action(s). By default, they will run 24/7 every day of the week.
Step 3 (optional): Add new users (or words) to your whitelist or blacklist. By default, they are empty.
Step 4 (optional): Manage the database items if needed (for example: if you want to import previously scraped users from elsewhere).
Step 5 (only for custom projects): Assign the script to your account(s) and you're good to go.

Action(s)

Actions are tasks being done by the software when running a script.

To add an action to the script, select the action and then drag and drop it to the white table.
To remove an action in the script, select it and then press "DELETE" on your keyboard.
To remove all the actions in a script, click on any action and press "SHIFT+DELETE" on your keyboard.
To move an action, select it and use the right click on your mouse to re-order it.

Delay

The delay action is an actions which tells the software to "sleep" for a specific period of time. It won't be doing any other actions until the delay is over.

screenshot

Time constraint - is the constraint of time set below
Minimum "time" to delay next action - the minimum time of delay
Maximum "time" to delay next action - the maximum time of delay

Scrape users

Scrape users action is used to scrape users, which can be later on used for following, sending DMs and more.

screenshot

Minimum users to scrape per query - is the minimum amount of users to scrape per each query in the table below
Only scrape most recently listed users - will scrape only the users on top of the list (most recent ones)
Do not scrape users who's profiles are marked as private - will skip private users
Do not scrape users who have not designated a default profile photo - will skip users with the default Instagram profile photo

To add a new query, right click on the table and select "Add New Query".

screenshot

Method - is the type of search the software will make using the query given below. There are several methods:

  • Users who shared media that has designed query in its details - to scrape users who shared a media containing a specific string in it
    INPUT: A valid string (word or phrase) (Example: fashion)
  • Users whom designated user is following - to scrape a specific user's followings
    INPUT: A valid Instagram username (Example: instagram)
  • Users whom are following designated user - to scrape a specific user's followers
    INPUT: A valid Instagram username (Example: instagram)
  • User who's username or biography contain designated query - to scrape users based on a string in their profile
    INPUT: A valid string (word or phrase) (Example: fashion)
  • Users from designated query location - to scrape users from a specific location
    INPUT: A valid location ID or name of location (Example: New York, New York)
  • Users who liked designated media - to scrape users who liked a specific media
    INPUT: A valid media ID or URL of a media (Example: https://www.instagram.com/p/BVNXkQtDyt-/)
  • Users who commented on designated media - to scrape users who commented on a specific media
    INPUT: A valid media ID or URL of a media (Example: https://www.instagram.com/p/BVNXkQtDyt-/)
  • Users from user suggestions - to scrape users from your suggestions given by Instagram
    INPUT: None
Query - is the query the software will use combined with the method above to find users. An example query is given for each method above.

To edit an existing query, select it and then right click and select "Edit selected query".

To remove existing queries, select them and then right click and select "Remove queries".

To import queries from a file, you have to follow a certain format. The current format is: ""query","method"" (including the quotes).
The "query" can be an Instagram user, Instagram URL, location or anything else that is a valid query.
The "method" has shortcuts and they are the following:
  • Users who shared media that has designed query in its details - "Taggers"
    EXAMPLE INPUT: "fashion","Taggers"
  • Users whom designated user is following - "Follows"
    EXAMPLE INPUT: "instagram","Follows"
  • Users whom are following designated user - "Followers"
    EXAMPLE INPUT: "instagram","Followers"
  • User who's username or biography contain designated query - "Search"
    EXAMPLE INPUT: "fashion","Search"
  • Users from designated query location - "Location"
    EXAMPLE INPUT: "New York, New York","Location"
  • Users who liked designated media - "Likers"
    EXAMPLE INPUT: "https://www.instagram.com/p/BVNXkQtDyt-/,"Likers"
  • Users who commented on designated media - "Commenters"
    EXAMPLE INPUT: "https://www.instagram.com/p/BVNXkQtDyt-/,"Commenters"
  • Users from user suggestions - "Suggested"
    EXAMPLE INPUT: To input user suggestions from a file, make sure you have a line exactly like this "[SUGGESTED]","Suggested".


To export the existing queries, select the ones you want to export and then right click and select "Export queries".

Scrape medias

Scrape medias action is used to scrape medias, which can be later on used for liking, commenting and more.

screenshot

Minimum medias to scrape per query - is the minimum amount of medias to scrape per each query in the table below
Only scrape most recently listed media - will scrape only the media on top of the list (most recent ones)
To add a new query, right click on the table and select "Add New Query".

screenshot

Method - is the type of search the software will make using the query given below. There are several methods:

  • Media that has designated query in its details - to scrape medias who contain a specific string in them
    INPUT: A valid string (word or phrase) (Example: fashion)
  • Popular medias - to scrape popular medias on Instagram
    INPUT: None
  • Medias shared by designated user - to scrape a specific user's medias
    INPUT: A valid Instagram username (Example: instagram)
  • Medias from designated query location - to scrape medias from a specific location
    INPUT: A valid location ID or name of location (Example: New York, New York)
Query - is the query the software will use combined with the method above to find medias. An example query is given for each method above.

To edit an existing query, select it and then right click and select "Edit selected query".

To remove existing queries, select them and then right click and select "Remove queries".

To import queries from a file, you have to follow a certain format. The current format is: ""query","method"" (including the quotes).
The "query" can be an Instagram user, Instagram URL, location or anything else that is a valid query.
The "method" has shortcuts and they are the following:
  • Media that has designated query in its details - "Relevant"
    EXAMPLE INPUT: "fashion","Relevant"
  • Popular medias - "[POPULAR]","Popular"
    EXAMPLE INPUT: To input popular medias from a file, make sure you have a line exactly like this "[POPULAR]","Popular".
  • Medias shared by designated user - "UserPhoto"
    EXAMPLE INPUT: "instagram","UserPhoto"
  • Medias from designated query location - "Location"
    EXAMPLE INPUT: "New York, New York","Location"


To export the existing queries, select the ones you want to export and then right click and select "Export queries".

Scrape friendships

The scrape friendships aciton is used for retrieving your existing followers and followings, which will be later on used for unfollowing, sending DMs and more.

screenshot

Minimum followers to scrape per account - the minimum amount of followers to scrape for each account in the project
Minimum follows to scrape per account - the minimum amount of follows (followings) to scrape for each account in the project

Scrape liked medias

The scrape liked medias action is used to retrieve medias which you have liked before (even before using the bot), which will be later on used for unliking them.

screenshot

Minimum liked medias to scrape per account - the minimum amount of liked medias to scrape for each account in the project

Follow users

The follow action is used to follow users.

screenshot

Minimum amount of users to follow daily - is the minimum amount of users to follow daily
Maximum amount of users to follow daily - is the maximum amount of users to follow daily
Minimum amount of users to follow per session - is the minimum amount of users to follow per session
Maximum amount of users to follow per session - is the maximum amount of users to follow per session
Do not follow users who's profiles are marked as private - to ignore private users (NOT follow them)
Do not follow any given user more than once - to NOT follow the same user more than once
Time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to delay next follow - is the minimum amount of delay before attempting to follow a user
Maximum time (milliseconds, seconds, minutes, hours, days) to delay next follow - is the maximum amount of delay before attempting to follow a user

Like medias

The like action is used to like medias.

screenshot

Minimum amount of medias to like daily - is the minimum amount of medias to like daily
Maximum amount of medias to like daily - is the maximum amount of medias to like daily
Minimum amount of medias to like per session - is the minimum amount of medias to like per session
Maximum amount of medias to like per session - is the maximum amount of medias to like per session
Do not like any given media more than once - to NOT like the same media more than once
Time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to delay next like - is the minimum amount of delay before attempting to like a media
Maximum time (milliseconds, seconds, minutes, hours, days) to delay next like - is the maximum amount of delay before attempting to like a media

Comment medias

The comment media is used to comment on medias.

screenshot

Minimum amount of medias to comment on daily - is the minimum amount of medias to comment on daily
Maximum amount of medias to comment on daily - is the maximum amount of medias to comment on daily
Minimum amount of medias to comment on per session - is the minimum amount of medias to comment on per session
Maximum amount of medias to comment on per session - is the maximum amount of medias to comment on per session
Do not comment on any given media more than once - to NOT comment on the same media more than once
Time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to delay next comment - the minimum time of delay before attempting to comment on a media
Maximum time (milliseconds, seconds, minutes, hours, days) to delay next comment - the maximum time of delay before attempting to comment on a media

To add a new comment, right click in the table and select "Add new comment".
To edit an existing comment, select the account and right click then select "Edit selected comment".
To remove existing comment(s), select the account(s) and right click then select "Remove comments".
To import comment(s) from file, right click and then select "Import comment(s)".
To export existing comment(s), right click and then select "Export comment(s)".

Unfollow users

The unfollow action is used to unfollow users which you are already following.

screenshot

Time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to follow user before unfollowing - the minimum amount of time you have to be following a user in order to unfollow
Minimum amount of users to unfollow daily - is the minimum amount of users to unfollow daily
Maximum amount of users to unfollow daily - is the maximum amount of users to unfollow daily
Minimum amount of users to unfollow per session - is the minimum amount of users to unfollow per session
Maximum amount of users to unfollow per session - is the maximum amount of users to unfollow per session
Do not unfollow users who are following back - if checked, the software will NOT unfollow users who are following you back
Time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to delay next unfollow - is the minimum amount of delay before attempting to unfollow a user
Maximum time (milliseconds, seconds, minutes, hours, days) to delay next unfollow - is the maximum amount of delay before attempting to unfollow a user
Add user to blacklist after successful unfollow - will automatically add unfollowed users in the blacklist (which means they won't be followed again using the follow action)

Unlike medias

The unlike action is used to unlike medias which you have previously liked.

screenshot

Time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to like media before unliking - the minimum amount of time you have to be liking a media in order to unlike
Minimum amount of medias to unlike daily - is the minimum amount of medias to unlike daily
Maximum amount of medias to unlike daily - is the maximum amount of medias to unlike daily
Minimum amount of medias to unlike per session - is the minimum amount of medias to unlike per session
Maximum amount of medias to unlike per session - is the maximum amount of medias to unlike per session
Time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to delay next unlike - is the minimum amount of delay before attempting to unlike a media
Maximum time (milliseconds, seconds, minutes, hours, days) to delay next unlike - is the maximum amount of delay before attempting to unlike a media

Direct message users

The DM action is used to send direct messages (both text messages and media messages are supported) to users.

screenshot

Minimum amount of users to direct message daily - is the minimum amount of users to direct message daily
Maximum amount of users to direct message daily - is the maximum amount of users to direct message daily
Minimum amount of users to direct message per session - is the minimum amount of users to direct message per session
Maximum amount of users to direct message per session - is the maximum amount of users to direct message per session
Only send direct messages to scraped users - will ensure that the software only sends direct messages to scraped users
Only send direct messages to new followers - will ensure that the software only sends direct messages to new followers (and ignore scraped users)
Time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to delay next direct message - is the minimum amount of delay before attempting to direct message a user
Maximum time (milliseconds, seconds, minutes, hours, days) to delay next direct message - is the maximum amount of delay before attempting to direct message a user

To add a new text message, right click in the table and select "Add new text message".
To add a new media message, right click in the table and select "Add new media message".
To add a new share message (share a post with another user in direct message), right click in the table and select "Add new share message".
To import new message(s) from file, right click in the table and select "Import messages".
To export existing message(s) to a file, right click in the table and select "Export messages".

Upload media

The upload media is used to upload media (both pictures and videos are supported) on your account.

screenshot

Minimum amount of medias to upload daily - is the minimum amount of medias to upload daily
Maximum amount of medias to upload daily - is the maximum amount of medias to upload daily
Minimum amount of medias to upload per session - is the minimum amount of medias to upload per session
Maximum amount of medias to upload per session - is the maximum amount of medias to upload per session
Time constraint - is the constraint of time set below
Minimum time (milliseconds, seconds, minutes, hours, days) to delay next share - is the minimum amount of delay before attempting to upload a new media
Maximum time (milliseconds, seconds, minutes, hours, days) to delay next share - is the maximum amount of delay before attempting to upload a new media
Shuffle uploading queue before operation - will upload new media before attempting to do any other actions

To add a new media, right click in the table and select "Add new media".
To edit an existing media, right click in the table and select "Edit selected media".
To remove existing media(s), right click in the table and select "Remove media(s)".
To import media(s) from file, right click in the table and select "Import medias".
To export media(s) to a file, right click in the table and select "Export medias".

Account(s)

Managing your account(s) in our software is fairly simple. You can find an explanation for all account related features below.

Adding a New Account

To add a new account to the bot, right click on the table and select "Add new account" as shown in the screenshot below.

screenshot

Importing Account(s) From File

To import existing account(s) from a file, right click on the table and select "Import account(s)" as shown in the screenshot below.
The format(s) for importing accounts is the following:

If the account is using no proxy: "username:password"
If the account is using a proxy with no user authorization: "username:password|proxyip:proxyport"
If the account is using a proxy with user authorization: "username:password|proxyuser:proxypass@proxyip:proxyport"

screenshot

Edit Existing Account(s)

To edit an existing account, right click on the account and select "Edit Selected Account" as shown in the screenshot below.

screenshot

Remove Account(s)

To remove previously added account(s), select them and then right click and select "Remove account(s)" and choose "Selected". You can also remove all of them by choosing "All", or removing the deselected ones by choosing "Deselected".

screenshot

Export account(s)

To export the account(s) you have added in the bot, right click and select "Export account(s)". You will be given several options:
"All" - to export all existing account(s) you have previously added
"Selected" - to export only the accounts you have selected
"Deselected" - to export only the accounts which are NOT selected

screenshot

Assign proxy to account(s)

To assign proxy to your account(s), right click on them and select "Assign proxy to account(s)". You will be given several options:
"All" - to assign proxy to all of your account(s)
"Selected" - to assign proxy only to the selected account(s)
"Deselected" - to assign proxy only to the non-selected account(s)

This function will assign proxy to the account(s) from the proxy manager. You can read about the proxy manager in its own documentation. It will assign one proxy as many times as you have set in the settings ("View" -> "Settings" -> "Networking" -> "Maximum assignments per proxy").

screenshot

Unassign proxy from account(s)

To unasign proxy from your account(s), right click on them adn select "Unassign proxy from account(s". You will be given several options:
"All" - to unassign proxy from all your account(s)
"Selected" - to unassign proxy only from the accounts you have selected
"Deselected" - to unassign proxy only from the accounts which are NOT selected

screenshot

Set account(s) state

To set (or change) the state of your account(s), right click and select "Set selected account(s) state". You will be given several options:
"Valid" - this means that the account is valid and you know for sure it's 100% valid (the software uses this as an indicator that the account is valid as well, if it's not, it won't do tasks)
"Invalid" - this means that the account is NOT valid and the software will not be doing tasks with it
"Unknown" - this means that the account is in UNKNOWN state (the software hasn't yet verified whether it's valid or invalid, but will do it as soon as possible)

screenshot

View Account Statistics

To view the statistics of a specific account, right click on it and select "View selected account statistics".

screenshot

View Account Events

To view the events of a specific account, right click on it and select "View selected account events". This shows the logs (events) the software did with the specified account.

screenshot

Updates

Instagram Scraper checks for a new update automatically when you start the software. If there is a new update, it will ask if you want to update or not.

You can also update the software by clicking the "Update" label on the top-right.