Use REST API to upload a file to office365 OneDrive
Hi All,
I failed to use RESTClient upload a file from local pc to my office365 OneDrive follow the Microsoft article.
the following is Microsoft link
http://msdn.microsoft.com/en-us/library/office/dn605900%28v=office.15%29.aspx
Create file with content
Creates a new file and provisions the file with content. Provide the content as a bit stream in the POST body. The body is required.
Request
POST ../_api/files/Add(string name, boolean overwrite)
Body
Bit stream of file content.
Response
Returns file properties and response code.
if someone have some code in native c or c++, please help.
Many Thanks
Will
Hi Atul Barve,
If you mean the document unique id with Document ID Service Feature, through Site Sittings->Site Collection Features->Document ID Features.
Then, the field is included in REST API, you can get it through “OData__dlc_DocId”.
For example, first get the items using
http://siteurl/_api/web/lists/getByTitle(‘libraryname’)/items
This will get all items in the list, then view the page in XML format or JSON format, we can see the item fields, include:
<d:OData__dlc_DocId>AWMJNX7ZDCK7-1-4</d:OData__dlc_DocId><d:OData__dlc_DocIdUrl m:type="SP.FieldUrlValue">
“OData__dlc_DocId” is represent the document id field.
Document ID is unique in the site collection, the value will not change when you move the document from one library into another library.
Thanks,
Qiao Wei
TechNet Community Support
Similar Messages
-
Document Set Creation in document library using REST API in Sharepoint 2013
Hi,
I want to create the document set using REST API call. Currently i am able to create the folder and able to upload the files using REST API's in the document library. Is there any way we can pass the contentype name or Id and create the document set using
REST API call. We need to create the document set along with metadata and upload the files inside the document set.
I need to create the document set along with meta data column values using REST API. Please let me know how we can achieve this through REST API.
Thank you,
MylsamyHi,
According to your post, my understanding is that you wanted to create document set along with managed metadata fields.
The REST API does not currently support working with Managed Metadata or Taxonomy fields.
As a workaround, we can use the JavaScript Client Object Model.
Create document set using JavaScript Client Object Model.
http://blogs.msdn.com/b/mittals/archive/2013/04/03/how-to-create-a-document-set-in-sharepoint-2013-using-javascript-client-side-object-model-jsom.aspx
http://social.technet.microsoft.com/Forums/sharepoint/en-US/aacd96dc-0fb2-4f0d-ab4c-f94ce819e3ed/create-document-sets-with-javascript-com-sharepoint-2010
Set managed metadata field with JavaScript Client Object Model.
http://sharepoint.stackexchange.com/questions/95933/add-list-item-with-managed-metadata-field-through-jsom
http://sharepointfieldnotes.blogspot.com/2013/06/sharepoint-2013-code-tips-setting.html
Thanks,
Jason
Forum Support
Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
[email protected]
Jason Guo
TechNet Community Support -
Using REST API to promote Document Properties into SharePoint document library
Hi,
Is it possible to extract Document properties of a file and update library column using REST API?
Thanks,
techieHi,
We can use the following REST endpoint to get document property:
http://site/_api/web/getfilebyserverrelativeurl('/Shared Documents/filename.docx')/<property name>
https://msdn.microsoft.com/en-us/library/office/dn450841(v=office.15).aspx#bk_File
If you want to update document library column, the following blog for your reference:
Updating SharePoint List items with SharePoint’s REST API in JavaScript
http://community.rightpoint.com/blogs/viewpoint/archive/2014/10/23/updating-sharepoint-list-items-with-sharepoint-s-rest-api-in-javascript.aspx
Thanks,
Dennis Guo
TechNet Community Support
Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
[email protected]
Dennis Guo
TechNet Community Support -
How to get permission of a sharepoint list for a user using REST api
Hi there,
I have a requirement where i need to check the access permission of a user against a List or Library only using REST api from my remote salesforce app. [I already have access token and I am able to view list, add item etc..]
Say for example, I have to send the list name and user name, and get the result as Read, Write, Contribute(Manage), None. I need to display what permission does that user have for that List.
How do I achieve this. Please help me.
Thanks in advance.Hi,
For High and low bits, we can create a new SP.BasePermissions object to use like below:
function success(data){
var permissions = new SP.BasePermissions();
permissions.set(SP.PermissionKind.manageLists);
var hasPermission = permissions.hasPermissions(data.d.EffectiveBasePermissions.High, data.d.EffectiveBasePermissions.Low);
Here is a detailed article for your reference:
http://www.lifeonplanetgroove.com/checking-user-permissions-from-the-sharepoint-2013-rest-api/
Thanks
Best Regards
Jerry Guo
TechNet Community Support -
Best practice for development using REST API - OData
Hi All, I am new to REST. I am a developer who works mostly in server-side code using Visual Studio. Now that Microsoft is advocating to write code using REST API instead of server-side code or client side object model, I am trying to use REST API.
I googled and most of the example shows to write a code and put it on Content Editor/Script Editor. How to organize code and deploy to the staging/production in this scenario? Is there any Best Practice or example around this?
Regards,
KhushiIf you are writing code in aspx or cs it does not mean that you need to deploy it in the SharePoint server, it could be any other application running from your remote server. What I mean it you can use C# & Rest API to connect to SharePoint server.
REST API in SharePoint 2013 provides the developers with a simple standardized method of retrieving information from SharePoint and it can be used from any technology that is capable of sending standard HTTP requests.
Refer to the following blog that provide your more details about comparison of the major features of these programming choices/
http://msdn.microsoft.com/en-us/library/jj164060.aspx#RESTODataA
http://dlr2008.wordpress.com/2013/10/31/sharepoint-2013-rest-api-the-c-connection-part-1-using-system-net-http-httpclient/
Hope this helps
--Cheers -
Add user to sharepoint group using REST API
I am trying to add a user to sharepoint group with following code
serviceUrl= Appweb + "/_api/SP.AppContextSite(@target)/web/sitegroups("+GroupId+")/users?@target='host web'";
$.ajax({
url: serviceUrl,
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: 'json',
body: "{'__metadata': { 'type': 'SP.User' },'LoginName':'i:0#.f|membership|'+email }",
headers: {"accept":"application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"X-RequestDigest":$("#__REQUESTDIGEST").val()
async: false,
success: function (data) {
alert('success');
error: function (data) {
alert('fail');
The request goes to error function. Response of the request is Microsoft.SharePoint.Client.InvalidClientQueryException and message is A node of type 'EndOfInput' was read from the JSON reader when trying to read the start of an entry. A 'StartObject' node was
expected
I tried the sample from following link but fail it
https://msdn.microsoft.com/en-us/library/office/dn531432.aspxHi,
Per my understanding, you might want to add an user to a SharePoint group in host web from a SharePoint Hosted App using REST API.
Here is a working demo for your reference:
var hostweburl;
var appweburl;
$(document).ready(function () {
//Get the URI decoded URLs.
hostweburl = decodeURIComponent(getQueryStringParameter("SPHostUrl"));
appweburl = decodeURIComponent(getQueryStringParameter("SPAppWebUrl"));
// Resources are in URLs in the form:
// web_url/_layouts/15/resource
var scriptbase = hostweburl + "/_layouts/15/";
// SP.RequestExecutor.js to make cross-domain requests
$.getScript(scriptbase + "SP.RequestExecutor.js", loadPage);
// Utilities
// Retrieve a query string value.
// For production purposes you may want to use a library to handle the query string.
function getQueryStringParameter(paramToRetrieve)
var params = document.URL.split("?")[1].split("&");
for (var i = 0; i < params.length; i = i + 1)
var singleParam = params[i].split("=");
if (singleParam[0] == paramToRetrieve) return singleParam[1];
function addUsersInGroup() {
var executor;
// Initialize the RequestExecutor with the app web URL.
executor = new SP.RequestExecutor(appweburl);
executor.executeAsync({
url: appweburl + "/_api/SP.AppContextSite(@target)/web/sitegroups(8)/users?@target='" + hostweburl + "'",
method: "POST",
contentType: "application/json; charset=utf-8",
dataType: 'json',
body: "{'__metadata': { 'type': 'SP.User' },'LoginName':'i:0#.f|membership|[email protected]'}",
headers: {
"Accept": "application/json; odata=verbose",
"content-type": "application/json;odata=verbose",
"X-RequestDigest":$("#__REQUESTDIGEST").val()
success: addUsersInGroupSuccessHandler,
error: addUsersInGroupErrorHandler
function addUsersInGroupSuccessHandler(data)
console.log(data);
var jsonObject = JSON.parse(data.body);
console.log(jsonObject);
function addUsersInGroupErrorHandler(data)
console.log(data);
var jsonObject = JSON.parse(data.body);
console.log(jsonObject);
Thanks
Patrick Liang
TechNet Community Support
Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
[email protected]. -
How to update 500 list items using Rest API
Hi All,
i have requirement that is "required to update 500 list items using rest Api".
how can i do it,please share your thoughts with me.
Thanks,
Madhu.Didn't get you correctly, if you asking reference for REST API to update list items please refer below links
http://msdn.microsoft.com/en-us/library/office/jj164022(v=office.15).aspx
Destin -MCPD: SharePoint Developer 2010, MCTS:SharePoint 2007 Application Development -
How to Get user profile properties in provider -cloud hosted app in sharepoint online - office 365 using REST API?
any idea?Hi,
From your description, my understanding is that you want to get user profile properties in provider-hosted app in SharePoint online using REST API.
Here is sample code for getting user profile properties:
http://www.vrdmn.com/2013/07/sharepoint-2013-get-userprofile.html
Here is a blog below about accessing data from the provider-host apps:
http://dannyjessee.com/blog/index.php/2014/07/accessing-sharepoint-data-from-provider-hosted-apps-use-the-right-context/
Best Regards,
Vincent Han
TechNet Community Support
Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
[email protected] -
Sharepoint-Hosted App giving FORBIDDEN error when i use REST Api
Hi,
I have created a sharepoint hosted app which will create Team site on button click.
I used REST Api and NAPA Tool to develop this app.
Napa tool gives to things ClientWebpart.aspx and Default.aspx.
When i run my Default.aspx code is working fine but ClientWebpart.aspx is giving FORBIDDEN error when i am trying to create site.
Below is the code which i used to create site
code:
var hostweburl;
var appweburl;
$(document).ready(function () {
hostweburl= decodeURIComponent(getQueryStringParameter("SPHostUrl"));
appweburl = decodeURIComponent(getQueryStringParameter("SPAppWebUrl"));
function createSPWeb() {
$.ajax(
url: appweburl +
"/_api/SP.AppContextSite(@target)/web/webinfos/add?@target='" +
hostweburl + "'",
type: "POST",
data: JSON.stringify(
'parameters':
'__metadata': { 'type': 'SP.WebInfoCreationInformation' },
'Url': 'RestSubWeb',
'Title': 'RestSubWeb',
'Description': 'REST created web',
'Language': 1033,
'WebTemplate': 'sts#0',
'UseUniquePermissions': false
headers: {
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
success: successHandler,
error: errorHandler
NOTE:This is on sharepoint online.
Please help
Regards,
sudeepSo in the app you are testing, are you using the FQDN or the NetBIOS name? Bad practice but could you test with both (hard code the absolute URL for testing purposes) then retest your app?
If you are making a web part based on the new app model this will be an "app part" and probably have the same issues you are experiencing. If this is for something internal rather than a product you are developing to resell then the script editor /
content editor web part approach could work for you.
Paul
Paul Mather | Twitter |
http://pwmather.wordpress.com | CPS -
Is it possible to execute Email Action and set its component like Subject,EmailTo,Email From using REST API only ?
Please help me out with this.Hi,
The DBA_SCHEDULER_NOTIFICATIONS show the notification settings, not the notifications that were sent. To see that, run the follwoing query:
select queue,
msg_state,
enq_time,
enq_user_id,
deq_time,
deq_user_id,
t.user_data.event_type,
t.user_data.object_owner,
t.user_data.object_name,
t.user_data.event_timestamp
from sys.AQ$SCHEDULER$_EVENT_QTAB t;
Does it show anything for your job? -
Problem when selecting PublishingRollupImage using REST API using Javascript ?
Hii Guys,
I am developing a listing page of News using REST, the custom list contains Title, PublishingRollupImage, and other fields which is provided in the $select
http://xyz/_api/web/lists/getbytitle('News')/Items?$select=Title,Link,PublishingRollupImage
the column "PublishingRollupImage" is there and i can return the result by using normal JavaScript API with CAML query.
but REST calling while specifying this column is failing with this error
The field or property 'PublishingRollupImage' does not exist
Microsoft.SharePoint.Client.InvalidClientQueryException
please note that this is not the (hyperlink/image) field,
its an existing site columns (publishing image)Hi,
According to your post, my understanding is that you want to get Rollup Image data using REST API.
Per my knowledge, we can’t get it using REST API.
We can use Client Object Model to achieve it, the following code snippet for your reference:
var ctx = new SP.ClientContext();
var items = ctx.get_web().get_lists().getByTitle('Pages').getItems(new SP.CamlQuery());
ctx.load(items);
ctx.executeQueryAsync(function() {
// Get the first items rollup image, just as an example
var rollupImage = items.getItemAtIndex(0).get_item('PublishingRollupImage');
console.log(rollupImage);
If you still want to use the REST API, we can customize a We Service to achieve it.
http://sharepointlearningcurve.blogspot.in/2013/08/creating-wcf-rest-service-for.html
Here is a similar thread for you to take a look:
http://sharepoint.stackexchange.com/questions/46844/how-to-get-publishingrollupimage-for-page-in-page-library-with-rest-and-jquery
Best Regards
Dennis Guo
TechNet Community Support -
Im using CloverETL to connec to SharePoint using REST API.
my team is trying to get the List items in SharePoint using REST api. we are using the CloverETL tool using the REST api URL of the list and the credentials in SharePoint which has full control. Below is the rest command that we used.
/_api/web/lists/getbytitle('title of list')/items
when viewing this URL on the same Internet explorer with a user log on to sharepoint the XML of the list is successfully showing. but when we try to load it on the CloverETL tool using the same SharePoint credentials it says access is denied. Also when viewing
the URL to a browser with no other SharePoint sites open it also says access is denied.how is the webapp configured, as far as authentication?
Scott Brickey
MCTS, MCPD, MCITP
www.sbrickey.com
Strategic Data Systems - for all your SharePoint needs -
How to create list items with multiple attachment files using rest api javascript
In one of user form I am using javascript rest api to create a list item with multiple attachment files. So far I am able to create list item and once created uploading an attachment file. But this is two step process first create an item and then upload
a file.
It create an additional version of the item which is not desired. Also I am not able find a way to attach multiple files in a go. Following is the code I am using.
createitem.executeAsync({
url: "/_api/web/lists/GetByTitle('UserForm')/items(1)/AttachmentFiles/add(FileName='" + aFile.name + "')",
method: "POST",
contentType: "application/json;odata=verbose",
headers: {
"Accept": "application/json;odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
binaryStringRequestBody: true,
body: fileContent,
success: fnsuccess,
error: fnerror
So somehow I need to combine item attributes along with attachment files in body: param. I visited https://msdn.microsoft.com/en-us/library/office/dn531433.aspx#bk_ListItem but no success.
Appreciate any help.Thanks Mahesh for the reply and post you share it was useful.
But this does not solve the core of the issue. You are uploading attachments after creation of item and multiple files are being attached in loop. This is kind of iterative update to an existing item with attachments. This will end up creating multiple versions.
What I am trying to achieve is to create an item along with multiple attachments in a go. No item updates further to attach a file.
Please suggest how this can be done in one go. SharePoint does it when one creates an item with multiple attachment.
Thanks for your reply. -
Can we upload any Content Assets using Rest API or Limited?
Hi,
Wanted to understand... based on Component Library, what type of Assets/Content we can upload in Eloqua (E10) before we plan for resources. (images, Hyperlinks, Field Merge, Shared Content, Dynamic Content, Signature Layout, Signature Rule)?
I understand Email Headers and Footers are already included.
Thank You
Amit PandyaHi rkrawat it would appear that you can only access images via the REST API using E10. See this chart for more info Eloqua API Chart
-
InfoPath 2013 Read SharePoint 2013 File data using Rest API Access Denied Exception
I am designing a set of Forms and they need to query Data from among themselves.
The whole set up described below works in the Form Filler/Preview
I'll call them Form A and Form B
Form A has a repeating table that needs to be displayed in Form B
The user selects from a DropDown in Form B an Instance of Form A, using the selected I REST connection is executed so the Form A xml is available inside Form B. The connection is set up as follows:
_api/web/lists/ListName/Items(SelectedId)/File/$value
I publish the form as site content type, add it to a library, after triggering the REST connection I get an error. ULS gives me a 401 Access denied for NT Authority\IUSR (as it should since I don't have anonymous access enabled [nor has that solved the issue])
That's my issue. All requests on the REST api are being executed as anonymous and not as a user that should have permission.
Things I've tried:
1. The connection uses a UDCX file, the conenction is set to use the form server proxy. The proxy has been enabled for the Form Services, web application and user connection. I've tried it with a configured App ID or an Explicit account
2. I've tried enabling Anonymous access, but have had no success
3. I've gotten the Query to work on Post Backs by adding the following to the web.config:
<location path="_layouts/15/Postback.FormServer.aspx">
<system.web>
<identity impersonate="false" userName="bhs\sp_admin_dev" password="M1crosoft" />
</system.web>
</location>
And while it solves the issue for Postback requests and I could add FormServer.aspx to the list I can't use this solution for a production environment, nor can I predict other issues that could be caused by the change.
I haven't been able to find any references to this error so I wonder if I'm doing something wrong or if there's another way to do this.
If I've been unclear on anything, let me know and I'll try to clear it up.Hi Choggo,
thank you for your information,
regarding this issue, it seems we may need to debug and trace your network, to check if should the parameter that is used for the REST connection is correct.
i checked with infopath team members regarding this issue, they suggest that you try with impersonation, so that the user that login is not anonymous, but the user that you already been assign with.
the last suggestions from our sharepoint team members that we are able to do, as we have limited tools on this forum support, that you need to check the file udcx itself, do the permission to access that file is correct, so for example, if the file is not
having the permission to be read/access then the system may result with anonymous account, so that we may have the result that the data that should be passed are able to accessed.
if should this suggestion not applicable to your environment, our sharepoint team members suggest that you to open an incident ticket, so that we can check and re-confirm more deep for you if should this is an undocumented feature or not. the action
plans is to have a remote session, then we can trace the data passing process, that is already correct, so that the IUSR is not appear when it authenticate.
http://support.microsoft.com/contactus/?wa=wsignin1.0
Regards,
Aries
Microsoft Online Community Support
Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.
Maybe you are looking for
-
Last Trap: Data Access Error
Hello, I don't know what the appropropriate forum to ask this would be; please suggest another one if this is not the best one. We have a PCI-Express board (that we developed) that we're attempting to use in a Sparc system. It is an Ultra 25 (also sa
-
Have a 4S after udpating software I can no longer use it. Black scrren with apple log is all I have. Have restore it 3 times and it worked then had another small update and this is now what I am left with.
-
Hi again all, I get a status 64 in we05 when I'm checking some of the statuses of my IDOCS. The text is 'Immediate Processing in Job '0000000000100741 ' '.I thought status 64 are for IDOCS that are still being processed? in this case, it got stuck o
-
Ok, I have been trying for several weeks now to burn a dvd and I feel I have tried every possible fix. IDVD goes through the encoding assets and then fails on the burning process and says there has been a multiplexing/burning error and gives me error
-
Photoshop CC. removing files from Recent ?
How do I remove individual files from the Open Recent "folder" ? or is the only option to remove everything and start again ?