Misar Docs
MisarMailMisar.BlogMisarReachMisarPostMisar.DevMisar PlatformMisar IdentityMisar Posts API
Sdks

Dart / Flutter SDK

Install and use the MisarBlog Dart SDK

Installation

Add to pubspec.yaml:

dependencies:
  misarblog: ^0.1.0

Then run:

dart pub get

Quick Start

import 'package:misarblog/misarblog.dart';

void main() async {
  final client = MisarBlogClient(apiKey: Platform.environment['MISARBLOG_API_KEY']!);

  final posts = await client.posts.list('johndoe');
  for (final post in posts.data) {
    print('${post.title} — ${post.slug}');
  }

  client.close();
}

Generate an Embed URL

final url = client.embed.url('johndoe', theme: 'dark');
print(url);

// Single post
final postUrl = client.embed.url('johndoe', slug: 'my-first-post', theme: 'light');

Available Methods

MethodDescription
client.posts.list(username, {params})List posts for a user
client.posts.get(username, slug)Get a single post by slug
client.embed.url(username, {slug, theme})Generate an embed URL
client.auth.refreshToken(token)Refresh a session token
client.webhooks.list()List webhook endpoints
client.webhooks.create(request)Register a webhook
client.webhooks.delete(id)Delete a webhook
client.close()Close the HTTP client

Error Handling

import 'package:misarblog/misarblog.dart';

try {
  final posts = await client.posts.list('johndoe');
} on MisarBlogApiException catch (e) {
  print('API error ${e.statusCode}: ${e.message}');
} on MisarBlogNetworkException catch (e) {
  print('Network error: ${e.message}');
}