फ़ॉर्म और जवाब वापस पाएं

Google Forms API की मदद से, फ़ॉर्म का कॉन्टेंट, सेटिंग, और मेटाडेटा वापस पाया जा सकता है. साथ ही, इससे फ़ॉर्म भरने वाले व्यक्ति के जवाब भी वापस पाए जा सकते हैं. इस पेज पर, इन टास्क को पूरा करने का तरीका बताया गया है.

शुरू करने से पहले

इस पेज पर दिए गए टास्क पूरे करने से पहले, ये टास्क पूरे करें:

  • Early Adopter Program के निर्देशों में दिए गए तरीके से, अनुमति/पुष्टि करने और क्रेडेंशियल सेट अप करने की प्रोसेस पूरी करें.

फ़ॉर्म के कॉन्टेंट और मेटाडेटा को वापस पाना

किसी फ़ॉर्म का कॉन्टेंट, सेटिंग, और मेटाडेटा वापस पाने के लिए, फ़ॉर्म आईडी के साथ forms.get() तरीके का इस्तेमाल करें.

Python

forms/snippets/retrieve_contents.py
from apiclient import discovery
from httplib2 import Http
from oauth2client import client, file, tools

SCOPES = "https://www.googleapis.com/auth/forms.body.readonly"
DISCOVERY_DOC = "https://forms.googleapis.com/$discovery/rest?version=v1"

store = file.Storage("token.json")
creds = None
if not creds or creds.invalid:
  flow = client.flow_from_clientsecrets("client_secrets.json", SCOPES)
  creds = tools.run_flow(flow, store)
service = discovery.build(
    "forms",
    "v1",
    http=creds.authorize(Http()),
    discoveryServiceUrl=DISCOVERY_DOC,
    static_discovery=False,
)

# Prints the title of the sample form:
form_id = "<YOUR_FORM_ID>"
result = service.forms().get(formId=form_id).execute()
print(result)

Node.js

forms/snippets/get_form.js
import path from 'path';
import {forms} from '@googleapis/forms';
import {authenticate} from '@google-cloud/local-auth';

const formID = '<YOUR_FORM_ID>';

async function getForm(query) {
  const auth = await authenticate({
    keyfilePath: path.join(__dirname, 'credentials.json'),
    scopes: 'https://www.googleapis.com/auth/forms.body.readonly',
  });
  const formsClient = forms({
    version: 'v1',
    auth: auth,
  });
  const res = await formsClient.forms.get({formId: formID});
  console.log(res.data);
  return res.data;
}

फ़ॉर्म के सभी जवाब वापस पाना

किसी फ़ॉर्म के सभी जवाब पाने के लिए, फ़ॉर्म आईडी के साथ forms.responses.list() तरीके को कॉल करें.

Python

forms/snippets/retrieve_all_responses.py
from apiclient import discovery
from httplib2 import Http
from oauth2client import client, file, tools

SCOPES = "https://www.googleapis.com/auth/forms.responses.readonly"
DISCOVERY_DOC = "https://forms.googleapis.com/$discovery/rest?version=v1"

store = file.Storage("token.json")
creds = None
if not creds or creds.invalid:
  flow = client.flow_from_clientsecrets("client_secrets.json", SCOPES)
  creds = tools.run_flow(flow, store)
service = discovery.build(
    "forms",
    "v1",
    http=creds.authorize(Http()),
    discoveryServiceUrl=DISCOVERY_DOC,
    static_discovery=False,
)

# Prints the responses of your specified form:
form_id = "<YOUR_FORM_ID>"
result = service.forms().responses().list(formId=form_id).execute()
print(result)

Node.js

forms/snippets/get_all_responses.js
import path from 'path';
import {forms} from '@googleapis/forms';
import {authenticate} from '@google-cloud/local-auth';

const formID = '<YOUR_FORM_ID>';

async function getAllResponses() {
  const auth = await authenticate({
    keyfilePath: path.join(__dirname, 'credentials.json'),
    scopes: 'https://www.googleapis.com/auth/forms.responses.readonly',
  });
  const formsClient = forms({
    version: 'v1',
    auth: auth,
  });
  const res = await formsClient.forms.responses.list({
    formId: formID,
  });
  console.log(res.data);
  return res.data;
}

किसी फ़ॉर्म में मिले जवाब को वापस पाना

किसी फ़ॉर्म से कोई खास जवाब पाने के लिए, फ़ॉर्म आईडी और जवाब के आईडी के साथ forms.responses.get() तरीके को कॉल करें.

Python

forms/snippets/retrieve_single_response.py
from apiclient import discovery
from httplib2 import Http
from oauth2client import client, file, tools

SCOPES = "https://www.googleapis.com/auth/forms.responses.readonly"
DISCOVERY_DOC = "https://forms.googleapis.com/$discovery/rest?version=v1"

store = file.Storage("token.json")
creds = None
if not creds or creds.invalid:
  flow = client.flow_from_clientsecrets("client_secrets.json", SCOPES)
  creds = tools.run_flow(flow, store)
service = discovery.build(
    "forms",
    "v1",
    http=creds.authorize(Http()),
    discoveryServiceUrl=DISCOVERY_DOC,
    static_discovery=False,
)

# Prints the specified response from your form:
form_id = "<YOUR_FORM_ID>"
response_id = "<YOUR_RESPONSE_ID>"
result = (
    service.forms()
    .responses()
    .get(formId=form_id, responseId=response_id)
    .execute()
)
print(result)

Node.js

forms/snippets/get_single_response.js
import path from 'path';
import {forms} from '@googleapis/forms';
import {authenticate} from '@google-cloud/local-auth';

const formID = '<YOUR_FORM_ID>';
const responseID = '<YOUR_RESPONSE_ID>';

async function getSingleResponse() {
  const auth = await authenticate({
    keyfilePath: path.join(__dirname, 'credentials.json'),
    scopes: 'https://www.googleapis.com/auth/forms.responses.readonly',
  });
  const formsClient = forms({
    version: 'v1',
    auth: auth,
  });
  const res = await formsClient.forms.responses.get({
    formId: formID,
    responseId: responseID,
  });
  console.log(res.data);
  return res.data;
}