strapi-sdk-ts
v1.0.2
Published
A simple TypeScript client for interacting with Strapi APIs, built using Axios. This package allows you to easily fetch, create, update, and delete resources from a Strapi backend. It also supports user authentication.
Downloads
17
Maintainers
Readme
Strapi SDK TS
A simple TypeScript client for interacting with Strapi APIs, built using Axios. This package allows you to easily fetch, create, update, and delete resources from a Strapi backend. It also supports user authentication.
Table of Contents
Installation
Install the package using npm or yarn:
npm install strapi-sdk-ts
To use the Strapi client, initialize an instance by providing optional configurations such as baseUrl, apiKey, or axiosOptions
import Strapi from 'strapi-sdk-ts';
const strapi = new Strapi({
baseUrl: 'https://your-strapi-instance.com/api', // Optional, default is 'http://localhost:1337/api'
// the base url should be added without the /api it will be appended automatically
apiKey: 'your-api-key', // Optional API Key for authentication
axiosOptions: {timeout: 5000} // Optional Axios configurations
});
Methods
strapi.findOne<User>('users', 1)
.then(response => console.log(response.data))
.catch(error => console.error(error));
resource
: The endpoint or resource name.id
: The unique identifier of the resource.
strapi.findAll<User>('users')
.then(response => console.log(response.data))
.catch(error => console.error(error));
resource
: The endpoint or resource name.
strapi.create<User>('users', {name: 'John Doe', email: '[email protected]'})
.then(response => console.log(response.data))
.catch(error => console.error(error));
resource
: The endpoint or resource name.body
: The data to be sent to the server.
strapi.update<User>('users', 1, {email: '[email protected]'})
.then(response => console.log(response.data))
.catch(error => console.error(error));
resource
: The endpoint or resource name.id
: The unique identifier of the resource.updatedData
: The new data for the resource.
strapi.delete('users', 1)
.then(response => console.log(response.deleted))
.catch(error => console.error(error));
resource
: The endpoint or resource name.id
: The unique identifier of the resource.
strapi.login({identifier: '[email protected]', password: 'password123'})
.then(response => console.log(response.data))
.catch(error => console.error(error));
StrapiClientArgs
: Arguments for initializing the Strapi client, such as:baseUrl
: The base URL of the Strapi API (optional).apiKey
: The API key for authentication (optional).axiosOptions
: Additional Axios configurations (optional) check axios library for more details.
StrapiResponse<T>
: The response object returned by most methods, containing:data
: The response data.status
: The HTTP status code.
StrapiDeleteResponse
: The response object for thedelete
method, containing:deleted
: A boolean indicating if the deletion was successful.status
: The HTTP status code.
StrapiDocument
: It contians the default column types provided by strapi.Metadata
: It containst the pagination type which would be returned using findAll method.
License
This project is licensed under the MIT License. See the LICENSE file for details.