@wral/sdk-publisher
v0.6.0
Published
A Software Development Kit for working with Studio Publisher
Downloads
26
Keywords
Readme
Publisher SDK
The Publisher SDK
is a JavaScript SDK (Software Development Kit) designed to interact with a Publisher API. This SDK provides a method to make API calls to the Publisher API using REST URLs directly.
Installation
You can install the Publisher SDK
package via npm:
npm install publisher-sdk
Usage
To use the Publisher SDK
, you first need to import it into your JavaScript or TypeScript project:
import { createClient } from 'publisher-sdk/v1';
Then, you can create a client instance with your configuration:
const config = {
apiKey: 'YOUR_API_KEY',
baseUrl: 'YOUR_BASE_URL', // Base URL of your Publisher API
};
const client = createClient(config);
After creating the client instance, you can use its method api()
to make API calls to the Publisher API. Here's an example:
// Make API call using api() method
const response = await client.api('/endpoint', { method: 'GET' });
API
createClient(config)
Creates a new client instance with the provided configuration.
config
: An object containing API configuration parameters:apiKey
: The API key for authentication.baseUrl
: The base URL of the Publisher API.
Returns a client instance with a method api()
for making API calls.
Methods
api(path, options)
: Makes an API call to the Publisher API using the provided path and optionspath
: The path to the API endpointoptions
: The fetch options (e.g., method, headers, body)
listSites()
: Lists all sites with publicationsgetSite({ id })
: Gets a specific site by idputSite({ id, ...data })
: Upserts a sitedeleteSite({ id })
: Deletes a site by idtimeline({ site, path })
: Gets the timeline of publications for a site and path.getPublication({ site, path, date })
: Gets a publication as it was sent to the API at the exact path specifiedcreatePublication({ site, path, date, content, template, metadata })
: Creates a new publicationresolvePublication({ site, path, date })
: Resolves a publication to an object with content, template, and metadatasearchPublications({ query })
: Searches for publications that match the lucene query. Fetch next set of results usingfetchNext()
in the resolved object.getDefaultPublication({ site, date })
: Gets the default publication for a site and optional date.putDefaultPublication({ site, date, content, template, metadata })
: Sets the default publication for a site and optional date.
Methods return a promise that resolves with the response from the API.