mapnests-api-getway-sdk
v1.0.9
Published
NPM SDK for API Gateway with custom Axios interceptors
Downloads
29
Maintainers
Readme
Readme Top
A secure and efficient TS SDK for the Mapnests API GetWay SDK Platfrom, enabling powerful GET, POST, PUT, PATCH, DELETE http mehtod.
Table of Contents
Installation
npm install mapnests-api-getway-sdk"Import into your project:
import { Client, Mode } from "mapnests-api-getway-sdk"";Quick Start
const runGetExample = async () => {
try {
const apiClient = createApiClient(
process.env.BASE_URL || '', // e.g., 'https://example.com'
process.env.ORIGIN || '', // [optional] e.g, please provide the origin
process.env.CLIENT_REQUEST_HEADER, // [optional] please provide the request header key
process.env.CLIENT_RESPONSE_HEADER // [optional] please provide the response header key
);
console.log('Making GET request to foodibd API...');
const getResponse = await apiClient.get(
'/your-get-url?exmaple?id=1',
{
headers: {
'x-device-id': '12345',
'x-trace-id': 'abcde'
}
}
);
console.log('GET Response:', getResponse.data);
} catch (error) {
if (axios.isAxiosError(error)) {
console.error('\nError:', error.response ? error.response.data : error.message);
} else {
console.error('\nAn unexpected error occurred:', error);
}
}
};Usage Examples
GET Request Example
import createApiClient from 'mapnests-api-getway-sdk';
import axios from 'axios';
import * as dotenv from 'dotenv';
dotenv.config();
const runGetExample = async () => {
try {
const apiClient = createApiClient(
process.env.BASE_URL || '', // e.g., 'https://example.com'
process.env.ORIGIN || '', // [optional] e.g, please provide the origin
process.env.CLIENT_REQUEST_HEADER, // [optional] please provide the request header key
process.env.CLIENT_RESPONSE_HEADER // [optional] please provide the response header key
);
console.log('Making GET request to foodibd API...');
const getResponse = await apiClient.get(
'/your-get-url',
{
headers: {
'x-device-id': '12345',
'x-trace-id': 'abcde'
}
}
);
console.log('GET Response:', getResponse.data);
} catch (error) {
if (axios.isAxiosError(error)) {
console.error('\nError:', error.response ? error.response.data : error.message);
} else {
console.error('\nAn unexpected error occurred:', error);
}
}
};
runGetExample();POST Request Example
import createApiClient from 'mapnests-api-getway-sdk';
import axios from 'axios';
import * as dotenv from 'dotenv';
dotenv.config();
const runPostExample = async () => {
try {
const apiClient = createApiClient(
process.env.BASE_URL || '', // e.g., 'https://example.com'
process.env.ORIGIN || '', // [optional] e.g, please provide the origin
process.env.CLIENT_REQUEST_HEADER, // [optional] please provide the request header key
process.env.CLIENT_RESPONSE_HEADER // [optional] please provide the response header key
);
console.log('Making POST request to foodibd API...');
const postResponse = await apiClient.post(
'/your-post-url',
{
data1: 'value1',
data2: 'value1'
},
{
headers: {
'x-device-id': '12345',
'x-trace-id': 'abcde'
}
}
);
console.log('POST Response:', postResponse.data);
} catch (error) {
if (axios.isAxiosError(error)) {
console.error('\nError:', error.response ? error.response.data : error.message);
} else {
console.error('\nAn unexpected error occurred:', error);
}
}
};
runPostExample();License
This project is licensed under the MIT License.
