पोर्टल्स वेब API लिखने, अपडेट करने, और हटाने के संचालनों का उपयोग करें
नोट
12 अक्टूबर 2022 से प्रभावी, Power Apps पोर्टल Power Pages है। अधिक जानकारी: Microsoft Power Pages अब आम तौर पर उपलब्ध है (ब्लॉग)
हम जल्द ही Power Apps पोर्टल दस्तावेज़ीकरण को Power Pages दस्तावेज़ीकरण के साथ माइग्रेट और विलय करेंगे।
आप पोर्टल में उपलब्ध वेब API संचालन कर सकते हैं. वेब API संचालन में HTTP अनुरोध और प्रतिक्रियाएँ होती हैं. यह आलेख नमूना लिखने, अपडेट करने और हटाने के संचालन, तरीकें, URI, और नमूना JSON प्रदान करता है जिसका उपयोग आप HTTP अनुरोधों में कर सकते हैं.
महत्वपूर्ण
- इस फ़ीचर के काम करने के लिए आपका पोर्टल संस्करण 9.3.3.x या बाद का होना चाहिए.
पूर्वावश्यकताएँ
वेब API संचालन के लिए तालिका और फ़ील्ड सक्षम करें. अधिक जानकारी: वेब API के लिए साइट सेटिंग्स
पोर्टल्स Web API तालिका रिकॉर्ड को एक्सेस करता है और संबद्ध वेब भूमिकाओं के माध्यम से उपयोगकर्ताओं को दी गईं तालिका अनुमतियों का अनुसरण करता है. सुनिश्चित करें कि आप सही तालिका अनुमतियों को कॉन्फ़िगर करते हैं. अधिक जानकारी: वेब भूमिकाएँ बनाएँ
एक टैबल में एक रिकॉर्ड बनाएं
नोट
अपने कोड में पोर्टल्स वेब API का उपयोग करते हुए Dataverse तालिकाओं का संदर्भ देते समय, आपको EntitySetName का उपयोग करने की आवश्यकता होती है, उदाहरण के लिए खाता तालिका तक पहुँचने के लिए, कोड सिंटैक्स खाते के EntitySetName का उपयोग करेगा.
मूल बनाएं
कार्रवाई | विधि | URI | JSON नमूना |
---|---|---|---|
मूल बनाएं | पोस्ट | [Portal URI]/_api/accounts | {"name":"नमूना खाता"} |
एक संक्रिया में संबंधित टेबल रिकॉर्ड बनाने के लिए नमूना JSON
उदाहरण के तौर पर, खाता तालिका सेट पर पोस्ट किया गया निम्नलिखित अनुरोध निकाय खाता बनाने के संदर्भ में —खाते सहित— कुल चार नई तालिकाएँ बनाएगा.
- एक संपर्क इसलिए बनाया जाता है, क्योंकि इसे एकल-मान वाले नेविगेशन गुण
primarycontactid
के ऑब्जेक्ट गुण के रूप में परिभाषित किया गया है. - एक अवसर बनाया जाता है क्योंकि इसे किसी सरणी के भीतर किसी ऑब्जेक्ट के रूप में परिभाषित किया जाता है जो संग्रह-मान वाले नेविगेशन गुण
opportunity_customer_accounts
के मान पर सेट होता है. - एक कार्य बनाया जाता है क्योंकि इसे किसी सरणी के भीतर किसी ऑब्जेक्ट के रूप में परिभाषित किया जाता है जो संग्रह-मान वाले नेविगेशन गुण
Opportunity_Tasks
के मान पर सेट होता है.
{
"name": "Sample Account",
"primarycontactid":
{
"firstname": "Alton",
"lastname": "Stott"
},
"opportunity_customer_accounts":
[
{
"name": "Opportunity associated to Sample Account",
"Opportunity_Tasks":
[
{ "subject": "Task associated to opportunity" }
]
}
]
}
बनाने पर टेबल रिकॉर्ड संबद्ध करें
कार्रवाई | विधि | URI | JSON नमूना |
---|---|---|---|
बनाने पर टेबल रिकॉर्ड संबद्ध करें | POST | [Portal URI]/_api/accounts | {"name":"Sample Account","primarycontactid@odata.bind":"/contacts(00000000-0000-0000-0000-000000000001)"} |
वेब API के माध्यम से एक टिप्पणी बनाने के लिए नमूना JSON
{
"new_attribute1": "test attribute 1",
"new_attribute2": "test attribute 2",
"new_comments": "test comments",
"new_recordurl": recordURL,
"new_feedback_Annotations":
[
{
"notetext": "Screenshot attached",
"subject": "Attachment",
"filename": file.name,
"mimetype": file.type,
"documentbody": base64str,
}
]
}
documentbody
में base64 स्ट्रिंग के रूप में अटैचमेंट होगा।
वेब API का उपयोग करके रिकॉर्ड अपडेट करें और हटाएं
मूल अद्यतन
कार्रवाई | विधि | URI | JSON नमूना |
---|---|---|---|
मूल अद्यतन | PATCH | [Portal URI]/_api/accounts(00000000-0000-0000-0000-000000000001) | { "name": "Updated Sample Account ", "creditonhold": true, "address1_latitude": 47.639583, "description": "This is the updated description of the sample account", "revenue": 6000000, "accountcategorycode": 2 } |
कोई एकल विशेषता मान अपडेट करें
संचालन | विधि | URI | JSON नमूना |
---|---|---|---|
कोई एकल विशेषता मान अपडेट करें | डालें | [Portal URI]/_api/accounts(00000000-0000-0000-0000-000000000001)/name | {"value": "Updated Sample Account Name"} |
फ़ील्ड मान हटाएं या साफ़ करें
कार्रवाई | विधि | URI |
---|---|---|
फ़ील्ड मान हटाएं या साफ़ करें | DELETE | [Portal URI]/_api/accounts(00000000-0000-0000-0000-000000000001)/description |
मूल हटाना
संचालन | विधि | URI |
---|---|---|
मूल हटाना | DELETE | [Portal URI]/_api/accounts(00000000-0000-0000-0000-000000000001) |
Web API का उपयोग करके टेबल को संबद्ध और असंबद्ध करें
संग्रह-मूल्यांकित नेविगेशन विशेषता का संदर्भ जोड़ें
संचालन | विधि | URI | JSON नमूना |
---|---|---|---|
संग्रह-मूल्यांकित नेविगेशन विशेषता का संदर्भ जोड़ें | पोस्ट | [Portal URI]/_api/accounts(00000000-0000-0000-0000-000000000002)/opportunity_customer_accounts/$ref | {"@odata.id":"[Portal URI]/_api/opportunities(00000000-0000-0000-0000-000000000001)"} |
किसी टेबल से संदर्भ निकालें
कार्रवाई | विधि | URI |
---|---|---|
किसी टेबल से संदर्भ निकालें | DELETE | [Portal URI]/_api/accounts(00000000-0000-0000-0000-000000000002)/opportunity_customer_accounts/$ref?$id=[Portal URI]/_api/opportunities(00000000-0000-0000-0000-000000000001) |
एक एकल-समादृत नेविगेशन गुणधर्म से के लिए एक टेबल से संदर्भ निकालें
एकल-मान वाले नेविगेशन गुण के लिए, $id क्वेरी स्ट्रिंग पैरामीटर निकालें.
कार्रवाई | विधि | URI |
---|---|---|
एक एकल-समादृत नेविगेशन गुणधर्म से के लिए एक टेबल से संदर्भ निकालें | DELETE | [Portal URI]/_api/opportunities(00000000-0000-0000-0000-000000000001)/customerid_account/$ref |
एकल-मूल्यांकित नेविगेशन विशेषता में संदर्भ बदलें
संचालन | विधि | URI | JSON नमूना |
---|---|---|---|
एकल-मूल्यांकित नेविगेशन विशेषता में संदर्भ बदलें | डालें | [Portal URI]/_api/opportunities(00000000-0000-0000-0000-000000000001)/customerid_account/$ref | {"@odata.id":"[Portal URI]/_api/accounts(00000000-0000-0000-0000-000000000002)"} |
बनाने पर टेबल संबद्ध करें
डीप इन्सर्ट का उपयोग करके संबंधों के साथ नयी टेबलें बनाई जा सकती हैं.
एकल-समादृत नेविगेशन गुणधर्म का उपयोग करके टेबलों को अपडेट पर संबद्ध करें
आप इस विषय में पूर्व में वर्णित मूल अपडेट समान संदेश का उपयोग करके अपडेट पर टेबलों को संबद्ध कर सकते हैं, लेकिन आपको एकल-समादृत नेविगेशन गुणधर्म का मान सेट करने के लिए @odata.bind
टिप्पणी का उपयोग करना होगा. निम्नलिखित उदाहरण customerid_account
एकल-मान वाले नेविगेशन गुण का उपयोग करके अवसर से जुड़े खाते को बदलता है.
एकल-समादृत नेविगेशन गुणधर्म का उपयोग करके टेबलों को अपडेट पर संबद्ध करें
कार्रवाई | विधि | URI | JSON नमूना |
---|---|---|---|
एकल-समादृत नेविगेशन गुणधर्म का उपयोग करके टेबलों को अपडेट पर संबद्ध करें | PATCH | [Portal URI]/_api/opportunities(00000000-0000-0000-0000-000000000001) | {"customerid_account@odata.bind":"[Portal URI]/_api/accounts(00000000-0000-0000-0000-000000000002)"} |
वेब API AJAX के नमूने
यह नमूना Asynchronous JavaScript और XML (AJAX) का उपयोग करके टेबल रिकॉर्ड बनाने, अपडेट करने और हटाने का तरीका प्रदर्शित करता है.
रैपर AJAX फ़ंक्शन
(function(webapi, $){
function safeAjax(ajaxOptions) {
var deferredAjax = $.Deferred();
shell.getTokenDeferred().done(function (token) {
// add headers for AJAX
if (!ajaxOptions.headers) {
$.extend(ajaxOptions, {
headers: {
"__RequestVerificationToken": token
}
});
} else {
ajaxOptions.headers["__RequestVerificationToken"] = token;
}
$.ajax(ajaxOptions)
.done(function(data, textStatus, jqXHR) {
validateLoginSession(data, textStatus, jqXHR, deferredAjax.resolve);
}).fail(deferredAjax.reject); //AJAX
}).fail(function () {
deferredAjax.rejectWith(this, arguments); // on token failure pass the token AJAX and args
});
return deferredAjax.promise();
}
webapi.safeAjax = safeAjax;
})(window.webapi = window.webapi || {}, jQuery)
निर्माण करें
webapi.safeAjax({
type: "POST",
url: "/_api/accounts",
contentType: "application/json",
data: JSON.stringify({
"name": "Sample Account"
}),
success: function (res, status, xhr) {
//print id of newly created table record
console.log("entityID: "+ xhr.getResponseHeader("entityid"))
}
});
अद्यतित करें
webapi.safeAjax({
type: "PATCH",
url: "/_api/accounts(00000000-0000-0000-0000-000000000001)",
contentType: "application/json",
data: JSON.stringify({
"name": "Sample Account - Updated"
}),
success: function (res) {
console.log(res);
}
});
हटाएं
webapi.safeAjax({
type: "DELETE",
url: "/_api/accounts(00000000-0000-0000-0000-000000000001)",
contentType: "application/json",
success: function (res) {
console.log(res);
}
});
अगला कदम
ट्यूटोरियल: पोर्टल वेब API का उपयोग करें
भी देखें
पोर्टल वेब API अवलोकन
वेब API का उपयोग करते हुए पोर्टल्स रीड ऑपरेशन
नोट
क्या आप हमें अपनी दस्तावेज़ीकरण भाषा वरीयताओं के बारे में बता सकते हैं? एक छोटा सर्वेक्षण पूरा करें. (कृपया ध्यान दें कि यह सर्वेक्षण अंग्रेज़ी में है)
सर्वेक्षण में लगभग सात मिनट लगेंगे. कोई भी व्यक्तिगत डेटा एकत्र नहीं किया जाता है (गोपनीयता कथन).
प्रतिक्रिया
https://aka.ms/ContentUserFeedback.
जल्द आ रहा है: 2024 के दौरान हम सामग्री के लिए फीडबैक तंत्र के रूप में GitHub मुद्दों को चरणबद्ध तरीके से समाप्त कर देंगे और इसे एक नई फीडबैक प्रणाली से बदल देंगे. अधिक जानकारी के लिए, देखें:के लिए प्रतिक्रिया सबमिट करें और देखें