Skip to content

Latest commit

 

History

History
592 lines (424 loc) · 21.3 KB

File metadata and controls

592 lines (424 loc) · 21.3 KB

ValidateApi

All URIs are relative to https://zernio.com/api

Method HTTP request Description
validateMedia POST /v1/tools/validate/media Validate media URL
validateMediaWithHttpInfo POST /v1/tools/validate/media Validate media URL
validatePost POST /v1/tools/validate/post Validate post content
validatePostWithHttpInfo POST /v1/tools/validate/post Validate post content
validatePostLength POST /v1/tools/validate/post-length Validate post character count
validatePostLengthWithHttpInfo POST /v1/tools/validate/post-length Validate post character count
validateSubreddit GET /v1/tools/validate/subreddit Check subreddit existence
validateSubredditWithHttpInfo GET /v1/tools/validate/subreddit Check subreddit existence

validateMedia

ValidateMedia200Response validateMedia(validateMediaRequest)

Validate media URL

Check if a media URL is accessible and return metadata (content type, file size) plus per-platform size limit comparisons. Performs a HEAD request (with GET fallback) to detect content type and size. Rejects private/localhost URLs for SSRF protection. Platform limits are sourced from each platform's actual upload constraints.

Example

// Import classes:
import dev.zernio.ApiClient;
import dev.zernio.ApiException;
import dev.zernio.Configuration;
import dev.zernio.auth.*;
import dev.zernio.models.*;
import dev.zernio.api.ValidateApi;

public class Example {
    public static void main(String[] args) {
        ApiClient defaultClient = Configuration.getDefaultApiClient();
        defaultClient.setBasePath("https://zernio.com/api");
        
        // Configure HTTP bearer authorization: bearerAuth
        HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
        bearerAuth.setBearerToken("BEARER TOKEN");

        ValidateApi apiInstance = new ValidateApi(defaultClient);
        ValidateMediaRequest validateMediaRequest = new ValidateMediaRequest(); // ValidateMediaRequest | 
        try {
            ValidateMedia200Response result = apiInstance.validateMedia(validateMediaRequest);
            System.out.println(result);
        } catch (ApiException e) {
            System.err.println("Exception when calling ValidateApi#validateMedia");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Reason: " + e.getResponseBody());
            System.err.println("Response headers: " + e.getResponseHeaders());
            e.printStackTrace();
        }
    }
}

Parameters

Name Type Description Notes
validateMediaRequest ValidateMediaRequest

Return type

ValidateMedia200Response

Authorization

bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Media validation result -

validateMediaWithHttpInfo

ApiResponse validateMedia validateMediaWithHttpInfo(validateMediaRequest)

Validate media URL

Check if a media URL is accessible and return metadata (content type, file size) plus per-platform size limit comparisons. Performs a HEAD request (with GET fallback) to detect content type and size. Rejects private/localhost URLs for SSRF protection. Platform limits are sourced from each platform's actual upload constraints.

Example

// Import classes:
import dev.zernio.ApiClient;
import dev.zernio.ApiException;
import dev.zernio.ApiResponse;
import dev.zernio.Configuration;
import dev.zernio.auth.*;
import dev.zernio.models.*;
import dev.zernio.api.ValidateApi;

public class Example {
    public static void main(String[] args) {
        ApiClient defaultClient = Configuration.getDefaultApiClient();
        defaultClient.setBasePath("https://zernio.com/api");
        
        // Configure HTTP bearer authorization: bearerAuth
        HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
        bearerAuth.setBearerToken("BEARER TOKEN");

        ValidateApi apiInstance = new ValidateApi(defaultClient);
        ValidateMediaRequest validateMediaRequest = new ValidateMediaRequest(); // ValidateMediaRequest | 
        try {
            ApiResponse<ValidateMedia200Response> response = apiInstance.validateMediaWithHttpInfo(validateMediaRequest);
            System.out.println("Status code: " + response.getStatusCode());
            System.out.println("Response headers: " + response.getHeaders());
            System.out.println("Response body: " + response.getData());
        } catch (ApiException e) {
            System.err.println("Exception when calling ValidateApi#validateMedia");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Response headers: " + e.getResponseHeaders());
            System.err.println("Reason: " + e.getResponseBody());
            e.printStackTrace();
        }
    }
}

Parameters

Name Type Description Notes
validateMediaRequest ValidateMediaRequest

Return type

ApiResponse<ValidateMedia200Response>

Authorization

bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Media validation result -

validatePost

ValidatePost200Response validatePost(validatePostRequest)

Validate post content

Dry-run the full post validation pipeline without publishing. Catches issues like missing media for Instagram/TikTok/YouTube, hashtag limits, invalid thread formats, Facebook Reel requirements, and character limit violations. Accepts the same body as `POST /v1/posts`. Does NOT validate accounts, process media, or track usage. This is content-only validation. Returns errors for failures and warnings for near-limit content (>90% of character limit).

Example

// Import classes:
import dev.zernio.ApiClient;
import dev.zernio.ApiException;
import dev.zernio.Configuration;
import dev.zernio.auth.*;
import dev.zernio.models.*;
import dev.zernio.api.ValidateApi;

