Posting search query to GitHub in Xcode - xcode

I need to create an Xcode app that will allow the user to post their input in the TextField and based on that will fetch GitHub repositories that match the query.
I can't even find a base URL for that GitHub API let alone, how to pass the input to the GitHub's search field.
Please help.
The idea of this app is to create a mobile GitHub repository search app that will deliver results based on the user's input.

The GitHub api documentation would be a good place to start looking. It tells you the endpoint to use, the responses and the parameters to query for the request.
To save you digging, hitting this endpoint will give you the repositories for the username you specify - which will be the input from the textField I assume.
https://api.github.com/users/YOUR_TEXTFIELD_INPUT/repos

Related

How to get access_token for replying review in Play Developer API?

This link: Reply to Reviews describes the way to retrieve and reply to reviews. The Google Play Developer Reply to Reviews API allows us to view user feedback for our app and reply to this feedback. But I am finding it difficult to get the authorization token. It says I should have got this when I get access to the API.
But after going to the link, I didn't find too many information on this, rather, it has another link which takes me to the page where I have already created a service account.
After summarizing, my question is - I have created a service account and downloaded the key as JSON. But how to get this access_token the given snapshot asking for? The JSON file itself doesn't contain such access_token, rather it contains other information including type, project_id, private_key, client_id etc.
The process is not described directly in the link given in the question. Rather we will follow the steps mentioned in Play Developer API | Authorization
The whole process actually has two major steps:
Making a OAuth 2.0 client ID and downloading it.
Using client_id, client_secret and redirect_uris from this download JSON file to make API call.
Making OAuth 2.0 client ID and getting parameters
In order to do this:
Go to Google Play Console.
Use your play console account to login into it.
Make sure the right project is selected, at top there is a drop-down, where the correct project is supposed to be selected.
Now from + CREATE CREDENTIALS button create a OAuth Client ID and after successful creation you will find it listed under Credentials tab. The Credentials tab is at the left side of the page.
Now download the OAuth Client ID and it will be saved as a JSON file.
Open the JSON file and collect the client_id, client_secret and redirect_uris from there. Here redirect_uris will contain a list of URLs. One of them is http://localhost, we don't need it. Please take the other one, somewhat like urn:ietf:wg:oauth:2.0:oob.
Now the second step begins:
Make the API call
Now go to the first link I provided in the answer, i.e: Play Developer API | Authorization. We just did the first step under initial configuration. Now the second step begins. Make sure you are using the same browser where you are already logged-in on Google Play Console.
Now fill-up the fields in this link as mentioned in the documentation
with the information we just got (client_id, client_secret,
redirect_uris), remove the ... and put your redirect_uri and
client_id there:
https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/androidpublisher&response_type=code&access_type=offline&redirect_uri=...&client_id=...
Now after filling up your credentials in this link provided paste this link to browser and go to this URL.
This may require you to authorize this request by signing in with your account (with the Google Play Console Account we are using so far).
After authorization you will be given a code parameter similar to 4/eWdxD7b-YSQ5CNNb-c2iI83KQx19.wp619..... (This is also mentioned in the documentation you may follow the steps there).
Now go to the step 4 in the documentation (following is a snapshot):
replace the credentials which are here inside <..> (including < and >) with the information we so far collected. Here <the code from the previous step> is nothing but the code parameter 4/eWdxD7b-YSQ5CNNb-c2iI83KQx19.wp619.... we got.
Now make this API call. To make this kind of API calls you may need to use Bulk edit of Postman software (download and install the software). But if you are not comfortable with this Bulk edit, I am giving you a similar form data in the following snapshot. Just fill up the fields there in Postman and make the API call, (Please note that the method is selected POST):
Also you need not change the grant_type (its value is authorization_code).
Now clicking Send you should get the response which will contain access_token. Following is a snapshot of the response that comes with the access_token we are looking for (snapshot got from the documentation):
This response will come only once (for a certain code), to get another response you may need another code. So, save this response as a JSON from Postman to use it further.
Now you are done! Use this access_token and make API calls to get reply to reviews. More details here. Also please note that you might not get any reviews at all with this call, as this reviews' responses only work for recent time. If you make some recent comment in Play Store under your desired app they will be returned but the older comments will not be returned as response and the response might be blank {} if there are no recent comments. As mentioned in the documentation:
Note: You can retrieve only the reviews that users have created or modified within the last week. If you want to retrieve all reviews for your app since the beginning of time, you can download your reviews as a CSV file using the Google Play Console.

