$lang['tuto'] = "ట్యుటోరియల్స్"; ?> Facebook వ్యాపారం APIలో Instagram

Facebook వ్యాపారం APIలో Instagram ఖాతా అనుమతి లోపాలను పరిష్కరిస్తోంది

Temp mail SuperHeros
Facebook వ్యాపారం APIలో Instagram ఖాతా అనుమతి లోపాలను పరిష్కరిస్తోంది
Facebook వ్యాపారం APIలో Instagram ఖాతా అనుమతి లోపాలను పరిష్కరిస్తోంది

API ఇంటిగ్రేషన్‌లలో Instagram ఖాతా యాక్సెస్ సమస్యలను అర్థం చేసుకోవడం

మీ Facebook Business API ఇంటిగ్రేషన్‌ని సెటప్ చేసే సమయాన్ని పెట్టుబడి పెట్టండి, ఎండ్‌పాయింట్‌కి కాల్ చేసేటప్పుడు అనుమతి రోడ్‌బ్లాక్‌లను ఎదుర్కోవడానికి మాత్రమే. ఇది చాలా మంది డెవలపర్‌లు ఎదుర్కొనే దృశ్యం, ప్రత్యేకించి Instagram ఖాతా అసోసియేషన్‌లతో పని చేస్తున్నప్పుడు. అవసరమైన అన్ని అనుమతులు మంజూరు చేసినప్పటికీ, గోడను కొట్టడం వల్ల కలిగే నిరాశ కాదనలేనిది. 😟

డెవలపర్ రోల్ ఖాతాని ఉపయోగించి చేసిన కాల్‌లు దోషరహితంగా పనిచేసినప్పుడు ఈ సమస్య ముఖ్యంగా కలవరపెడుతుంది, అయితే బాహ్య ఖాతాలతో చేసే ప్రయత్నాలు ఎర్రర్‌లకు దారితీస్తాయి. API ప్రతిస్పందన తరచుగా మద్దతు లేని అభ్యర్థనలను లేదా తప్పిపోయిన అనుమతులను సూచిస్తుంది, దీని వలన మీరు పరిష్కారాల కోసం తహతహలాడుతున్నారు. లైవ్ యాప్‌ల కోసం, ఇది క్లిష్టమైన వర్క్‌ఫ్లోలకు అంతరాయం కలిగించవచ్చు. 🚧

ఈ గైడ్‌లో, మేము `/owned_instagram_accounts` ముగింపు పాయింట్‌తో కూడిన వాస్తవ-ప్రపంచ సమస్యను విశ్లేషిస్తాము. డెవలపర్ అధునాతన అనుమతులు, లైవ్ మోడ్ యాక్టివేట్ మరియు క్షుణ్ణంగా పరీక్షించినప్పటికీ "మద్దతు లేని పొందండి అభ్యర్థన" వంటి లోపాలను ఎదుర్కొన్నారు. తెలిసిన కదూ? మీరు ఒంటరిగా లేరు.

మేము ఈ సమస్యకు సంభావ్య కారణాలను పరిశీలిస్తాము, ట్రబుల్షూటింగ్ పద్ధతులను భాగస్వామ్యం చేస్తాము మరియు దాన్ని పరిష్కరించడానికి చర్య తీసుకోగల దశలను అందిస్తాము. API ప్రతిస్పందనలను డీబగ్ చేయడం నుండి అనుమతి సెటప్‌లను తిరిగి మూల్యాంకనం చేయడం వరకు, మేము అన్నింటినీ కవర్ చేస్తాము. అతుకులు లేని API ఇంటిగ్రేషన్‌తో మిమ్మల్ని మళ్లీ ట్రాక్‌లోకి తీసుకువస్తాము! 🚀

