Start a new topic

"KCSPersistable objects requires the `id` property"

Can you help me figure out what this error message means? It seems to have cropped up recently in our app but I don't know what could be causing it. Thanks.

(101 KB)

1 person has this question

Hello Tupakapoor,

Can you please tell me which version of the iOS library you're using and if you've recently updated it?  Also, it's possible that you're setting _id to nil or some other value unintentionally and saving that back to your _id field in an update somewhere.  Have you made any notable changes to your code that may have caused this issue?


Hi Damien,

We have not made any notable changes recently, specifically in the area of our app where users are now experiencing this issue. Using version 1.39.0, and I just did a search and couldn't find any instances of explicitly setting _id. We updated approx 2 months ago. Let me know if that helps at all.


Ameesh Kapoor

I am receiving the same error in my app, but let me know if I should open my own ticket.

Using iOS Kinvey SDK version 1.40.1

I am using a DLC connector to SFDC created by Kinvey team (Ivo Janssen). In order to delete an item, we have to post to a custom delete-<object> route.

In sniffing the network traffic, it seems to work properly.

Request URL and JSON:<app ID>/delete-EVENT/00U4B0000011HOFUA2

	"ActivityDate": "2016-01-22",
	"IsAllDayEvent": 0,
	"DurationInMinutes": 60,
	"CreatedById": "0054B000000TVwZQAW",
	"LastModifiedDate": "2016-01-25T21:17:07.333+0000",
	"Subject": "Time Off Territory",
	"ShowAs": "Busy",
	"_id": "00U4B0000011HOFUA2",
	"Offline_Transaction__c": "2016-01-25T21:17:07.333Z",
	"RecordTypeId": "0124B0000008XkKQAU",
	"LastModifiedById": "0054B000000TVwZQAW",
	"StartDateTime": "2016-01-22T20:30:00.000+0000",
	"SystemModstamp": "2016-01-20T06:12:08.000+0000",
	"EndDateTime": "2016-01-22T21:30:00.000+0000",
	"IsArchived": 0,
	"ActivityDateTime": "2016-01-22T20:30:00.000+0000",
	"OwnerId": "0054B000000TVwZQAW",
	"IsDeleted": true,
	"CreatedDate": "2016-01-20T06:12:08.000+0000",
	"Status__c": "Planned",
	"Type": "Condolence"

200 Response is received with the following JSON:

	"result": {
		"count": 1


However, even though a 200 response is received, the
"-(KCSRequest*)saveObject:(id)object withCompletionBlock:(KCSCompletionBlock)completionBlock withProgressBlock:(KCSProgressBlock)progressBlock" method has nil for objectsOrNil and an error in errorOrNil of "Error Domain=KinveyError Code=406 "KCSPersistable objects requires the `_id` property" UserInfo={NSLocalizedFailureReason=KCSPersistable objects requires the `_id` property, NSLocalizedDescription=KCSPersistable objects requires the `_id` property}"

Any help is appreciated.

Login or Signup to post a comment