public class Example {
    public static void main(String[] args) {
        ApiClient defaultClient = Configuration.getDefaultApiClient();
        defaultClient.setBasePath("https://zernio.com/api");
        
        // Configure HTTP bearer authorization: bearerAuth
        HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
        bearerAuth.setBearerToken("BEARER TOKEN");

        ValidateApi apiInstance = new ValidateApi(defaultClient);
        ValidatePostRequest validatePostRequest = new ValidatePostRequest(); // ValidatePostRequest | 
        try {
            ValidatePost200Response result = apiInstance.validatePost(validatePostRequest);
            System.out.println(result);
        } catch (ApiException e) {
            System.err.println("Exception when calling ValidateApi#validatePost");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Reason: " + e.getResponseBody());
            System.err.println("Response headers: " + e.getResponseHeaders());
            e.printStackTrace();
        }
    }
}

Parameters

Name Type Description Notes
validatePostRequest ValidatePostRequest

Return type

ValidatePost200Response

Authorization

bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Validation result -

validatePostWithHttpInfo

ApiResponse validatePost validatePostWithHttpInfo(validatePostRequest)

Validate post content

Dry-run the full post validation pipeline without publishing. Catches issues like missing media for Instagram/TikTok/YouTube, hashtag limits, invalid thread formats, Facebook Reel requirements, and character limit violations. Accepts the same body as `POST /v1/posts`. Does NOT validate accounts, process media, or track usage. This is content-only validation. Returns errors for failures and warnings for near-limit content (>90% of character limit).

Example

// Import classes:
import dev.zernio.ApiClient;
import dev.zernio.ApiException;
import dev.zernio.ApiResponse;
import dev.zernio.Configuration;
import dev.zernio.auth.*;
import dev.zernio.models.*;
import dev.zernio.api.ValidateApi;

public class Example {
    public static void main(String[] args) {
        ApiClient defaultClient = Configuration.getDefaultApiClient();
        defaultClient.setBasePath("https://zernio.com/api");
        
        // Configure HTTP bearer authorization: bearerAuth
        HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
        bearerAuth.setBearerToken("BEARER TOKEN");

        ValidateApi apiInstance = new ValidateApi(defaultClient);
        ValidatePostRequest validatePostRequest = new ValidatePostRequest(); // ValidatePostRequest | 
        try {
            ApiResponse<ValidatePost200Response> response = apiInstance.validatePostWithHttpInfo(validatePostRequest);
            System.out.println("Status code: " + response.getStatusCode());
            System.out.println("Response headers: " + response.getHeaders());
            System.out.println("Response body: " + response.getData());
        } catch (ApiException e) {
            System.err.println("Exception when calling ValidateApi#validatePost");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Response headers: " + e.getResponseHeaders());
            System.err.println("Reason: " + e.getResponseBody());
            e.printStackTrace();
        }
    }
}

Parameters

Name Type Description Notes
validatePostRequest ValidatePostRequest

Return type

ApiResponse<ValidatePost200Response>

Authorization

bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Validation result -

validatePostLength

ValidatePostLength200Response validatePostLength(validatePostLengthRequest)

Validate post character count

Check weighted character count per platform and whether the text is within each platform's limit. Twitter/X uses weighted counting (URLs = 23 chars via t.co, emojis = 2 chars). All other platforms use plain character length. Returns counts and limits for all 15 supported platform variants.

Example

// Import classes:
import dev.zernio.ApiClient;
import dev.zernio.ApiException;
import dev.zernio.Configuration;
import dev.zernio.auth.*;
import dev.zernio.models.*;
import dev.zernio.api.ValidateApi;

public class Example {
    public static void main(String[] args) {
        ApiClient defaultClient = Configuration.getDefaultApiClient();
        defaultClient.setBasePath("https://zernio.com/api");
        
        // Configure HTTP bearer authorization: bearerAuth
        HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
        bearerAuth.setBearerToken("BEARER TOKEN");

        ValidateApi apiInstance = new ValidateApi(defaultClient);
        ValidatePostLengthRequest validatePostLengthRequest = new ValidatePostLengthRequest(); // ValidatePostLengthRequest | 
        try {
            ValidatePostLength200Response result = apiInstance.validatePostLength(validatePostLengthRequest);
            System.out.println(result);
        } catch (ApiException e) {
            System.err.println("Exception when calling ValidateApi#validatePostLength");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Reason: " + e.getResponseBody());
            System.err.println("Response headers: " + e.getResponseHeaders());
            e.printStackTrace();
        }
    }
}

Parameters

Name Type Description Notes
validatePostLengthRequest ValidatePostLengthRequest

Return type

ValidatePostLength200Response

Authorization

bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Character counts per platform -

validatePostLengthWithHttpInfo

ApiResponse validatePostLength validatePostLengthWithHttpInfo(validatePostLengthRequest)

Validate post character count

Check weighted character count per platform and whether the text is within each platform's limit. Twitter/X uses weighted counting (URLs = 23 chars via t.co, emojis = 2 chars). All other platforms use plain character length. Returns counts and limits for all 15 supported platform variants.

Example