ఆదేశం ఉపయోగం యొక్క ఉదాహరణ
axios.get() HTTP GET అభ్యర్థనలను చేయడానికి Node.jsలో ఉపయోగించబడుతుంది. ఇది వాగ్దానాలను తిరిగి ఇవ్వడం ద్వారా API కాల్‌లను సులభతరం చేస్తుంది మరియు సులభంగా ఎర్రర్ హ్యాండ్లింగ్‌కు మద్దతు ఇస్తుంది. ఉదాహరణకు, Instagram ఖాతాల ముగింపు పాయింట్‌కి కాల్ చేయడం.
response.raise_for_status() HTTP అభ్యర్థన విజయవంతం కాని స్థితి కోడ్‌ను అందించినట్లయితే మినహాయింపును పెంచడానికి పైథాన్ యొక్క `అభ్యర్థనలు` లైబ్రరీలో ఉపయోగించబడుతుంది. ఇది API కాల్‌ల సమయంలో సరైన ఎర్రర్ హ్యాండ్లింగ్‌ని నిర్ధారిస్తుంది.
chai.request(app).query() Mocha/Chai పరీక్షలలో, ఈ పద్ధతి నిర్దిష్ట ఇన్‌పుట్‌లతో API ఎండ్‌పాయింట్‌లను ధృవీకరించడంలో సహాయపడటానికి, అప్లికేషన్‌కు ప్రశ్న పారామితులతో HTTP అభ్యర్థనలను అనుకరించడానికి ఉపయోగించబడుతుంది.
response.json() APIని వినియోగించే క్లయింట్-వైపు అప్లికేషన్‌లతో అనుకూలతను నిర్ధారిస్తూ, JSON ప్రతిస్పందనలలోకి పైథాన్ నిఘంటువులను సీరియలైజ్ చేయడానికి ఫ్లాస్క్‌లో ఉపయోగించబడుతుంది.
try-catch `axios`తో API కాల్‌ల వంటి అసమకాలిక ఆపరేషన్‌లను అమలు చేస్తున్నప్పుడు లోపాలను సునాయాసంగా నిర్వహించడానికి JavaScriptలో అమలు చేయబడింది.
describe() సంబంధిత యూనిట్ పరీక్షలను సమూహపరచడానికి మోచాలో ఒక పద్ధతి. ఇది పరీక్షలను తార్కికంగా నిర్మిస్తుంది, బహుళ API ప్రవర్తనలను పరీక్షించేటప్పుడు డీబగ్గింగ్‌ను సులభతరం చేస్తుంది.
requests.get() పైథాన్‌లో, ఇది పేర్కొన్న URLకి HTTP GET అభ్యర్థనను పంపుతుంది. Flask సొల్యూషన్‌లో Facebook గ్రాఫ్ APIతో పరస్పర చర్య చేయడానికి ఉపయోగించబడుతుంది.
app.use(express.json()) ఇన్‌కమింగ్ JSON అభ్యర్థన బాడీలను అన్వయించే Express.jsలోని మిడిల్‌వేర్, API క్లయింట్‌ల నుండి నిర్మాణాత్మక డేటాను నిర్వహించడానికి బ్యాకెండ్‌ని అనుమతిస్తుంది.
response.data Node.jsలోని Axiosకి నిర్దిష్టంగా, ఇది API కాల్ నుండి ప్రతిస్పందన పేలోడ్‌ను తిరిగి పొందుతుంది, డెవలపర్‌ల కోసం డేటా యాక్సెస్ మరియు మానిప్యులేషన్‌ను సులభతరం చేస్తుంది.

Facebook API అనుమతి సమస్యల కోసం బ్యాకెండ్ సొల్యూషన్‌లను అన్వేషించడం

ఎక్స్‌ప్రెస్‌తో Node.jsలో వ్రాయబడిన మొదటి స్క్రిప్ట్, ఇన్‌స్టాగ్రామ్ ఖాతాలను తిరిగి పొందడానికి బలమైన పరిష్కారాన్ని అందిస్తుంది Facebook వ్యాపారం API. ఇది HTTP అభ్యర్థనలను సమర్ధవంతంగా నిర్వహించడానికి `axios` లైబ్రరీని ఉపయోగిస్తుంది. స్క్రిప్ట్ వ్యాపార ID మరియు యాక్సెస్ టోకెన్‌ను ప్రశ్న పారామీటర్‌లుగా తీసుకునే API ఎండ్‌పాయింట్ `/fetch-instagram-accounts`ని నిర్వచిస్తుంది. ఈ మాడ్యులర్ స్ట్రక్చర్ ఇతర API కాల్‌ల కోసం దీన్ని మళ్లీ ఉపయోగించగలిగేలా చేస్తుంది. `ట్రై-క్యాచ్` బ్లాక్‌ని అమలు చేయడం ద్వారా, ట్రబుల్షూటింగ్ కోసం API ప్రతిస్పందన సమస్యలను సున్నితంగా నిర్వహించడం, క్యాప్చర్ చేయడం మరియు లాగింగ్ చేయడం వంటి వాటిని ఇది నిర్ధారిస్తుంది. ఉదాహరణకు, చెల్లని టోకెన్ లేదా తప్పిపోయిన అనుమతులు సమస్యకు కారణమైతే లైవ్ యాప్ త్వరగా గుర్తించగలదు. 🛠️

