Table of Contents

Namespace Vonage.Common

Classes

EmbeddedResponse<T>

Represents an Embedded JSON response with a custom content.

HALLinks

Represents the standard HAL (Hypertext Application Language) navigation links for paginated responses.

HalLink

Represents a HAL (Hypertext Application Language) link to a related resource or page.

JsonSerializer

Provides JSON serialization and deserialization using System.Text.Json with custom converters for Vonage types.

Link

Represents a hyperlink reference used in HAL (Hypertext Application Language) responses.

Message

Represents an SMS message received via webhook or retrieved from the API.

PageListDateTimeConverter

Custom JSON converter for DateTime values in paginated list responses. Formats dates using ISO 8601 format: yyyy-MM-ddTHH:mm:ssZ.

PageResponse<T>

Represents a paginated API response following the HAL (Hypertext Application Language) standard.

TimeProvider

Default implementation of ITimeProvider that returns the actual system time.

UriHelpers

Provides helper methods for building URIs with query parameters.

VonageMaybeJsonConverter<T>

Represents a custom converter from Maybe to Json, using specific conversion for Vonage entities.

Webhook

Represents a webhook endpoint configuration for receiving event callbacks from Vonage APIs.

Structs

AccountKey

Represents a validated Vonage Account API key. The key must be exactly 8 alphanumeric characters.

HalLinks

Represents a set of HAL (Hypertext Application Language) navigation links for paginated API responses.

HalLinks<T>

Represents a set of typed HAL (Hypertext Application Language) navigation links for paginated API responses.

MailAddress

Represents a validated email address using RFC 5321 standards.

PhoneNumber

Represents a validated E.164 phone number. The number must be 7-15 digits, containing only numeric characters.

Interfaces

IJsonSerializer

Defines a contract for JSON serialization and deserialization with Result-based error handling.

ITimeProvider

Provides access to the current time. Enables testability by allowing time to be mocked.

Enums

FetchOrder

Defines the ordering when fetching data.

Webhook.Type

Defines the type of webhook event.