Shared scalars, interfaces, Relay helpers, and utility types.
Other types
Shared scalars, interfaces, Relay helpers, and utility types.
Types
Shared building blocks used across the API: scalars, interfaces, Relay
pagination helpers (PageInfo, connections), and utility objects that are
not tied to a single business page.
Objects
Article
ArticleType: object
News article published by an issuer. May be authored manually or ingested from an external RSS feed.
Implements: Node
Fields
| Field | Type | Description |
|---|---|---|
id | ID! | — |
createdAt | Time! | — |
title | String! | — |
content | String! | Body text of the article. |
provider | ArticleProvider! | Ingestion source of the article. |
providerUid | String | Unique identifier assigned by the external provider, if any. |
sourceUrl | String | Original URL of the article on the provider's site. |
publishedAt | Time | Date the article was originally published by the provider. |
Document | Document | Cover image or attachment associated with the article. |
Issuer | Issuer! | Issuer that published this article. |
ArticleConnection
ArticleConnectionType: object
Relay connection for paginated Article results.
Fields
| Field | Type | Description |
|---|---|---|
nodes | [Article]! | — |
edges | [ArticleEdge!]! | — |
pageInfo | PageInfo! | — |
totalCount | Int! | — |
ArticleEdge
ArticleEdgeType: object
Relay edge wrapping an Article node with its pagination cursor.
Fields
Event
EventType: object
Audit event recorded whenever a tracked mutation is executed.
Implements: Node
Fields
| Field | Type | Description |
|---|---|---|
id | ID! | — |
createdAt | Time! | — |
deletedAt | Time | Soft-delete timestamp. Null when the record is active. |
type | EventType! | Category of the action that triggered this event. |
isEnabled | Boolean! | Whether this event type is currently enabled. Disabled events block their mutation. |
rateLimitMaxCalls | Int | Maximum number of calls allowed within the rate limit window. Null means no rate limit. |
rateLimitWindowSeconds | Int | Duration in seconds of the rate limit sliding window. Null means no rate limit. |
IDNowAmlCase
IDNowAmlCaseType: object
IDNow AML case opened against a user or UBO.
A single case can be linked to many IDNowAmlCaseAlert (one alert per IDNow match).
Implements: Node
Fields
IDNowAmlCaseAlert
IDNowAmlCaseAlertType: object
Raw match returned by IDNow ongoing monitoring for a given AML case.
Each match is referenced by a single internal screening Alert (1:1).
Implements: Node, AlertReference
Fields
| Field | Type | Description |
|---|---|---|
id | ID! | — |
createdAt | Time! | — |
alertId | String! | IDNow alert identifier. |
profileId | String | IDNow profile identifier. |
serviceName | String | Name of the IDNow service that produced the match. |
source | String | Data source where the match was found (e.g. sanction list name). |
datasourceRecordName | String | Name of the matched record in the data source. |
status | String | Status reported by IDNow (e.g. Open, Remediated). |
nameMatchScore | String | Name match score reported by IDNow (percentage as string). |
dobMatchScore | String | Date-of-birth match score reported by IDNow (percentage as string). |
idnowAmlCase | IDNowAmlCase! | Underlying IDNow AML case linking this alert to a user or UBO. |
IdNowAutoIdentReview
IdNowAutoIdentReviewType: object
Record of an IDnow AutoIdent identity verification session for a user.
Implements: Node, NotificationReference
Fields
| Field | Type | Description |
|---|---|---|
id | ID! | — |
expirationDate | Time | Date when this identity verification expires. |
status | IdNowAutoIdentReviewStatus | Current status of the identity verification. |
identResponse | String | Raw JSON payload returned by IDnow for this identification (may be null). |
IdNowIdCheckReview
IdNowIdCheckReviewType: object
Record of an IDnow ID Check document verification session for a user.
Implements: Node
Fields
IPRecord
IPRecordType: object
Geolocation and network metadata for an IP address observed during a user session.
Used for risk assessment and fraud detection.
Implements: Node
Fields
| Field | Type | Description |
|---|---|---|
id | ID! | — |
ipAddress | String! | — |
country | Country | Resolved country for this IP address. |
continent | String | — |
city | String | — |
postalCode | String | — |
latitude | Float | — |
longitude | Float | — |
timezone | String | — |
isEuropeanUnion | Boolean | Whether the IP address is located within the European Union. |
isp | String | Internet service provider name. |
organization | String | Organization registered for this IP range. |
autonomousSystemNumber | Int | BGP autonomous system number. |
autonomousSystemOrganization | String | Organization owning the BGP autonomous system. |
connectionType | String | Connection type (e.g., Cable/DSL, Cellular, Corporate). |
domain | String | Top-level domain associated with the IP. |
isAnonymous | Boolean | Whether the IP is classified as anonymous by any method. |
isAnonymousVpn | Boolean | Whether the IP belongs to a known anonymous VPN service. |
isAnycast | Boolean | Whether the IP is an anycast address. |
isHostingProvider | Boolean | Whether the IP belongs to a hosting or cloud provider. |
isPublicProxy | Boolean | Whether the IP is a known public proxy. |
isResidentialProxy | Boolean | Whether the IP is a known residential proxy. |
isTorExitNode | Boolean | Whether the IP is a known Tor exit node. |
mobileCountryCode | String | Mobile country code (MCC) for cellular connections. |
mobileNetworkCode | String | Mobile network code (MNC) for cellular connections. |
network | String | CIDR network block the IP belongs to. |
staticIPScore | Float | Confidence score that the IP is statically assigned (0-100). |
userCount | Int | Estimated number of users sharing this IP address. |
userType | String | MaxMind user-type classification (e.g., residential, business). |
createdAt | Time! | — |
updatedAt | Time! | — |
IPRecordConnection
IPRecordConnectionType: object
Relay connection for paginated IPRecord results.
Fields
| Field | Type | Description |
|---|---|---|
nodes | [IPRecord]! | — |
edges | [IPRecordEdge!]! | — |
pageInfo | PageInfo! | — |
totalCount | Int! | — |
IPRecordEdge
IPRecordEdgeType: object
Relay edge wrapping an IPRecord node with its pagination cursor.
Fields
KafkaDlqMessage
KafkaDlqMessageType: object
A message that failed processing and was sent to a Kafka Dead Letter Queue.
Implements: Node
Fields
| Field | Type | Description |
|---|---|---|
id | ID! | — |
originalTopic | String! | Original topic the message was destined for. |
originalPartition | String! | Partition in the original topic. |
originalOffset | String! | Offset in the original topic. |
dlqTopic | String! | DLQ topic where the message was sent. |
errorMessage | String! | Error that caused the message to fail processing. |
messageKey | String | Kafka message key, if present. |
messageValueBase64 | String! | Raw protobuf payload, base64-encoded. |
messageValueJson | String | Decoded protobuf payload as human-readable JSON, if the topic schema is known. |
status | KafkaDlqMessageStatus! | Current status of the DLQ message. |
dlqTimestamp | Time! | Timestamp when the message entered the DLQ. |
actedBy | String | User ID who replayed or dismissed the message. |
actedAt | Time | Timestamp when the action was taken. |
createdAt | Time! | — |
updatedAt | Time! | — |
PageInfo
PageInfoType: object
Relay pagination metadata returned alongside every connection.
Fields
Reconciliation
ReconciliationType: object
Reconciliation run comparing bank account and blockchain balances to detect discrepancies.
Implements: Node
Fields
| Field | Type | Description |
|---|---|---|
id | ID! | — |
createdAt | Time! | — |
updatedAt | Time! | — |
attempts | Int! | Number of processing attempts made for this reconciliation. |
bankAccountBalance | Uint64 | Balance reported by the bank account. Amount in euro cents. |
blockchainBalance | Uint64 | Balance reported by the blockchain. Amount in euro cents. |
status | ReconciliationStatus! | Current processing status of the reconciliation. |
Webhook
WebhookType: object
Inbound webhook event received from an external provider.
The metadata field contains the raw provider payload as JSON.
Implements: Node
Fields
| Field | Type | Description |
|---|---|---|
id | ID! | — |
webhookType | WebhookType! | Provider that sent the webhook. |
metadata | String! | Raw JSON payload from the provider. |
createdAt | Time! | — |
updatedAt | Time! | — |
Interfaces
Node
NodeType: interface
Relay Node interface. All identifiable entities implement this interface,
enabling global object lookup by ID.
Fields
| Field | Type | Description |
|---|---|---|
id | ID! | Globally unique Snowflake identifier with a domain prefix (e.g., "user|123456789"). |
Enums
ArticleProvider
ArticleProviderType: enum
Source from which an article was ingested.
Values
| Value | Description |
|---|---|
MANUAL | Article created manually by an issuer administrator. |
RSS_ACTUSNEWS | Article imported automatically from the ActusNews RSS feed. |
EventStatus
EventStatusType: enum
Lifecycle status of an audit event.
Values
| Value | Description |
|---|---|
IN_PROGRESS | Event processing is underway. |
COMPLETED | Event completed successfully. |
FAILED | Event processing failed. |
EventType
EventTypeType: enum
Categorizes audit events emitted by mutations. Each mutation that uses the
@event directive references one of these values.
Values
| Value | Description |
|---|---|
LOGIN | |
LOGOUT | |
SIGNUP_NATURAL | |
SIGNUP_LEGAL | |
REQUEST_RESET_PASSWORD | |
CONFIRM_RESET_PASSWORD | |
UPDATE_ACCOUNT_STATUS | |
SWITCH_USER | |
CREATE_USER | |
UPDATE_USER | |
DELETE_USER | |
READ_NOTIFICATION | |
APPLY_TWO_FACTOR_AUTH | |
RESEND_TWO_FACTOR_AUTH | |
GRANT_ROLES | |
REVOKE_ROLES | |
CREATE_ISSUER | |
UPDATE_ISSUER | |
CREATE_ARTICLE | |
UPDATE_ARTICLE | |
DELETE_ARTICLE | |
CREATE_PRIMARY_MARKET | |
UPDATE_PRIMARY_MARKET | |
CLOSE_PRIMARY_MARKET | |
UPDATE_TOKEN | |
CREATE_PRIMARY_MARKET_ORDER | |
CANCEL_PRIMARY_MARKET_ORDER | |
SETTLE_PRIMARY_MARKET_ORDER | |
UPDATE_SECONDARY_MARKET | |
CREATE_SECONDARY_MARKET | |
CREATE_SECONDARY_MARKET_FREEZE | |
CREATE_SECONDARY_MARKET_ORDER | |
CANCEL_SECONDARY_MARKET_ORDER | |
UPDATE_USER_MANUAL_RISK | |
CREATE_USER_RISK | |
DELETE_USER_RISK | |
ACCEPT_AGREEMENT | |
CREATE_ID_NOW_AUTO_IDENT_REVIEW | |
UPLOAD_DOCUMENT | |
ACCEPT_DOCUMENT_REVIEW | |
REFUSE_DOCUMENT_REVIEW | |
CREATE_DOCUMENT_REQUEST | |
CANCEL_DOCUMENT | |
CREATE_UBO | |
CANCEL_UBO | |
CREATE_SEPA_TRANSFER | |
CREATE_REFUND_SEPA_TRANSFER | |
CREATE_QUESTIONNAIRE_USER_RESPONSE | |
CREATE_COMMENT | |
CREATE_MEMOBANK_VIRTUAL_IBAN | |
CREATE_BENEFICIARY | |
UPDATE_ALERT | |
ASSIGN_ALERT | |
CREATE_ISSUER_LEGACY_SHAREHOLDER | |
DELETE_ISSUER_LEGACY_SHAREHOLDER | |
SETTLE_ISSUER_LEGACY_SHAREHOLDER | |
CREATE_RECONCILIATION | |
RECONCILIATION_FAILED | |
RECONCILIATION_RETRY_THRESHOLD | |
REQUEST_FOR_APPROVAL_UBO_DECLARATION | |
ACCEPT_UBO | |
REFUSE_UBO | |
BRIDGE_CREATE_PAYMENT_LINK | |
CREATE_ISSUER_FINANCIAL_DATA | |
UPDATE_ISSUER_FINANCIAL_DATA | |
DELETE_ISSUER_FINANCIAL_DATA | |
CREATE_ADJUSTMENT | |
UPDATE_EVENT | |
REPLAY_KAFKA_DLQ_MESSAGE | |
DISMISS_KAFKA_DLQ_MESSAGE | |
RETRY_WEBHOOK | |
ASK_ANALYTICS | |
PORTFOLIO_REPORTING | |
CREATE_API_KEY | |
REVOKE_API_KEY |
IdNowAutoIdentReviewStatus
IdNowAutoIdentReviewStatusType: enum
Status of an IDnow AutoIdent identity verification.
Values
| Value | Description |
|---|---|
SUCCESS | |
SUCCESS_DATA_CHANGED | |
FRAUD_SUSPICION_CONFIRMED | |
FRAUD_SUSPICION_PENDING | |
CANCELED | |
CHECK_PENDING | |
ABORTED |
KafkaDlqMessageStatus
KafkaDlqMessageStatusType: enum
Status of a Kafka DLQ message.
Values
| Value | Description |
|---|---|
PENDING | |
REPLAYED | |
DISMISSED |
ReconciliationStatus
ReconciliationStatusType: enum
Processing status of a reconciliation run.
Values
| Value | Description |
|---|---|
PENDING | Reconciliation is awaiting processing. |
COMPLETED | Reconciliation finished successfully with balances matched or recorded. |
FAILED | Reconciliation could not be completed after all attempts. |
WebhookType
WebhookTypeType: enum
Source system that emitted the webhook event.
Values
| Value | Description |
|---|---|
MEMOBANK | Memobank banking webhook. |
IDNOW_AUTO_IDENT | IDnow auto-ident verification webhook. |
IDNOW_AML_KYC_CHECK | IDnow AML KYC check webhook. |
IDNOW_AML_CASE | IDnow AML case webhook. |
BRIDGE | Bridge payment webhook. |
Scalars
Boolean
BooleanType: scalar
The Boolean scalar type represents true or false.
Built-in or custom scalar.
Float
FloatType: scalar
The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.
Built-in or custom scalar.
ID
IDType: scalar
The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.
Built-in or custom scalar.
Int
IntType: scalar
The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
Built-in or custom scalar.
String
StringType: scalar
The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
Built-in or custom scalar.
Time
TimeType: scalar
ISO 8601 datetime string serialized in RFC 3339 format (e.g., "2024-01-15T10:30:00Z").
Built-in or custom scalar.
Uint64
Uint64Type: scalar
Unsigned 64-bit integer, serialized as a JSON number.
Built-in or custom scalar.

