Converting an API connected database into a dynamic input app - api

I have connected my google sheets to an API from which is returns certain parameters when i enter a certain tickr. I am wondering how to go about converting this into an app, whereby the users can enter a tickr of their choice and it dynamically changes in the google sheets, accordingly reflecting the changes in parametric data on the app interface also.
Not exactly sure how to go about it, wondering if anyone has experience doing the same.

Related

Expo: Detect Face and Save To Api For Comparing Later

I'm trying to make my own system with Django-Rest-Framework which includes also register/login system for mobile application. I keep user informations in my Django server.
The deal is: I'm new at React-Native and there is really less any source or tutorial for face scanning an comparing. I need to learn how to scan face (with FaceDetector or something else) and save it to my server. I know how to send it to my server, I need to know "what should I save exactly". And that would be really good if I learn how to compare a saved face scan data with a new one (so I can authorize users).

Could I have a user to write/read data to/from a google spreadsheet of *his* from a static website?

I could not store any secret keys since the data would be accessed though a static website. (I dont want to use google forms)
I understand I need a secret api key if I want anyone to write/read data to/from a google spreadsheet that is mine, but this is not my case.
This for example about a simple "TODO app", where each user would just access their own data, do I still need a key if each user is accessing only their own private spreadsheed?
This is kind of a broad question so my answer would be a series of recommendations, in that way you will have a better idea of what you have to do to fulfill your goal:
1) First of all. If you haven't heard about Apps Script, I would recommend you to check it, because it integrates easily programming tools for all Google apps.
2) Now knowing what's Apps Script, you could check how to integrate Apps Script code into your Spreadsheet by Extending Google Sheets.
3) Spreadsheet Service allows performing several tasks related to your Sheet files.
4) Knowing about Apps Script and how to handle the Sheets files by coding, the next step will be to check Web Apps, which will help you to create an integrated web app on your Spreadsheet.
5) The last thing I recommend you is to see the Class google.script.run (Client-side API), this class will pass values from your Front-end to your Back-end built on Apps Script.

Using Google Calendar Web API to dynamically create events on (company) calendar?

I've reviewed the Google Calendar API docs and having trouble finding information on creating events on a predefined calendar.
The Browser Quickstart docs worked just great to get up and running by authenticating use of my calendar. However, do you have advice on how to allow users to create events on a predefined calendar?
Use case:
We have a couple web forms for users (leads) to complete. When certain criteria have been met, we'd like to pass details from the web form to a Google Calendar event on our company calendar.
User completes web form which includes a handful of questions, namely two date/time pickers
On form submission, deliver form values to Google Calendar API - create event dynamically using information submitted in the form
Standard calendar functionality happens; notifications, etc. generated from Google Calendar
More clarification:
Users don't need view access to the calendar
The calendar integration is irrelevant to users, they're just submitting a contact form
It appears the only required event fields are start and end time so that's easy enough to grab from a date picker I'm just lost on how to engineer the connection to our company calendar named e.g. "User Created Events".
I know this can be done with Zapier. I'd like to learn the correct way though.
Based from Calendar API Sharing and Attendees:
There are two different ways to share calendar and event data with
others.
Firstly, you can share an entire calendar, with a specified level of
access. For example, you can create a team calendar, and then do
things like:
Grant all members of your team the right to add and modify events in the calendar
Grant your boss the right to see the events on your calendar
Grant your customers the right to only see when you are free or busy, but not the details of the events
You can also adjust the access to individual events on the shared
calendar.
You can share with somebody a specific created event on a calendar using google api by going through ACL - access control list.
I use Zapier for my organization to complete the exact same scenario. Ideally the webform service you use has a built in integration with Zapier, otherwise there will be some coding involved to have this work.
Assuming your webform service has an integration with Zapier:
Trigger Event: There is likely a trigger scenario along the lines of "execute zap on submission of new record". Upon this trigger activating, depending on how your webform service sends data, you will likely receive a list of values corresponding to the data entered.
Optional Action: Depending on the consistency of the data being entered through the webform you may want to also consider adding a step using the Zapier code module. The code module allows you to take the data gathered during the trigger event and manipulate it as you see fit (I personally use this step to check that data was entered correctly). That said it is an advanced step and does require some coding experience in either javascript or python. See the Python documentation here and the Java documentation here.
Google Calendar Action: If you haven't already you will be required to authorize Zapier's access to read and write to your calendar. Zapier makes this pretty straight forward. Click the "connect account" button and a dialog window will appear asking you to log into your gmail account. After you have connected your account you can then setup your template. Using the drop downs within the template you can select what data you would like to be entered into each field. Assuming everything went correctly then you should see the information added to your calendar.
See the documentation here for further explanation.
Assuming your webform service does not have an integration with Zapier:
This is a bit trickier and will be dependent on the whether or not your webform service allows you to make POST requests based on the entering of new forms. This will as well require a good deal more programming to get up and running. Not knowing the platform you are using to capture user input forces me to make a lot of assumptions.
So assuming your webform platform has the ability to make POST requests with the data from a newly entered record, or allows you to program it to do so, you could use Zapier's webhook module as a trigger. See Zapier's webhook documentation here.
For this to work you would have to start by creating a webhook endpoint through Zapier. The endpoint is just a url that is waiting to receive data sent to it from an outside source, in this case your webform platform.
The zap template would look as follows:
Trigger Event: POST request data caught by Zapier webhook endpoint. Once the data is captured it can be used in the same way you would with a standard zap. That is to say that the data, in the form of key/value pairs, will now be populated in Zapier's drop down list you use to move information from one step to the next.
Optional Action: Once again you can leverage Zapier's code module to apply logic to the captured data.
Google Calendar Action: Same as the "Google Calendar Action" listed above.
Edit:
In re-reading your question I realize that you are looking to achieve this without using zapier. I will leave this answer up for the time being, as perhaps it will have some value to you. If not I can remove it.

Create Dynamic Questions on a Google Form

I have a list of URLs for hundreds of images in a google spreadsheet. I want to create a google form that dynamically picks 50 of these images, displays them and asks a generic like it / hate it question, then submits this data along with the URL to a spreadsheet.
Is there a way to do this dynamically?
AFAIK, you can create form using apps script using a function. But once created it becomes static. Only updating a form would make it as dynamic as possible.
References:
Dynamic selection options in Google Apps Script for forms
Dynamically edit multiple choice options in live Google Form using Apps Script
Is it possible to show dynamic information in a Google Form based on a previous response?
OR
Create a web App using Apps Script.
Hope this helps.

Using google spreadsheet as an datasource for core data objects

Before reinventing the wheel i'm looking for code that pulls data from google spreadsheets and storing them in core data objects and vice versa.
Has anyone seen an objective-c project on the web that does exactly that? I want my users editing their data on spreadsheets and syncing it back to their mobile device.
You might be intrested in the Google Spreadsheets API. Calls to this API will return an XML representation of the actual Spreadsheet - all you have to do is parse this. I'm pretty sure there already are good XML-parsers for Objective-C out there.