[RELEASED] Instagram API (Object oriented, event based...)

Asset Store link

https://assetstore.unity.com/packages/tools/integration/instagram-api-52968

Online documentation

https://docs.google.com/document/d/1ud8F2Q_YKHOqxOn5bxgUIuXOixs4muwFfus6uRaW1ws

Online example

https://dl.dropboxusercontent.com/s/wwhxhsznykfzzbt/index.html

Supported Platforms

  • Android support. No UnityPlayerActivity inheritance (no other third party plugin compatibility problems).

  • iOS support.

  • WebGL support (GET requests by default, CORS/JSONP limitation but can be workarounded with a simple PHP proxy script that it’s included to support POST/DELETE calls).

  • Windows/Mac support. Implemented using uWebKit (so it requires it).

Features

  • Full object oriented API (you don’t deserialize anything, it’s already done it for you)

  • Documentation available.

  • Easy integration to your Unity project.

  • Well organized and structured code.

  • Event based. Example: OnUserSearchRetrieved(User users), OnMediaSearchRetrieved(Media media)

  • Debug mode (in editor):

  • You can test all API with no publication requiring.

  • You can log Instagram original endpoint url and JSON response.

  • Examples available. Includes an example to test the full API with a console view.

  • Requires Unity 5.3+ (by default uses JsonUtility and UnityWebRequest) but you can make it 5.0, 5.1, 5.2 backwards compatible implementing:

  • IJsonSerializer: Interface to deserialize Json data. You can use JSON .NET that is backwards compatible.

  • IRequest: Interface to make requests. You can use Best HTTP that is backwards compatible.

Bump! It has been approved!

This looks great but with no reviews up yet I’m a bit hesitant in case this is my quite what I’m looking for. Do you have a trial version available with limited functionality that can be checked out? Thanks!

You have:

  • A public WebGL demo.
  • A public Google drive document with all the documentation.

Read the asset store page information to see if it’s what you need and feel free to ask any questions.

I have sales but they didn’t review anything and I don’t know who are those people (you can’t see or contact your customers) to suggest to review my package.

Hi, will this plugin allow an app to upload an image (from texture2D or otherwise) to the account signed in? I’ve looked through the documentation and failed to see anything that indicates uploading. Also the WebGL example loading bar fills up then hangs for me with no errors.
Thanks.

It can’t do it because Instagram doesn’t allow it.

https://www.quora.com/Why-doesnt-Instagram-allow-3rd-party-applications-to-upload-photos-through-its-API

I can’t do it if Instagram API doesn’t have an endpoint to do that, sorry.

When I try to use the demo I get:
{“code”: 403, “error_type”: “OAuthForbiddenException”, “error_message”: “You are not a sandbox user of this client”}

Hi, I have interested in purchase of this plugin. But I want my questions reply.

  • Can I access and download images uploaded over my account?
  • Does this plugin contains login facility?
  • If no then via other way if I provide login functionality and then access other details via this plugin then will it work?
  • Can I upload my images over my account?

Please reply for me, I am curiously waiting for your side reply.

My asset it’s a copy of the Instagram API. It has implemented all endpoints available. See the asset docs.

  1. You have:

public void GetUserRecentMedia();
public void GetUserRecentMedia(string id);

2 and 3. Yes, on WebGL it’s done by the browser redirecting it to your app on success (as seen in the asset example). On Android and iOS it’s implemented by a basic native web browser.

  1. No because it’s not supported officially by Instagram, it has to be done with Android Intents or iOS Hooks and you need the Instagram app installed on your device (that’s why I have not implemented it):

https://www.instagram.com/developer/mobile-sharing/

If you have any other questions feel free to ask.

Thanks.

@bdovaz Thanks for your reply :slight_smile:

  • Can I able to do login via this plugin? Because it become easy for me to move ahead in this.
  • Can I able to download images uploaded into my Instagram account?
  • If I want to display all Instagram account images into my application then what is the best way?
    Whether I need to create custom UI to display these images? Or Instagram provide some in build UI?

I know I have asked somewhat my personal questions but if you share some of your suggestions with me then my way become clear and easy :slight_smile:

@bdovaz Can you provide me any iOS build for test?
Because my working platform is iOS and WebGL build I can’t able to load in browser.

  1. I already answered that on my previous answer and the answer is yes.

  2. Of course, you have a “Media” class that stores all this information: “low_res”, “standard_res” and “thumbnail” images paths (along with much more information).

  3. Instagram and this assets it’s only be able to provide you the data model, the UI interface it’s up to you.

There is a public WebGL example. If you have more questions, feel free to ask.

@bdovaz Please reply me for my following questions:

  • How can I run WebGL demo?
    I loaded your example in browser but it got stuck at this point.

  • May I upload images to my Instagram account using this plugin?
  • May I upload images to my custom server using this plugin by download it from Instagram account?
  • What about login screen provided by plugin? Means it will load login dialog provided by Instagram by default as like Facebook login dialog or I need to create my custom login dialog to provide user interface!!

Sorry for my too many questions but I was near to clear all my doubts.

  1. On Unity WebGL supported browsers should work. It hangs a bit at 100% but a seconds/minute later, should response.

2 and 3. I already answered that on a my first answer on our conversation, read it, please (it’s my 4th answer).

  1. Yes but in some platforms it’s with a WebView embeded in Unity because Unity doesn’t provide a WebBrowser. Anyway, the user will see the official Instagram login page.

@bdovaz Thanks for your reply.

At least now I can able to run demo in browser. But when I try to login, I am getting this as output.

  • How to come across from this? So that I can test full available things.

My last question to you before purchase,

Before few post, I asked this question to you, “- Can I upload my images over my account?”

You replied me this, “No because it’s not supported officially by Instagram, it has to be done with Android Intents or iOS Hooks and you need the Instagram app installed on your device (that’s why I have not implemented it):”

  • What if I want to upload at my custom web server, downloaded images from Instagram account. Does this thing become possible?

@bdovaz Please reply me for above questions, Just waiting for your reply.

I need to update the webgl example so anyone can test with it’s own accounts.

With the API you can only download media, not upload it to your instagram account.

If you want to upload your downloaded media to other place other than Instagram it’s up to you because that does nothing to do with my asset, it’s your own code.

@bdovaz tomorrow morning I will purchase this plugin :slight_smile:

Thanks for your awesome replies. I hope you will help in future too :slight_smile:

After using this plugin as per my requirement, I will give you awesome rating and reviews too.

Ok, thanks. You can keep asking the questions you want related to this asset.

Hey there. I wanted to try implementing something within my app, and i’d like to know if this asset you’ve created would be able to do it.

I wanted to create a button in my game where when pushed, it took a screenshot of the gameplay, and then once the match is over, i wanted the player to be shown the shots they took and be able to take that screenshot (or multiple screenshots) and upload it to their instagram account. I wanted to know if your asset would be able to do this and if so, could you give me a brief, step-wise process of how I’d do it? Thanks