Firebase can do this for you. It has a very flexible expression-based permissions model. You can set your rule to:
".write":"!data.exists()"
And people will be able to write only new items.
".write":"!data.exists()"
And people will be able to write only new items.