పైథాన్ సొల్యూషన్ ఇలాంటి కార్యాచరణను సాధించడానికి ఫ్లాస్క్‌ని ఉపయోగిస్తుంది. ఇది API ఇంటరాక్షన్ కోసం `అభ్యర్థనలు` లైబ్రరీని ఉపయోగించి ఒక ముగింపు బిందువు `/fetch_instagram_accounts`ని సృష్టిస్తుంది. `response.raise_for_status()` కమాండ్ ముఖ్యంగా ఉపయోగకరంగా ఉంటుంది, ఇది HTTP ఎర్రర్‌లకు మినహాయింపును పెంచుతుంది, క్లీన్ మరియు ఎఫెక్టివ్ ఎర్రర్ హ్యాండ్లింగ్‌ను ప్రోత్సహిస్తుంది. ఈ స్క్రిప్ట్ ప్రత్యేకంగా పైథాన్ యొక్క సింటాక్స్ మరియు లైబ్రరీలతో బాగా తెలిసిన డెవలపర్‌లకు సరిపోతుంది. వాస్తవ-ప్రపంచ అనువర్తనాలు API నుండి పొందబడిన Instagram ఖాతా అంతర్దృష్టులను చూపించే డాష్‌బోర్డ్‌తో ఈ బ్యాకెండ్‌ను సమగ్రపరచడాన్ని కలిగి ఉంటాయి.

ఈ స్క్రిప్ట్‌లను ధృవీకరించడంలో మోచా మరియు చాయ్‌లోని యూనిట్ పరీక్షలు కీలక పాత్ర పోషిస్తాయి. చెల్లుబాటు అయ్యే మరియు చెల్లని యాక్సెస్ టోకెన్‌ల వంటి విభిన్న దృశ్యాల కోసం కోడ్ పని చేస్తుందని నిర్ధారించడానికి ఈ పరీక్షలు నిజమైన API కాల్‌లను అనుకరిస్తాయి. `chai.request(app).query()`ని ఉపయోగించడం వలన బ్యాకెండ్ ప్రశ్న పారామితులను ఎంతవరకు నిర్వహిస్తుందో పరీక్షించడానికి డెవలపర్‌లను అనుమతిస్తుంది. ఉదాహరణకు, ఒక పరీక్ష సందర్భంలో, చెల్లుబాటు అయ్యే టోకెన్ ఇన్‌స్టాగ్రామ్ ఖాతాల జాబితాను అందించాలి, అయితే చెల్లనిది తగిన దోష సందేశాన్ని అందించాలి. సున్నితమైన డెవలపర్ అనుభవాన్ని మరియు విశ్వసనీయమైన అప్లికేషన్ పనితీరును నిర్ధారించడానికి ఇటువంటి పరీక్షలు చాలా ముఖ్యమైనవి. ✅

రెండు పరిష్కారాలు మాడ్యులారిటీ మరియు పనితీరు కోసం ఉత్తమ పద్ధతులను అనుసరిస్తాయి. Node.js లేదా Flask యొక్క JSON ప్రతిస్పందన పద్ధతులలో `express.json()` వంటి మిడిల్‌వేర్‌ని ఉపయోగించడం ద్వారా, స్క్రిప్ట్‌లు డేటా పార్సింగ్ మరియు స్ట్రక్చరింగ్‌ను సమర్థవంతంగా నిర్వహిస్తాయి. వారు ఇన్‌పుట్ ధ్రువీకరణ మరియు ఎర్రర్ హ్యాండ్లింగ్‌ను కూడా నొక్కిచెబుతారు, API ఇంటిగ్రేషన్‌లను సురక్షితం చేయడంలో కీలకం. ఉదాహరణకు, ఈ స్క్రిప్ట్‌లను ఉపయోగించి, డెవలపర్ ఇన్‌స్టాగ్రామ్ ఖాతా డేటాను సజావుగా మార్కెటింగ్ ప్లాట్‌ఫారమ్‌లో ఇంటిగ్రేట్ చేయవచ్చు, నిర్దిష్ట ఖాతాలకు అనుగుణంగా ప్రచారాలను ప్రారంభించవచ్చు. ఇటువంటి చక్కటి నిర్మాణాత్మక విధానాలు ఉత్పత్తి పరిసరాలలో నడుస్తున్న లైవ్ యాప్‌లు కూడా అధిక విశ్వసనీయత మరియు పనితీరును కలిగి ఉండేలా చూస్తాయి. 🚀

