To the best of my knowledge the REST API does not support OData filters on null date values.
There is an MSDN forums post with someone having the same issue and a member of the SharePoint team mentions that it is a known issue and they are working on it.
The current implementation of REST does not support null values for
filtering on list item queries. But as this is a desirable feature,
there is a bug tracking it and we are discussing on when we add this
support.
But you could use a CAML query.
Here I am searching for items in a list called Test List
, and I am posting the following CAML:
<View>
<Query>
<Where>
<IsNull>
<FieldRef Name='DateCompleted' />
</IsNull>
</Where>
</Query>
</View>
$.ajax({
type: "POST",
headers: {
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
},
url: 'https://kaucher.sharepoint.com/_api/web/Lists/GetByTitle(\'Test List\')/GetItems(query=@v1)?@v1={"ViewXml":"<View><Query><Where><IsNull><FieldRef Name=\'DateCompleted\' /></IsNull></Where></Query></View>"}',
success: function(data){console.log(data); },
failure: function(data){console.log(data); }
});
That returned the following from my list:
{
"d": {
"results": [
{
"__metadata": {
"id": "3e55bc9c-146b-4319-9627-33338da73bc9",
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-bbf4-99fd-a9a1-4634afe328ac')/Items(1)",
"etag": "\"1\"",
"type": "SP.Data.Test_x0020_ListListItem"
},
"FirstUniqueAncestorSecurableObject": {
"__deferred": {
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-aaf4-44fd-a9a1-4634afe328ac')/Items(1)/FirstUniqueAncestorSecurableObject"
}
},
"RoleAssignments": {
"__deferred": {
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-aaf4-44fd-a9a1-4634afe328ac')/Items(1)/RoleAssignments"
}
},
"AttachmentFiles": {
"__deferred": {
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-aaf4-44fd-a9a1-4634afe328ac')/Items(1)/AttachmentFiles"
}
},
"ContentType": {
"__deferred": {
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-aaf4-44fd-a9a1-4634afe328ac')/Items(1)/ContentType"
}
},
"FieldValuesAsHtml": {
"__deferred": {
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-aaf4-44fd-a9a1-4634afe328ac')/Items(1)/FieldValuesAsHtml"
}
},
"FieldValuesAsText": {
"__deferred": {
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-aaf4-44fd-a9a1-4634afe328ac')/Items(1)/FieldValuesAsText"
}
},
"FieldValuesForEdit": {
"__deferred": {
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-aaf4-44fd-a9a1-4634afe328ac')/Items(1)/FieldValuesForEdit"
}
},
"File": {
"__deferred": {
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-aaf4-44fd-a9a1-4634afe328ac')/Items(1)/File"
}
},
"Folder": {
"__deferred": {
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-aaf4-44fd-a9a1-4634afe328ac')/Items(1)/Folder"
}
},
"ParentList": {
"__deferred": {
"uri": "https://somedomain.com/_api/Web/Lists(guid'efd16a43-aaf4-44fd-a9a1-4634afe328ac')/Items(1)/ParentList"
}
},
"FileSystemObjectType": 0,
"Id": 1,
"ContentTypeId": "0x010017F678F8FDCCC8468A19A6A067EFF04D",
"Title": "Test ITem",
"Test_x0020_Item": "Enter Choice #1",
"DueDate": "2014-02-21T00:00:00",
"DateCompleted": null,
"ID": 1,
"Modified": "2014-02-14T19:10:59",
"Created": "2014-02-14T19:10:59",
"AuthorId": 12,
"EditorId": 12,
"OData__UIVersionString": "1.0",
"Attachments": false,
"GUID": "e5f4e83e-3bfd-47fe-a5c9-41ef51c71d29"
}
]
}
}