# Create or Update in REST

**URL:** <https://community.dreamfactory.com/t/create-or-update-in-rest/1386>\
**Category:** REST API\
**Created:** [August 16, 2015, 1:42am UTC](https://community.dreamfactory.com/t/create-or-update-in-rest/1386 "2015-08-16T01:42:26Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![ekh](https://yyz1.discourse-cdn.com/flex035/user_avatar/community.dreamfactory.com/ekh/32/367_2.png) [@ekh](https://community.dreamfactory.com/u/ekh)\
**Post date:** [August 16, 2015, 1:42am UTC](https://community.dreamfactory.com/t/create-or-update-in-rest/1386/1 "2015-08-16T01:42:27Z")

</div>

From my (albeit limited) understanding of REST, PUT seems to be capable of creating OR updating:

[http://stackoverflow.com/questions/630453/put-vs-post-in-rest](http://stackoverflow.com/questions/630453/put-vs-post-in-rest)

However I’m running into errors when trying to create a record with PUT. e.g.: "Record with identifier ‘$$identifier$$’ not found.

I would ideally like to have users only have write (not read) access so would love the ability to create and update in the same command without having to poll the server to see if the record is already there.

I’ve never fully understood the depths of REST however. Is there a way to create or update in the same action?

---

<div class="post-metadata">

**Author:** ![allensandiego](https://avatars.discourse-cdn.com/v4/letter/a/8baadc/32.png) [@allensandiego](https://community.dreamfactory.com/u/allensandiego)\
**Post date:** [August 18, 2015, 12:45am UTC](https://community.dreamfactory.com/t/create-or-update-in-rest/1386/2 "2015-08-18T00:45:54Z")

</div>

I am also looking for this feature. Will this feature be available in v2.0?

---

<div class="post-metadata">

**Author:** ![jeffreystables](https://yyz1.discourse-cdn.com/flex035/user_avatar/community.dreamfactory.com/jeffreystables/32/173_2.png) [@jeffreystables](https://community.dreamfactory.com/u/jeffreystables)\
**Post date:** [September 8, 2015, 7:16pm UTC](https://community.dreamfactory.com/t/create-or-update-in-rest/1386/3 "2015-09-08T19:16:01Z")

</div>

PUT may create or update according to HTTP spec, but that’s not necessarily RESTful. That is, you can’t draw one-to-one comparison between HTTP spec and REST API methods. In the DreamFactory REST implementation, PUT will always attempt to find the record to update. Therefore you must use POST for creation.
