Updated on 2025-12-11 GMT+08:00

GeminiDB Serverless Usage and Constraints

This section describes GeminiDB Serverless usage and constraints.

Usage Notes

  • Serverless is compatible with GeminiDB DynamoDB-Compatible API. APIs of GeminiDB DynamoDB-Compatible instances can be used to add, delete, and modify Serverless tables. Only DDL operations can be performed on the console.
  • The current version does not support TransactWriteItems and TransactGetItems.
  • The current version does not support the following on-demand backup APIs: CreateBackup, DescribeBackup, DeleteBackup, ListBackups, and RestoreTableFromBackup.
  • The table or index name cannot contain periods (.).
  • All DDL APIs are synchronous APIs.

Supported Expressions

ConditionExpression and FilterExpression of GeminiDB DynamoDB-Compatible API support the following function syntax:

function ::=
    attribute_exists (path)
    | attribute_not_exists (path)
    | attribute_type (path, type)
    | begins_with (path, substr)
    | contains (path, operand)
operand in contains(path,operand) can only be an attribute value (that is, the value placeholder).

UpdateExpression of GeminiDB DynamoDB-Compatible API supports the following syntax:

update-expression ::=
    [ SET action [, action] ... ]
    [ REMOVE action [, action] ...]
    [ ADD action [, action] ... ]
    [ DELETE action [, action] ...]   

set-action ::=
    path = value  

value ::=
    operand
    | operand '+' operand
    | operand '-' operand   

operand ::= 
    path | function  

function ::= 
    if_not_exists (path, value) 
    | list_append (list1, list2)   

remove-action ::=
    path   

add-action ::= 
    path value

delete-action ::= 
    path value
In SET path = operand, operand cannot be set to path.
In SET path = operand1 '+'|'-' operand2, operand1 must be set to path, and operand2 must be an attribute value.
In SET path = if_not_exists (path, value), values of the two path parameters must be the same and must be expression attribute values.
All values can only be placeholders, for example, ':placeholder'.

Compatible APIs

Table 2 CreateTable

API

Parameter

Mandatory

Supported

Remarks

CreateTable

Request parameter

AttributeDefinitions

Yes

Yes

-

KeySchema

Yes

Yes

-

TableName

Yes

Yes

Can contain 3 to 48 characters. The regular expression is ([\w-]+).

BillingMode

No

Yes

-

GlobalSecondaryIndexes

No

Yes

-

LocalSecondaryIndexes

No

Yes

-

ProvisionedThroughput

Yes

Yes

-

SSESpecification

No

No

-

StreamSpecification

No

Yes

-

Tags

No

No

-

Response parameter

TableDescription

-

Yes

-

Table 3 UpdateTable

API

Parameter

Mandatory

Supported

Remarks

UpdateTable

Request parameter

AttributeDefinitions

No

Yes

-

BillingMode

No

Yes

-

GlobalSecondaryIndexesUpdates

Yes

Yes

-

ProvisionedThroughput

No

No

-

ReplicaUpdates

No

No

Default strong consistency

SSESpecification

No

No

-

StreamSpecification

No

Yes

-

TableName

Yes

Yes

-

Response parameter

TableDescription

-

Yes

-

Table 4 DescribeTable

API

Parameter

Mandatory

Supported

Remarks

DescribeTable

Request parameter

TableName

Yes

Yes

-

Response parameter

Table

-

Yes

-

Table 5 ListTables

API

Parameter

Mandatory

Supported

Remarks

ListTables

Request parameter

ExclusiveStartTableName

No

Yes

-

Limit

No

Yes

-

Response parameter

LastEvaluatedTableName

-

Yes

-

TableNames

-

Yes

-

Table 6 DeleteTable

API

Parameter

Mandatory

Supported

Remarks

DeleteTable

Request parameter

TableName

Yes

Yes

-

Response parameter

TableDescription

-

Yes

-

Table 7 PutItem

API

Parameter

Mandatory

Supported

Remarks

PutItem

Request parameter

Item

Yes

Yes

-

TableName

Yes

Yes

-

ConditionalOperator

No

Yes

-

ConditionExpression

No

Yes

-

Expected

No

Yes

-

ExpressionAttributeNames

No

Yes

-

ExpressionAttributeValues

No

Yes

-

ReturnConsumedCapacity

No

Yes

-

ReturnItemCollectionMetrics

No

Yes

-

ReturnValues

No

Yes

-

Response parameter

Attributes

-

Yes

-

ConsumedCapacity

-

Yes

-

ItemCollectionMetrics

-

No

-

Table 8 UpdateItem

API

Parameter

Mandatory

Supported

Remarks

UpdateItem

Request parameter

Key

Yes

Yes

-

TableName

Yes

Yes

-

AttributeUpdates

No

Yes

-

ConditionalOperator

No

Yes

-

ConditionExpression

No

Yes

-

Expected

No

