curl --request POST \
  --url http://localhost:3000/api/v1/scripts \
  --header 'Authorization: Basic OmJsYWNrU3dhbjEyMw==' \
  --header 'Content-Type: application/json' \
  --data '{
	"script":{
			"id": -1,
			"lang": "lua",
			"name": "new_script_created",
			"source": "\n-- This is a sample script\n-- Fill in the onRecord function to transform the incoming record\nlocal json = require \"json\"\n\nfunction onRecord(r)\n  return json.encode(r.row)\nend"
		}
}'
{
	"id": 1
}
POST /api/v1/scripts
This endpoint is used to create a new script or update an existing one.
  • If the script ID in the request is -1, a new script is created.
  • Otherwise, the existing script with the given ID, if existing, is updated.
Scripts are disabled by default in PeerDB Cloud. It is enabled in PeerDB OSS and PeerDB Enterprise.

Request Fields

script
object
required
Describe the new script to be created or updated.

Response Fields

id
number
If successful, returns the ID of the created or updated script
curl --request POST \
  --url http://localhost:3000/api/v1/scripts \
  --header 'Authorization: Basic OmJsYWNrU3dhbjEyMw==' \
  --header 'Content-Type: application/json' \
  --data '{
	"script":{
			"id": -1,
			"lang": "lua",
			"name": "new_script_created",
			"source": "\n-- This is a sample script\n-- Fill in the onRecord function to transform the incoming record\nlocal json = require \"json\"\n\nfunction onRecord(r)\n  return json.encode(r.row)\nend"
		}
}'
{
	"id": 1
}