// Import classes:
import dev.zernio.ApiClient;
import dev.zernio.ApiException;
import dev.zernio.ApiResponse;
import dev.zernio.Configuration;
import dev.zernio.auth.*;
import dev.zernio.models.*;
import dev.zernio.api.ValidateApi;

public class Example {
    public static void main(String[] args) {
        ApiClient defaultClient = Configuration.getDefaultApiClient();
        defaultClient.setBasePath("https://zernio.com/api");
        
        // Configure HTTP bearer authorization: bearerAuth
        HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
        bearerAuth.setBearerToken("BEARER TOKEN");

        ValidateApi apiInstance = new ValidateApi(defaultClient);
        ValidatePostLengthRequest validatePostLengthRequest = new ValidatePostLengthRequest(); // ValidatePostLengthRequest | 
        try {
            ApiResponse<ValidatePostLength200Response> response = apiInstance.validatePostLengthWithHttpInfo(validatePostLengthRequest);
            System.out.println("Status code: " + response.getStatusCode());
            System.out.println("Response headers: " + response.getHeaders());
            System.out.println("Response body: " + response.getData());
        } catch (ApiException e) {
            System.err.println("Exception when calling ValidateApi#validatePostLength");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Response headers: " + e.getResponseHeaders());
            System.err.println("Reason: " + e.getResponseBody());
            e.printStackTrace();
        }
    }
}

Parameters

Name Type Description Notes
validatePostLengthRequest ValidatePostLengthRequest

Return type

ApiResponse<ValidatePostLength200Response>

Authorization

bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Character counts per platform -

validateSubreddit

ValidateSubreddit200Response validateSubreddit(name)

Check subreddit existence

Check if a subreddit exists and return basic info (title, subscriber count, NSFW status, post types allowed). Uses Reddit's public JSON API (no Reddit auth needed). Returns `exists: false` for private, banned, or nonexistent subreddits.

Example

// Import classes:
import dev.zernio.ApiClient;
import dev.zernio.ApiException;
import dev.zernio.Configuration;
import dev.zernio.auth.*;
import dev.zernio.models.*;
import dev.zernio.api.ValidateApi;

public class Example {
    public static void main(String[] args) {
        ApiClient defaultClient = Configuration.getDefaultApiClient();
        defaultClient.setBasePath("https://zernio.com/api");
        
        // Configure HTTP bearer authorization: bearerAuth
        HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
        bearerAuth.setBearerToken("BEARER TOKEN");

        ValidateApi apiInstance = new ValidateApi(defaultClient);
        String name = "programming"; // String | Subreddit name (with or without \"r/\" prefix)
        try {
            ValidateSubreddit200Response result = apiInstance.validateSubreddit(name);
            System.out.println(result);
        } catch (ApiException e) {
            System.err.println("Exception when calling ValidateApi#validateSubreddit");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Reason: " + e.getResponseBody());
            System.err.println("Response headers: " + e.getResponseHeaders());
            e.printStackTrace();
        }
    }
}

Parameters

Name Type Description Notes
name String Subreddit name (with or without &quot;r/&quot; prefix)

Return type

ValidateSubreddit200Response

Authorization

bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Subreddit lookup result -

validateSubredditWithHttpInfo

ApiResponse validateSubreddit validateSubredditWithHttpInfo(name)

Check subreddit existence

Check if a subreddit exists and return basic info (title, subscriber count, NSFW status, post types allowed). Uses Reddit's public JSON API (no Reddit auth needed). Returns `exists: false` for private, banned, or nonexistent subreddits.

Example

// Import classes:
import dev.zernio.ApiClient;
import dev.zernio.ApiException;
import dev.zernio.ApiResponse;
import dev.zernio.Configuration;
import dev.zernio.auth.*;
import dev.zernio.models.*;
import dev.zernio.api.ValidateApi;

public class Example {
    public static void main(String[] args) {
        ApiClient defaultClient = Configuration.getDefaultApiClient();
        defaultClient.setBasePath("https://zernio.com/api");
        
        // Configure HTTP bearer authorization: bearerAuth
        HttpBearerAuth bearerAuth = (HttpBearerAuth) defaultClient.getAuthentication("bearerAuth");
        bearerAuth.setBearerToken("BEARER TOKEN");

        ValidateApi apiInstance = new ValidateApi(defaultClient);
        String name = "programming"; // String | Subreddit name (with or without \"r/\" prefix)
        try {
            ApiResponse<ValidateSubreddit200Response> response = apiInstance.validateSubredditWithHttpInfo(name);
            System.out.println("Status code: " + response.getStatusCode());
            System.out.println("Response headers: " + response.getHeaders());
            System.out.println("Response body: " + response.getData());
        } catch (ApiException e) {
            System.err.println("Exception when calling ValidateApi#validateSubreddit");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Response headers: " + e.getResponseHeaders());
            System.err.println("Reason: " + e.getResponseBody());
            e.printStackTrace();
        }
    }
}

Parameters

Name Type Description Notes
name String Subreddit name (with or without &quot;r/&quot; prefix)

Return type

ApiResponse<ValidateSubreddit200Response>

Authorization

bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Subreddit lookup result -