InstagramApi [InstaSharper]
Tokenless, butthurtless private API for Instagram. Get account information, media, explore tags and user feed without any applications and other crap.
Development of this project postponed
Demo samples, Tests project and Wiki page
Before posting new issues:Note that: there is a simple Instagram API based on web-version of Instagram. This repository based on Instagram API for mobile devices.
Current version: 1.4.0 [Stable], 1.5.0 [Under development]
Overview
This project intends to provide all the features available in the Instagram API up to 12.0.0.7.91. It is being developed in C# for .NET Framework 4.5.2 and .NET Standard 2.0
This repository is provided for reference purposes only.
- Please note that this project is still in design and development phase; the libraries may suffer major changes even at the interface level, so don't rely (yet) in this software for production uses. *
Cross-platform by design
Build with dotnet core. Can be used on Mac, Linux, Windows.
Easy to install
Use library as dll, reference from nuget or clone source code. Pre-release version available at myget feed together with symbols
Features
Currently the library supports following coverage of the following Instagram APIs:
- Login
- Logout
- Create new account
- Get user explore feed
- Get user timeline feed
- Get all user media by username
- Get media by its id
- Get user info by its user name
- Get current user info
- Get tag feed by tag value
- Get current user media
- Get followers list
- Get followers list for currently logged in user
- Get following list
- Get recent following activity
- Get user tags by username
- Get direct mailbox
- Get recent recipients
- Get ranked recipients
- Get inbox thread
- Get recent activity
- Like media
- Unlike media
- Follow user
- Unfollow user
- Set account private
- Set account public
- Send comment
- Delete comment
- Upload photo
- Upload video
- Get followings list
- Delete media (photo/video)
- Upload story (photo)
- Change password
- Send direct message
- Search location
- Get location feed
- Collection create/get by id/get all/add items
Easy to use
Use builder to get Insta API instance:
var api = new InstaApiBuilder()
.UseLogger(new SomeLogger())
.UseHttpClient(new SomeHttpClient())
.SetUser(new UserCredentials(...You user...))
.UseHttpClient(httpHandlerWithSomeProxy)
.Build();
Note: every API method has synchronous implementation as well
Quick Examples
Login
IResult<bool> loggedIn = await api.LoginAsync();
Get user:
IResult<InstaUser> user = await api.GetUserAsync();
Get all user posts:
IResult<InstaMediaList> media = await api.GetUserMediaAsync();
Get media by its code:
IResult<InstaMedia> mediaItem = await api.GetMediaByIdAsync("1234567891234567891_123456789);
Get user timeline feed:
IResult<InstaFeed> feed = await api.GetUserFeedAsync();
Comment post:
IResult<bool> postResult = await apiInstance.CommentMediaAsync("1234567891234567891_123456789", "Hi there!");
Examples folder
for more samples you can look atWhy two separate repos with same mission?
Wiki
Special thanks
ADeltaX for contribution
vitalragaz for contribution
n0ise9914 for contribution
Ramtinak for contribution
mgp25 and his php wrapper
License
MIT
Terms and conditions
- Anyone who uses this wrapper MUST follow Instagram Policy
- Provided project MUST NOT be used for marketing purposes
- I will not provide support to anyone who wants this API to send massive messages/likes/follows and so on
- Use this API at your own risk
Legal
This code is in no way affiliated with, authorized, maintained, sponsored or endorsed by Instagram or any of its affiliates or subsidiaries. This is an independent and unofficial API wrapper.