Search Results for

    Show / Hide Table of Contents

    Class PerplexityClient

    Plans

    Free ??$0.00 (Forever)

    • Start for free, no credit card needed.
    • Limited file uploads and image generation.
    • Limited access to Perplexity Research.
    • Limited access to advanced AI models.
    • Access to voice mode.

    Pro ??$20.00 / month ($16.67 when billed annually) ??Popular

    • Upgrade productivity and learning with additional access.
    • 10x as many citations in answers.
    • Access to Perplexity Labs.
    • Unlimited file and photo uploads.
    • Extended access to Perplexity Research.
    • Extended access to image generation.
    • Limited access to video generation.
    • One subscription for the latest AI models including GPT-5 and Claude Sonnet 4.
    • Exclusive access to Pro Perks and more.
    • Existing subscriber? See billing help.

    Max ??$200.00 / month

    • Unlock Perplexity's full capabilities with early access to new products.
    • Everything in Pro.
    • Early access to Comet, the agentic browser.
    • Unlimited access to Perplexity Labs.
    • Unlimited access to Perplexity Research.
    • Use advanced AI models like OpenAI o3-pro and Anthropic Claude Opus 4.1.
    • Enhanced access to video generation.
    • Priority support.
    • For personal use only, and subject to policies.
    Inheritance
    object
    RESTClient
    ApiClient<PerplexityClient, Api, PerplexitySettings>
    AIClient<PerplexityClient, PerplexitySettings>
    PerplexityClient
    Implements
    IApiClient
    Inherited Members
    AIClient<PerplexityClient, PerplexitySettings>.ResolveApiKey(string)
    AIClient<PerplexityClient, PerplexitySettings>.GetVersion(string)
    AIClient<PerplexityClient, PerplexitySettings>.ResolveBetaVersion(string)
    ApiClient<PerplexityClient, Api, PerplexitySettings>.DefaultInstance
    ApiClient<PerplexityClient, Api, PerplexitySettings>.Name
    ApiClient<PerplexityClient, Api, PerplexitySettings>.BaseUrl
    ApiClient<PerplexityClient, Api, PerplexitySettings>.Api
    ApiClient<PerplexityClient, Api, PerplexitySettings>.BaseRequestParameters
    ApiClient<PerplexityClient, Api, PerplexitySettings>.AdditionalHeaders
    ApiClient<PerplexityClient, Api, PerplexitySettings>.RequiresApiKey
    ApiClient<PerplexityClient, Api, PerplexitySettings>.Settings
    ApiClient<PerplexityClient, Api, PerplexitySettings>.POSTAsync<TBody, TResponse>(ICrudService, string, TBody, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.POSTAsync<TBody>(ICrudService, string, TBody, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.POSTAsync<TResponse>(ICrudService, string, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.GETAsync(ICrudService, string, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.GETAsync<TResponse>(ICrudService, string, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.PUTAsync<TBody>(ICrudService, string, TBody, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.PATCHAsync<TResponse>(ICrudService, string, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.DELETEAsync<TBody, TStatus>(ICrudService, string, TBody, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.DELETEAsync<TStatus>(ICrudService, string, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.DELETEAsync(ICrudService, string, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.STREAMAsync<TBody, TDelta, TResult>(ICrudService, string, TBody, RequestOptions, IStreamPipeline<string, TDelta, TResult>, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.STREAMAsync<TBody, TDelta, TResult>(ICrudService, string, TBody, RequestOptions, IStreamPipeline<PooledBytes, TDelta, TResult>, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.STREAMAsync<TDelta, TResult>(ICrudService, string, RequestOptions, IStreamPipeline<string, TDelta, TResult>, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.STREAMAsync<TDelta, TResult>(ICrudService, string, RequestOptions, IStreamPipeline<PooledBytes, TDelta, TResult>, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.DownloadAsync(ICrudService, string, RequestOptions, params RequestParameter[])
    ApiClient<PerplexityClient, Api, PerplexitySettings>.ValidateAuthAsync()
    ApiClient<PerplexityClient, Api, PerplexitySettings>.ValidateEndpointAsync(string)
    RESTClient.Jss
    RESTClient.Xss
    RESTClient.Logger
    RESTClient.LogOptions
    RESTClient.Timeout
    RESTClient.ExceptionParser
    RESTClient.ExceptionHandler
    RESTClient.MaxRetryCount
    RESTClient.RetryDelaySeconds
    RESTClient.MaxRetryDelaySeconds
    RESTClient.DefaultFileMimeType
    RESTClient.DefaultDownloadDirectoryPath
    RESTClient.SetOnetimeLogOptions(CurlLogOptions)
    RESTClient.POSTAsync(RESTRequest)
    RESTClient.POSTAsync<T>(RESTRequest)
    RESTClient.PUTAsync(RESTRequest)
    RESTClient.PUTAsync<T>(RESTRequest)
    RESTClient.GETAsync<T>(RESTRequest)
    RESTClient.GETAsync(RESTRequest)
    RESTClient.DELETEAsync<T>(RESTRequest)
    RESTClient.DELETEAsync(RESTRequest)
    RESTClient.HEADAsync(RESTRequest)
    RESTClient.HEADAsync<T>(RESTRequest)
    RESTClient.PATCHAsync(RESTRequest)
    RESTClient.PATCHAsync<T>(RESTRequest)
    RESTClient.STREAMAsync<TDelta, TResult>(RESTRequest, IStreamPipeline<string, TDelta, TResult>, string)
    RESTClient.STREAMAsync<TDelta, TResult>(RESTRequest, IStreamPipeline<PooledBytes, TDelta, TResult>, string)
    RESTClient.DOWNLOADAsync(RESTRequest)
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Glitch9.AIDevKit.Perplexity
    Assembly: Glitch9.AIDevKit.Provider.Perplexity.dll
    Syntax
    public sealed class PerplexityClient : AIClient<PerplexityClient, PerplexitySettings>, IApiClient

    Constructors

    | Edit this page View Source

    PerplexityClient()

    Declaration
    public PerplexityClient()

    Properties

    | Edit this page View Source

    Chat

    Declaration
    public ChatService Chat { get; }
    Property Value
    Type Description
    ChatService
    | Edit this page View Source

    Models

    Declaration
    public ModelService Models { get; }
    Property Value
    Type Description
    ModelService

    Methods

    | Edit this page View Source

    CreateBaseRequestParameters()

    Creates the request parameters for API key, version, and beta version.

    Declaration
    protected override Dictionary<string, RequestParameter> CreateBaseRequestParameters()
    Returns
    Type Description
    Dictionary<string, RequestParameter>
    Overrides
    ApiClient<PerplexityClient, Api, PerplexitySettings>.CreateBaseRequestParameters()
    | Edit this page View Source

    CreateJsonConverters()

    Override this to add more JsonConverters.

    Declaration
    protected override List<JsonConverter> CreateJsonConverters()
    Returns
    Type Description
    List<JsonConverter>
    Overrides
    AIClient<PerplexityClient, PerplexitySettings>.CreateJsonConverters()

    Implements

    IApiClient

    Extension Methods

    ArrayExtensions.ToArrayOrEmpty<T>(T)
    ArrayExtensions.ToArrayOrNull<T>(T)
    EventExtensions.ToDelta<T>(T, string, int, string, bool)
    EventExtensions.ToDone<T>(T, string, int, string)
    EventExtensions.ToEvent<T>(T)
    EventExtensions.UpcastDelta<T1, T2>(T1, string, int, string, bool)
    FallbackExtensions.IsOr<TParent, TChild>(TParent, TChild)
    ResponseCastingExtensions.GetResult<T>(T)
    SystemExtensions.GetName(object)
    • Edit this page
    • View Source
    In this article
    Back to top AI DevKit Documentation