Skip to content

Latest commit

 

History

History
66 lines (52 loc) · 1.38 KB

File metadata and controls

66 lines (52 loc) · 1.38 KB

Usage Examples

using Flurl;
using Flurl.Http;
using Nullforce.Api.Derpibooru;
using Nullforce.Api.Derpibooru.JsonModels;

...

var uri = "https://derpibooru.org/search.json";
uri = uri.SetQueryParam("q", "fluttershy");

var searchResult = await uri.GetJsonAsync<SearchRootJson>();

Getting Images from the Front Page of Derpibooru

var derpiClient = new DerpiClient();
var searchResult = await derpiClient
    .Search()
    .Uri
    .GetJsonAsync<SearchRootJson>();

foreach (var image in searchResult.Search)
    Console.WriteLine($"{image.Id} - score: {image.Score} - {image.Tags}");

Search Posts by Tag

var derpiClient = new DerpiClient();
var searchResult = await derpiClient
    .Search()
    .WithQuery("rarity AND twilight sparkle")
    .Uri
    .GetJsonAsync<SearchRootJson>();

foreach (var image in searchResult.Search)
    Console.WriteLine(image.Uri);

Getting random posts

var derpiClient = new DerpiClient();
var searchResult = await derpiClient
    .Search()
    .SortBy(DerpiSortOptions.Random)
    .Uri
    .GetJsonAsync<SearchRootJson>();

foreach (var image in searchResult.Search)
    Console.WriteLine(image.Uri);

Getting top posts

var derpiClient = new DerpiClient();
var searchResult = await derpiClient
    .Search()
    .SortBy(DerpiSortOptions.Score)
    .Uri
    .GetJsonAsync<SearchRootJson>();