sain-api-context

1.0.42 • Public • Published

Sain api context Package

The sain-api-context package provides a convenient way to interact with APIs using context-based authentication and session management.

Installation

You can install the package via npm:

npm install sain-api-context

Usage

To use the SainApiContext class, you need to instantiate it with the required parameters:

const ApiContext = require('sain-api-context');

// Instantiate ApiContext with required parameters
const apiContext = new ApiContext(
    {   
      endpoint: process.env.API_ENDPOINT,
      apiKey: process.env.SANDBOX_API_KEY,
      publicKey:process.env.PUBLIC_KEY
    },
    {encryptionAlgorithm:"RSAES-PKCS1-V1_5"} //its also a default
);

Methods

setSessionID(sessionUrl) This method fetch and sets the session ID for the API context. It requires the API key to be set beforehand.

try {
  if(apiContext.setSessionID('/getSession/')){
  console.log('Session ID set successfully:');
  };
} catch (error) {
  console.error('Error setting session ID:', error);
}

request(url, method, data) This method makes a request to the API using the specified URL, HTTP method, and data payload.

GET

try {
  const response = await apiContext.request('/api/resource', 'GET');
  console.log('Response:', response.data);
} catch (error) {
  console.error('Error making request:', error);
}

POST

try {
  const response = await apiContext.request('/api/resource', 'POST', payload);
  console.log('Response:', response.data);
} catch (error) {
  console.error('Error making request:', error);
}

PUT

try {
  const response = await apiContext.request('/api/resource', 'PUT', payload);
  console.log('Response:', response.data);
} catch (error) {
  console.error('Error making request:', error);
}

Destroy Session

try {
  await apiContext.destroySession();
} catch (error) {
  console.error('Error destroying session:', error);
}

License

This package is open source and available under the MIT License

Package Sidebar

Install

npm i sain-api-context

Weekly Downloads

10

Version

1.0.42

License

ISC

Unpacked Size

7.38 kB

Total Files

3

Last publish

Collaborators

  • jerubaalking