Instagram ఖాతాలను యాక్సెస్ చేసేటప్పుడు API అనుమతి సమస్యలను విశ్లేషించడం

బ్యాకెండ్ సొల్యూషన్స్ కోసం Express.jsతో Node.jsని ఉపయోగించడం

// Import required modules
const express = require('express');
const axios = require('axios');
const app = express();
const PORT = 3000;
// Middleware for parsing JSON requests
app.use(express.json());
// Endpoint to fetch Instagram accounts associated with a Business account
app.get('/fetch-instagram-accounts', async (req, res) => {
    const businessId = req.query.businessId;
    const accessToken = req.query.accessToken;
    const url = `https://graph.facebook.com/v20.0/${businessId}/owned_instagram_accounts?access_token=${accessToken}`;
    try {
        // API call to fetch Instagram accounts
        const response = await axios.get(url);
        res.status(200).json(response.data);
    } catch (error) {
        // Handle errors gracefully
        console.error('Error fetching Instagram accounts:', error.response.data);
        res.status(error.response?.status || 500).json({
            error: error.response?.data || 'Internal Server Error'
        });
    }
});
// Start the server
app.listen(PORT, () => {
    console.log(`Server running on port ${PORT}`);
});

Instagram ఖాతా పునరుద్ధరణ కోసం API ఎండ్‌పాయింట్ లోపాలను పరిష్కరిస్తోంది

బ్యాకెండ్ API ఇంటిగ్రేషన్ కోసం పైథాన్ మరియు ఫ్లాస్క్‌ని ఉపయోగించడం

from flask import Flask, request, jsonify
import requests
app = Flask(__name__)
@app.route('/fetch_instagram_accounts', methods=['GET'])
def fetch_instagram_accounts():
    business_id = request.args.get('businessId')
    access_token = request.args.get('accessToken')
    url = f"https://graph.facebook.com/v20.0/{business_id}/owned_instagram_accounts"
    params = {'access_token': access_token}
    try:
        response = requests.get(url, params=params)
        response.raise_for_status()
        return jsonify(response.json()), 200
    except requests.exceptions.HTTPError as http_err:
        print(f"HTTP error occurred: {http_err}")
        return jsonify({"error": str(http_err)}), response.status_code
    except Exception as err:
        print(f"Other error occurred: {err}")
        return jsonify({"error": "An error occurred"}), 500
if __name__ == '__main__':
    app.run(debug=True)

యూనిట్ విభిన్న పాత్రల కోసం API అనుమతులను పరీక్షిస్తోంది

Node.js APIని పరీక్షించే యూనిట్ కోసం Mocha మరియు Chaiని ఉపయోగించడం

// Import required modules
const chai = require('chai');
const chaiHttp = require('chai-http');
const app = require('../server'); // Replace with your app path
chai.use(chaiHttp);
const { expect } = chai;
describe('Test API Permissions', () => {
    it('Should fetch Instagram accounts successfully with valid credentials', (done) => {
        chai.request(app)
            .get('/fetch-instagram-accounts')
            .query({ businessId: '12345', accessToken: 'valid_token' })
            .end((err, res) => {
                expect(res).to.have.status(200);
                expect(res.body).to.have.property('data');
                done();
            });
    });
    it('Should return an error with invalid credentials', (done) => {
        chai.request(app)
            .get('/fetch-instagram-accounts')
            .query({ businessId: '12345', accessToken: 'invalid_token' })
            .end((err, res) => {
                expect(res).to.have.status(400);
                expect(res.body).to.have.property('error');
                done();
            });
    });
});

బాహ్య ఖాతాలతో Facebook API సవాళ్లను అధిగమించడం