Yes

-

ExpressionAttributeNames

No

Yes

-

ExpressionAttributeValues

No

Yes

-

ReturnConsumedCapacity

No

Yes

-

ReturnItemCollectionMetrics

No

No

-

ReturnValues

No

Yes

-

UpdateExpression

No

Yes

-

Response parameter

Attributes

-

Yes

-

ConsumedCapacity

-

Yes

-

ItemCollectionMetrics

-

No

-

Table 9 GetItem

API

Parameter

Mandatory

Supported

Remarks

GetItem

Request parameter

Key

Yes

Yes

-

TableName

Yes

Yes

-

AttributesToGet

No

Yes

-

ConsistentRead

No

No

Default strong consistency

ExpressionAttributeNames

No

Yes

-

ProjectionExpression

No

Yes

-

ReturnConsumedCapacity

No

Yes

-

Response parameter

ConsumedCapacity

-

Yes

-

Item

-

Yes

-

Table 10 DeleteItem

API

Parameter

Mandatory

Supported

Remarks

DeleteItem

Request parameter

Key

Yes

Yes

-

TableName

Yes

Yes

-

ConditionalOperator

No

Yes

-

ConditionExpression

No

Yes

-

Expected

No

Yes

-

ExpressionAttributeNames

No

Yes

-

ExpressionAttributeValues

No

Yes

-

ReturnConsumedCapacity

No

Yes

-

ReturnItemCollectionMetrics

No

No

-

ReturnValues

No

Yes

-

Response parameter

Attributes

-

Yes

-

ConsumedCapacity

-

Yes

-

ItemCollectionMetrics

-

No

-

Table 11 BatchWriteItem

API

Parameter

Mandatory

Supported

Remarks

BatchWriteItem

Request parameter

RequestItems

Yes

Yes

-

ReturnConsumedCapacity

No

Yes

-

ReturnItemCollectionMetrics

No

No

-

Response parameter

ConsumedCapacity

-

Yes

-

ItemCollectionMetrics

-

No

-

UnprocessedItems

-

Yes

-

Table 12 BatchGetItem

API

Parameter

Mandatory

Supported

Remarks

BatchGetItem

Request parameter

RequestItems

Yes

Yes

None

ReturnConsumedCapacity

No

Yes

-

Response parameter

ConsumedCapacity

-

Yes

-

Responses

-

Yes

-

UnprocessedKeys

-

Yes

-

Table 13 Query

API

Parameter

Mandatory

Supported

Remarks

Query

Request parameter

TableName

Yes

Yes

-

AttributesToGet

No

Yes

-

ConditionalOperator

No

Yes

-

ConsistentRead

No

No

Default strong consistency

ExclusiveStartKey

No

Yes

-

ExpressionAttributeNames

No

Yes

-

ExpressionAttributeValues

No

Yes

-

FilterExpression

No

Yes

-

IndexName

No

Yes

-

KeyConditionExpression

No

Yes

-

KeyConditions

No

No

-

Limit

No

Yes

-

ProjectionExpression

No

Yes

-

QueryFilter

No

Yes

-

ReturnConsumedCapacity

No

Yes

-

ScanIndexForward

No

Yes

-

Select

No

Yes

-

Response parameter

ConsumedCapacity

-

Yes

-

Count

-

Yes

-

Items

-

Yes

-

LastEvaluatedKey

-

Yes

-

ScannedCount

-

Yes

-

Table 14 Scan

API

Parameter

Mandatory

Supported

Remarks

Scan

Request parameter

TableName

Yes

Yes

-

AttributesToGet

No

Yes

-

ConditionalOperator

No

Yes

-

ConsistentRead

No

No

Default strong consistency

ExclusiveStartKey

No

Yes

-

ExpressionAttributeNames

No

Yes

-

ExpressionAttributeValues

No

Yes

-

FilterExpression

No

Yes

-

IndexName

No

Yes

-

Limit

No

Yes

-

ProjectionExpression

No

Yes

-

ReturnConsumedCapacity

No

Yes

-

ScanFilter

No

Yes

-

Segment

No

Yes

-

Select

No

Yes

-

TotalSegments

No

Yes

-

Response parameter

ConsumedCapacity

No

Yes

-

Count

-

Yes

-

Items

-

Yes

-

LastEvaluatedKey

-

Yes

-

ScannedCount

-

Yes

-

Table 15 UpdateTimeToLive

API

Parameter

Mandatory

Supported

Remarks

UpdateTimeToLive

Request parameter

TableName

Yes

Yes

-

TimeToLiveSpecification

Yes

Yes

-

Response parameter

TimeToLiveSpecification

-

Yes

-

Table 16 DescribeTimeToLive

API

Parameter

Mandatory

Supported

Remarks

DescribeTimeToLive

Request parameter

TableName

Yes

Yes

-

Response parameter

TimeToLiveSpecification

-

Yes

-