Getting the URL of a Mailchimp list via the API

I'd like to link directly to a Mailchimp list in the Mailchimp dashboard. I have full API access, and the list id is: bb7b537cd0.
However, I notice when looking at the dashboard URL that the URL is:
https://us5.admin.mailchimp.com/lists/members/?id=212269
The id 212269 is not present in the API response data about this list.
Is there any way of linking directly to the list that I'm not aware of?
Thanks!
This isn't possible through v3.0, but is possible in older versions. The main reason it was removed from 3.0 is that the dashboard URLs can change without notice, so relying on a particular algorithm to build them isn't advisable.

Searching for Google+ Attachment

Google plus allows for the sharing of a url; and this gets added an activity as an attachment in the activity data. Is there a way when using Activities.Seach() to target the search to the attachment url? I can share a url on g+ and if the url is part of the comment of my post then I can then pull that post when using the activities.search; however if the url is only contained in the attachment, I can't pull any activities with that url. Is there something I'm missing? Any suggestions?
This is actually a known issue with google plus, one that has been requested quite a bit from the development community. https://code.google.com/p/google-plus-platform/issues/detail?id=57
The only real option at this time it to get an aggregate count of +1s and shares as shown here: http://www.helmutgranda.com/2011/11/01/get-a-url-google-count-via-php/

Google places Api Key

I have searched through here for other questions related to the same topic and cannot find a definite answer.
My problem seems the same as many others in that I cannot get a response from Google Places Api.
I am trying from within an iphone app, yes the code is correct , I have checked and in desperation just resorted to wiping out the code to just make a request using the examples provided by the Docs on Google Places.
Tried putting the url into a browser, always the same response, whichever browser.
{
"html_attributions" : [],
"results" : [],
"status" : "REQUEST DENIED"
}
I have tried making new keys, same result and yes the identifer for the app is also listed.
Is there a time frame before being able to use the key.
Here how I've done this
1)You need to login with your google account
2)Google APi Console will Appear
3)Look out at Screenshot
4)you will find Services over there ,click on it where you can have choose API you would like to use
5)then go to API Access as shown in you can get your Google API Key.
Thanks
Advice -use your own Google API key
You probably need 'sensor' parameter in your request URL, I guess.
Just set 'sensor=false&' in the URL and try it.
In order to use the google place API, you need to do the following steps on https://console.developers.google.com:
You need to go your project.
1: Activate Google places API depending upon your clients: iOS, Android or web.
2: Then go to the Credentials section on the left.
3: Generate a SERVER key.
Insert that key into your google place api call. Example:
https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=500&types=food&name=cruise&key=SERVERKEY
Its a simple GET Rest call.
instead of this
The url: https://maps.googleapis.com/maps/api/place/search/json?location=-74.006605,40.714623&radius=5000&types=bar|police&name=&sensor=false&key=Api_key
use this
The url:
(https://maps.googleapis.com/maps/api/place/search/json?location=-74.006605,%2040.714623&radius=5000&types=bar|police&name=&sensor=false&key=Api_key)
%20 is for space

Twitter - how to get user's timeline

My app, in one of its parts, should reproduce the same behaviour as a web page, where you can find a section with a table of Twitter posts, I guess they are a user's timeline. I took a look at Twitter api's and I found a call which could return it, but, If I got it right, you are supposed to be authenticated with that user credentials. Is there a way to achieve it without being that user (thus without using that user's credentials)? If not we have to assume that web plugins have more flexibility than queries which return xml, or json? Which kind of approach fits best, considering the app needs to support iOS from 4.3 to 6.x? Does Twitter+Oauth provide more flexibility than direct Twitter api calls?
Hm, if you are looking to just display user's feed you can do it as simple as:
https://api.twitter.com/1/statuses/user_timeline.rss?screen_name=reMakeIn&count=200
Where you change the screen_name to the desired user that you want to show the feeds for.
No need what so ever to use authentication for this.
Not sure if this is what you want to achieve, but I use this approach to show random user's tweet feed.

Resources