/projects/{project_id}/branches/{branch_id}/snapshotCreate snapshotCreates a snapshot from the specified branch. This operation may initiate an asynchronous process.
Parameters
project_idstringpathrequiredThe Neon project ID
branch_idstringpathrequiredThe branch ID
lsnstringqueryThe target Log Sequence Number (LSN) to take the snapshot from. Must fall within the restore window. Cannot be used with `timestamp`
timestampstringqueryThe target timestamp for the snapshot. Must fall within the restore window. RFC 3339 format. Cannot be used with `lsn`.
namestringqueryA name for the snapshot.
slugstringqueryUser-defined snapshot resource ID. Must be unique within the project. Must start with a lowercase letter, contain only lowercase letters, numbers, and hyphens, and end with a letter or number. If omitted, the control plane generates a value.
expires_atstringqueryThe time at which the snapshot will be automatically deleted. RFC 3339 format.
Responses
operationsarray of objectrequiredShow child attributes
Show array items
An asynchronous action Neon performs on your resources (for example, starting a compute or creating a branch). Fields such as `action`, `status`, and `total_duration_ms` describe the operation and its progress.
actionstringrequiredThe action performed by the operation
branch_idstringThe ID of the branch this operation ran on.
created_atstring · date-timerequiredA timestamp indicating when the operation was created
endpoint_idstringThe ID of the compute endpoint this operation ran on.
errorstringHuman-readable message describing why the operation failed.
failures_countinteger · int32requiredThe number of times the operation failed
idstring · uuidrequiredThe operation ID
project_idstringrequiredThe ID of the project this operation ran on.
retry_atstring · date-timeA timestamp indicating when the operation was last retried
statusstringrequiredLifecycle state of the operation. `scheduling`: queued, not yet started. `running`: actively executing. `finished`: completed successfully. `failed`: ended with a failure. `error`: ended with a terminal error. `cancelling`: cancellation requested but not yet complete. `cancelled`: stopped before completion. `skipped`: bypassed without executing.
total_duration_msinteger · int32requiredThe total duration of the operation in milliseconds
updated_atstring · date-timerequiredA timestamp indicating when the operation status was last updated
snapshotobjectrequiredShow child attributes
created_atstringrequiredTimestamp when the snapshot was created, in RFC 3339 format (UTC).
diff_sizeinteger · int64Incremental Postgres storage size in bytes since the previous scheduled snapshot, when the snapshot is billed on incremental (diff) usage. When absent, either the incremental size has not been calculated yet and the snapshot is not being charged, or the snapshot is charged at full logical size (in that case `full_size` is set).
expires_atstringRFC 3339 timestamp when the snapshot expires and is eligible for deletion. Null if the snapshot does not have an expiry.
full_sizeinteger · int64Full logical size of the snapshot in bytes at the time it was taken. When absent, the logical size has not been calculated yet and the snapshot is not being charged. When present, a value of 0 means the snapshot is not being charged.
idstringrequiredThe snapshot ID.
lsnstringWAL position (Log Sequence Number) at which the snapshot was captured, in Postgres LSN format (for example, `0/3000000`).
manualbooleanTrue if the snapshot was created manually rather than by a schedule.
namestringrequiredHuman-readable label for the snapshot.
slugstringSnapshot resource ID, unique within the project. Distinct from the internal snapshot ID and display name.
source_branch_idstringBranch from which this snapshot was created.
timestampstringPoint in time captured by the snapshot, in RFC 3339 format (UTC).
{
"operations": [
{
"action": "start_compute",
"branch_id": "br-wispy-meadow-118737",
"created_at": "2022-11-15T20:02:00Z",
"endpoint_id": "ep-silent-smoke-806639",
"failures_count": 0,
"id": "d8ac46eb-a757-42b1-9907-f78322ee394e",
"project_id": "spring-example-302709",
"status": "finished",
"total_duration_ms": 200,
"updated_at": "2022-11-15T20:02:02Z"
}
],
"snapshot": {
"created_at": "2025-01-15T10:30:00Z",
"diff_size": 0,
"expires_at": "string",
"full_size": 0,
"id": "string",
"lsn": "string",
"manual": true,
"name": "string",
"slug": "string",
"source_branch_id": "string",
"timestamp": "string"
}
}codestringrequiredmessagestringrequiredError message
request_idstringUnique identifier for the request, useful for debugging. You can set this value manually by including an `X-Request-ID` header in the request. If not provided, the value will be generated automatically.
{
"code": "",
"message": "string",
"request_id": "string"
}