0.1.1 • Published 1 year ago

@noxcode/lib-api v0.1.1

Weekly downloads
-
License
ISC
Repository
github
Last release
1 year ago

NoxCodeServices

This is a TypeScript class providing methods to interact with various services via HTTP requests. It utilizes the Fetch API to communicate with the backend server.

Usage

To use this class, you must instantiate an object of NoxCodeServices class and call its methods.

import { NoxCodeServices } from './NoxCodeServices';

const service = new NoxCodeServices();

// Example usage:
service.sendEmail({
    to: 'recipient@example.com',
    from: 'sender@example.com',
    subject: 'Test Email',
    content: 'This is a test email.'
})
    .then(response => {
        console.log(response);
    })
    .catch(error => {
        console.error(error);
    });

Methods

sendEmail(request: SendEmailRequest): Promise<ServiceResponse>

Sends an email with the specified details.

  • request: Object containing the email details (to, from, subject, content).

fileUpload(file: File): Promise<ServiceResponse>

Uploads a file to the server.

  • file: File object to upload.

deleteFile(file: string): Promise<ServiceResponse>

Deletes a file from the server.

  • file: File path to delete.

mailchimpSubscribe(email: string): Promise<ServiceResponse>

Subscribes an email to the Mailchimp service.

  • email: Email to subscribe.

mailchimpUnsubscribe(email: string): Promise<ServiceResponse>

Unsubscribes an email from the Mailchimp service.

  • email: Email to unsubscribe.

bashipmentCalculate(data: ShipmentCalculate): Promise<ServiceResponse>

Calculates the shipment details based on the provided data.

  • data: Object containing shipment data (cepOrigin, cepDestination, weight, height, width, length).

getStreetByCep(cep: string): Promise<ServiceResponse>

Retrieves the street information based on the provided CEP (postal code).

  • cep: CEP (postal code) to retrieve street information for.

getCepByAddress(address: Address): Promise<ServiceResponse>

Retrieves the CEP (postal code) based on the provided address information.

  • address: Object containing address information (uf, city, street).

trackPackage(trackingCode: string): Promise<ServiceResponse>

Tracks a package based on the provided tracking code.

  • trackingCode: Tracking code of the package.

sendSMS(phone: string, message: string): Promise<ServiceResponse>

Sends an SMS message to the specified phone number.

  • phone: Phone number to send the SMS to.
  • message: Message content.

sendWhatsApp(data: WhatsappSend): Promise<ServiceResponse>

Sends a WhatsApp message with the specified details.

  • data: Object containing WhatsApp message details (phone, template, variables, title).

generateOTP(data: CreateOTP): Promise<ServiceResponse>

Generates a One-Time Password (OTP) based on the provided data.

  • data: Object containing OTP generation data (key, digits, expiry, type).

verifyOTP(data: VerifyOTP): Promise<ServiceResponse>

Verifies a One-Time Password (OTP) based on the provided data.

  • data: Object containing OTP verification data (key, otp, type).

Dependencies

  • fetch: This class depends on the Fetch API for making HTTP requests.

Constants

  • BASE_URL: Base URL for API requests.
  • xApiKey: API key header.
  • xProjectName: Project name header.
  • xProjectProductionMode: Production mode header.

Contributing

Feel free to contribute by opening issues or submitting pull requests on GitHub.

License

This project is licensed under the MIT License. See the LICENSE file for details.

0.1.1

1 year ago

0.1.0

1 year ago