I worked several times with this endpoint and it seems that since this week when I pass a max_id value an error is thrown, it says:
{
"meta": {
"error_type": "APIInvalidParametersError",
"code": 400,
"error_message": "max_id must not be a media id."
}
}
I have no idea where to find if api has changed behaviour or simply it's broken.
Guys, do you have any idea?
Another error that I've found is the order of returned Medias when I query this endpoint. Here's a sample data:
#sample error
[
Media: 1220853576116214570_1383882821
Media: 1220853572180739674_233961632
Media: 1220853571106323542_44255974
Media: 1220853327487332588_16383867
Media: 1220853529276039536_37204591
Media: 1220853517236612185_1342227858
Media: 1220853478513480317_596571
Media: 1220853329006327307_299159508
Media: 1220853296836482014_1829274963
Media: 1220853282356978078_1498664215
Media: 1220853191933038656_528166155
Media: 1220481246711237359_211289081 #MEDIA INCORRECT ORDER
Media: 1220853144521663282_3026017167
Media: 1220853127735637950_619046756
Media: 1220853103550902683_2074401387
Media: 1220853106444172011_3020165605
Media: 1220449359646948005_208916789 #MEDIA INCORRECT ORDER
Media: 1220853071011680880_596571
Media: 1220852985861033044_446238634
Media: 1220852995848611111_3098675456
Media: 1220852944343050919_1126655937
Media: 1220852926209616200_327453609
Media: 1220852902671104371_351483533
Media: 1220852898165133786_207127275
Media: 1220852887618705294_1736270372
Media: 1220852850174855566_1133338201
Media: 1220852831895483805_30557620
Media: 1220851564341433250_1460935835
Media: 1220852721064734213_14247170
Media: 1220852681564341476_1329013696
Media: 1220852647186623946_2143587522
Media: 1220852634988856098_6331807
Media: 1220852621030972511_530287550
]
Edit: I've just checked that python instagram's client has been deprecated 9 days ago, and there's a lot of stackoverflow questions about api behaviour's from 23-march. A lot of coincidences
File "/usr/local/lib/python2.7/dist-packages/instagram/bind.py", line 194, in _call
return method.execute()
File "/usr/local/lib/python2.7/dist-packages/instagram/bind.py", line 186, in execute
content, next = self._do_api_request(url, method, body, headers)
File "/usr/local/lib/python2.7/dist-packages/instagram/bind.py", line 148, in _do_api_request
obj = self.root_class.object_from_dictionary(entry)
File "/usr/local/lib/python2.7/dist-packages/instagram/models.py", line 88, in object_from_dictionary
for comment in entry['comments']['data']:
KeyError: 'data'
Edit 3 solved here
It seems that you're passing a media id as pagination. You can't do that anymore since Instagram changed the pagination values. It used to be a media id, but now is a string.
When you do the request, you'll receive an json like this:
{
pagination: {
next_max_tag_id: ...,
deprecation_warning: "next_max_id and min_id are deprecated for this endpoint; use min_tag_id and max_tag_id instead",
next_max_id: ...,
next_min_id: ...,
min_tag_id: ...
...
},
meta: {
...
},
data: {
...
}
}
Just use the next_max_id
value as max_tag_id
in your request. That should works.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With