createBlog method
Future<CreateBlog>
createBlog({
- required String title,
- required String body,
- required String format,
- required String category,
- required String distinctId,
- List<
String> ? tags, - File? attachedFile,
- String? pushRedirectUrl,
override
Implementation
@override
Future<CreateBlog> createBlog({
required String title,
required String body,
required String format,
required String category,
required String distinctId,
List<String>? tags,
File? attachedFile,
String? pushRedirectUrl,
}) async {
final data = attachedFile != null
? FormData.fromMap({
'api_key': Environment.apiKey,
'campaign': Environment.campaign,
'distinct_id': distinctId,
'blog_post[title]': title,
'blog_post[body]': body,
'blog_post[format]': format,
'blog_post[category]': category,
if (tags != null && tags.isNotEmpty) 'blog_post[tags]': tags,
'blog_post[push_redirect_url]': ?pushRedirectUrl,
'blog_post[attached_file]': await MultipartFile.fromFile(
attachedFile.path,
filename: attachedFile.path.split('/').last,
),
})
: {
'api_key': Environment.apiKey,
'campaign': Environment.campaign,
'distinct_id': distinctId,
'blog_post': {
'title': title,
'body': body,
'format': format,
'category': category,
if (tags != null && tags.isNotEmpty) 'tags': tags,
'push_redirect_url': ?pushRedirectUrl,
},
};
final response = await dio.post('/blogs', data: data);
return _jsonToCreateBlog(_parseResponse(response.data));
}