Types
The Blocklet Server Client API utilizes a variety of GraphQL types to structure the data for queries and mutations. This section provides a comprehensive reference for all data types, input objects, enums, and scalars used throughout the API. Understanding these types is crucial for constructing valid requests and interpreting the responses from the Blocklet Server.
Scalar Types#
Scalar types represent the leaves of a GraphQL query. They are primitive values like strings, numbers, or booleans.
Scalar | Description |
|---|---|
| Represents textual data, represented as UTF-8 character sequences. |
| Represents |
| Represents a signed 32‐bit integer. |
| Represents signed double-precision floating-point values. |
| Represents a unique identifier, often used to refetch an object or as a key for a cache. |
| Represents any JSON-compatible value. |
| Represents a byte array. |
| Represents a 32-bit signed integer. |
| Represents a 32-bit unsigned integer. |
| Represents a 64-bit signed integer. |
| Represents a 64-bit unsigned integer. |
| Represents a 32-bit floating-point number. |
| Represents a file upload, typically used in mutations. |
Enum Types#
Enums are a special kind of scalar that is restricted to a particular set of allowed values.
BackendServiceType#
Defines the type of backend service a routing rule points to.
Value | Description |
|---|---|
| The service is the node daemon itself. |
| The service is a running blocklet. |
| The rule performs an HTTP redirect. |
| No backend service is configured. |
| The rule acts as a general proxy to a specified URL. |
| The rule returns a direct, static response. |
| The rule rewrites the request path. |
| The service is a specific component within a blocklet. |
BackupTo#
Specifies the destination for a blocklet backup.
Value | Description |
|---|---|
| Backup to a decentralized storage space. |
| Backup to the local disk. |
BlockletSource#
Indicates the origin from which a blocklet was installed.
Value | Description |
|---|---|
| Installed from a blocklet registry/store. |
| Installed from a local directory. |
| Installed from an uploaded file. |
| Installed from a direct URL. |
| Installed through a custom or unknown method. |
BlockletStatus#
Represents the current lifecycle status of a blocklet.
Value | Description |
|---|---|
| Blocklet has been added but not yet downloaded. |
| Blocklet is currently being downloaded. |
| Blocklet has been downloaded successfully. |
| Blocklet is currently being installed. |
| Blocklet has been installed but is not running. |
| Blocklet is in the process of starting. |
| Blocklet is currently running. |
| Blocklet is in the process of stopping. |
| Blocklet is stopped. |
| An error occurred in the blocklet's lifecycle. |
| Blocklet is currently being upgraded. |
| Blocklet is restarting. |
| Blocklet installation is corrupted. |
| Blocklet is waiting for a dependency or resource. |
| Blocklet has been deleted. |
| The status of the blocklet is unknown. |
HeaderMatchType#
Defines the matching strategy for HTTP headers in routing rules.
Value | Description |
|---|---|
| The header value must be an exact match. |
| The header value must contain the specified string. |
| The header value must match the specified regular expression. |
Notification_NotificationSeverity#
Defines the severity level of a notification.
Value | Description |
|---|---|
| Informational message. |
| Indicates a successful operation. |
| Indicates an error has occurred. |
| Indicates a potential issue or warning. |
Notification_NotificationSource#
Specifies the source of the notification.
Value | Description |
|---|---|
| Notification originated from the system/node. |
| Notification originated from a blocklet component. |
Notification_NotificationType#
Defines the type or category of the notification.
Value | Description |
|---|---|
| A standard notification message. |
| A notification related to DID Connect. |
| A feed-style update. |
| A simple greeting or test notification. |
| A notification that is passed through without special handling. |
NotificationActivity_ActivityTypeEnum#
Defines the type of user activity for feed-style notifications.
Value | Description |
|---|---|
| A user made a comment. |
| A user liked an item. |
| A user followed another user or item. |
| A user sent a tip. |
| A user was mentioned. |
| A user was assigned a task. |
| A user was unassigned from a task. |
NotificationAttachmentType#
Defines the type of attachment included in a notification.
Value | Description |
|---|---|
| A digital asset. |
| A Verifiable Credential. |
| A digital token. |
| A plain text attachment. |
| An image attachment. |
| A visual divider for formatting. |
| A transaction record. |
| A decentralized application link. |
| A hyperlink. |
| A formatted section of content. |
PublishType#
Specifies the type of artifact being published.
Value | Description |
|---|---|
| A single resource file. |
| A packed blocklet bundle. |
ReleaseStatus#
Indicates the status of a release in a publishing project.
Value | Description |
|---|---|
| The release is a draft and not yet published. |
| The release has been published. |
SenderType#
Defines the type of webhook sender.
Value | Description |
|---|---|
| A Slack webhook. |
| A generic API webhook. |
StatusCode#
Represents the status code of an API response.
Value | Description |
|---|---|
| The request was successful. |
| The requested blocklet could not be found. |
| The requested blocklet has not been purchased. |
| The request is forbidden due to insufficient permissions. |
| An internal server error occurred. |
| The request timed out. |
Input Objects#
Input objects are complex types used as arguments for mutations and queries, allowing you to pass structured data in a single parameter.
AigneConfigInput#
Configuration for the AI Gateway (Aigne).
AutoBackupInput#
Configuration for automatic backups.
AutoBlockPolicyInput#
Configuration for automatic IP blocking policies.
AutoCheckUpdateInput#
Configuration for automatic update checks.
BaseUserInfoInput#
Basic user information used in various input types.
BlockPolicyInput#
Configuration for IP blocking policies.
BlockletAccessPolicyInput#
Defines a blocklet access policy.
BlockletAccessPolicyQueryInput#
Input for querying BlockletAccessPolicy objects.
BlockletDistInput#
Describes the distribution file of a blocklet.
BlockletDockerInput#
Defines Docker-related settings for a blocklet.
BlockletGatewayInput#
Configuration for a blocklet's gateway settings.
BlockletResponseHeaderPolicyInput#
Defines a response header policy.
BlockletResponseHeaderPolicyQueryInput#
Input for querying BlockletResponseHeaderPolicy objects.
BlockletSecurityRuleInput#
Defines a security rule that combines access and header policies for a specific path.
BlockletSecurityRuleQueryInput#
Input for querying BlockletSecurityRule objects.
BlockletStoreInput#
Represents a blocklet store/registry.
ConfigEntryInput#
Represents a single configuration key-value pair.
ConfigNavigationInput#
Represents a navigation item in the user interface.
ConnectedAccountInfoInput#
Information about a user's account from a third-party provider.
ConnectedAccountInput#
Represents a user's connected third-party account.
DockerEnvKeyValuePairInput#
Represents a single environment variable for a Docker container.
DockerRunKeyValuePairInput#
Represents a key-value pair for Docker run arguments, such as volume mounts or port mappings.
DownloadTokenInput#
Token used for downloading a private blocklet.
EnableEventInput#
Structure for enabling a specific event for a webhook.
GatewayInput#
Structure for configuring the main node gateway.
HashFileInput#
Represents a file and its corresponding hash.
InviteSettingsInput#
Structure for configuring user invitation settings.
IssuerInput#
Represents the issuer of a credential or passport.
LoginEmailSettingsInput#
Structure for email-based login settings.
LoginPhoneSettingsInput#
Structure for phone-based login settings.
NodeInfoInput#
Structure for updating the node's information.
OauthClientInput#
Structure for creating or updating an OAuth client.
PagingInput#
Standard structure for pagination parameters.
PassportDisplayInput#
Structure for defining how a passport is displayed.
PermissionInput#
Structure for creating or updating a permission.
ProxyPolicyInput#
Structure for configuring proxy behavior.
RequestLimitInput#
Structure for configuring request rate limiting.
RoleUpdateInput#
Structure for updating a user role.
RoutingRuleInput#
Structure for defining a routing rule.
SessionConfigInput#
Structure for configuring user session settings.
TagInput#
Structure for creating or updating a tag.
UserAddressInput#
Structure for a user's physical address.
UserInfoInput#
Comprehensive structure for user information, used for creating or updating users.
UserQueryInput#
Structure for filtering and querying users.
UserSessionQueryInput#
Structure for querying user sessions.
WAFPolicyInput#
Structure for Web Application Firewall (WAF) configuration.
WebHookParamInput#
Structure for defining a parameter for a webhook.
WebhookEndpointStateInput#
Structure for creating or updating a webhook endpoint.