Facebook వ్యాపారం API సమస్యలను పరిష్కరించడంలో ఒక క్లిష్టమైన అంశం అంతర్గత మరియు బాహ్య ఖాతాల మధ్య వ్యత్యాసాన్ని అర్థం చేసుకోవడం. మీ యాప్‌లో డెవలపర్ పాత్ర ఉన్న ఖాతా APIని సజావుగా యాక్సెస్ చేయగలిగినప్పటికీ, బాహ్య ఖాతాలు తరచుగా కఠినమైన అనుమతి ధృవీకరణలను ఎదుర్కొంటాయి. మీ యాప్ లైవ్ మోడ్‌లో ఉన్నప్పటికీ మరియు అధునాతన అనుమతులు ప్రారంభించబడినప్పటికీ ఇది ఎర్రర్‌లకు దారితీయవచ్చు. రోల్-బేస్డ్ API ప్రవర్తనలో వ్యత్యాసం ఒక ముఖ్య కారణం. ఈ సూక్ష్మ నైపుణ్యాలను అర్థం చేసుకోవడం గందరగోళాన్ని నివారించడంలో మరియు API ఇంటిగ్రేషన్‌ను క్రమబద్ధీకరించడంలో సహాయపడుతుంది. 🌐

అటువంటి సమస్యలను తగ్గించడానికి, Facebook యాప్ డ్యాష్‌బోర్డ్‌లో మీ అనుమతుల స్థితిని ధృవీకరించడం చాలా అవసరం. అనుమతులు మరియు ఫీచర్ల విభాగానికి నావిగేట్ చేయండి మరియు అవసరమైన అన్ని అనుమతులు, వంటివి ఉండేలా చూసుకోండి instagram_బేసిక్ మరియు వ్యాపార_నిర్వహణ, ఆమోదించబడ్డాయి మరియు లైవ్ మోడ్‌లో ఉన్నాయి. కొన్నిసార్లు, బాహ్య ఖాతాలు వాటిని సమర్థవంతంగా ఉపయోగించే ముందు నిర్దిష్ట అనుమతులకు స్పష్టమైన ఆమోద ప్రక్రియలు లేదా అదనపు డాక్యుమెంటేషన్ అవసరం కావచ్చు. అదనంగా, పాత్ర-నిర్దిష్ట వ్యత్యాసాలను గుర్తించడానికి మీ యాప్‌లో సరైన పాత్రలతో ఖాతాల నుండి రూపొందించబడిన టోకెన్‌లతో ఎల్లప్పుడూ పరీక్షించండి.

ఎండ్‌పాయింట్-నిర్దిష్ట అవసరాల కోసం API డాక్యుమెంటేషన్‌ని సమీక్షించడం మరొక సహాయకరమైన అభ్యాసం. ఉదాహరణకు, ఉపయోగించిన యాక్సెస్ టోకెన్ రకాన్ని బట్టి `/owned_instagram_accounts` ఎండ్ పాయింట్ భిన్నంగా ప్రవర్తించవచ్చు. టోకెన్‌లో అవసరమైన స్కోప్‌లు ఉన్నాయని మరియు చెల్లుబాటు అయ్యే వినియోగదారు ప్రమాణీకరణతో రూపొందించబడిందని నిర్ధారించుకోవడం చాలా ముఖ్యం. ఈ చురుకైన చర్యలు గణనీయమైన సమయాన్ని ఆదా చేయగలవు మరియు సున్నితమైన ఏకీకరణలను నిర్ధారిస్తాయి. 🔧

Facebook API అనుమతుల గురించి సాధారణ ప్రశ్నలు

  1. అంతర్గత మరియు బాహ్య ఖాతాల మధ్య తేడా ఏమిటి?
  2. అంతర్గత ఖాతాలు తరచుగా డెవలపర్ లేదా అడ్మిన్ పాత్రలను కలిగి ఉంటాయి, ఇది అతుకులు లేని API యాక్సెస్‌ను అనుమతిస్తుంది, అయితే బాహ్య ఖాతాలకు సున్నితమైన ముగింపు పాయింట్‌లను యాక్సెస్ చేయడానికి నిర్దిష్ట అనుమతులు అవసరం.
  3. బాహ్య ఖాతాలతో మాత్రమే లోపం ఎందుకు సంభవిస్తుంది?
  4. బాహ్య ఖాతాలకు పాత్ర-ఆధారిత యాక్సెస్ లేదా తగిన అనుమతులు లేకపోవచ్చు business_management లేదా instagram_basic, API ముగింపు పాయింట్ ద్వారా అవసరం.
  5. నేను API అనుమతులను ఎలా సమర్థవంతంగా పరీక్షించగలను?
  6. వ్యత్యాసాలను గుర్తించడానికి అంతర్గత మరియు బాహ్య ఖాతాల నుండి టోకెన్‌లతో API కాల్‌లను పరీక్షించడానికి Facebook గ్రాఫ్ API ఎక్స్‌ప్లోరర్ వంటి సాధనాలను ఉపయోగించండి.
  7. అనుమతి సమస్యలను పరిష్కరించడానికి కొన్ని ఉత్తమ పద్ధతులు ఏమిటి?
  8. లైవ్ మోడ్‌లో అనుమతులు మంజూరు చేయబడినట్లు నిర్ధారించుకోండి, API టోకెన్ స్కోప్‌లను ధృవీకరించండి మరియు ముగింపు పాయింట్ అవసరాల కోసం గ్రాఫ్ API డాక్యుమెంటేషన్‌ను సమీక్షించండి.
  9. బాహ్య ఖాతాలకు లైవ్ మోడ్ ఎందుకు ముఖ్యమైనది?
  10. లైవ్ మోడ్‌లో, యాప్ ఉత్పత్తిలో వలె ప్రవర్తిస్తుంది మరియు బాహ్య ఖాతాలు కేవలం ఆమోదించబడిన అనుమతులను మాత్రమే యాక్సెస్ చేయగలవు, పరీక్ష పరిసరాల వెలుపల సరైన కార్యాచరణను నిర్ధారిస్తాయి.

API సమస్యలను పరిష్కరించడానికి కీలకమైన అంశాలు

Facebook వ్యాపారం APIతో వ్యవహరించేటప్పుడు, డెవలపర్ మరియు బాహ్య ఖాతాల మధ్య వ్యత్యాసాన్ని అర్థం చేసుకోవడం చాలా కీలకం. అనుమతులు, టోకెన్ స్కోప్‌లు మరియు API డాక్యుమెంటేషన్‌ను ముందస్తుగా సమీక్షించడం వల్ల సమయాన్ని ఆదా చేయవచ్చు మరియు లోపాలను తగ్గించవచ్చు. అభివృద్ధి సమయంలో అంతర్గత మరియు బాహ్య దృశ్యాలను ఎల్లప్పుడూ పరీక్షించండి. ✅

అంతిమంగా, ఈ సమస్యలను పరిష్కరించడానికి సహనం మరియు పద్దతిగా ట్రబుల్షూటింగ్ అవసరం. జాగ్రత్తగా నిర్మాణాత్మకమైన బ్యాకెండ్ స్క్రిప్ట్‌లు మరియు ఎర్రర్ హ్యాండ్లింగ్ మీ అప్లికేషన్ విభిన్న యాక్సెస్ స్థాయిలను విశ్వసనీయంగా నిర్వహించగలదని నిర్ధారించడంలో సహాయపడతాయి, అతుకులు లేని ఏకీకరణలు మరియు సున్నితమైన వినియోగదారు అనుభవానికి మార్గం సుగమం చేస్తాయి. 🌟

Facebook API ట్రబుల్షూటింగ్ కోసం సూచనలు మరియు మూలాలు
  1. Facebook గ్రాఫ్ API కోసం అధికారిక డాక్యుమెంటేషన్‌ను వివరిస్తుంది: Facebook గ్రాఫ్ API డాక్యుమెంటేషన్ .
  2. స్టాక్ ఓవర్‌ఫ్లో సంఘం చర్చలు మరియు పరిష్కారాలను కలిగి ఉంటుంది: స్టాక్ ఓవర్‌ఫ్లో .
  3. Facebook డెవలపర్ కమ్యూనిటీ ఫోరమ్‌ల నుండి అంతర్దృష్టులను అందిస్తుంది: Facebook డెవలపర్ సంఘం .
  4. లైవ్ మోడ్‌లో అనుమతులను సెట్ చేయడంపై వివరాల సమాచారం: Facebook యాప్ రివ్యూ డాక్యుమెంటేషన్ .