1.4.18 • Published 6 months ago

uber-direct-sdk v1.4.18

Weekly downloads
-
License
ISC
Repository
github
Last release
6 months ago

Uber Direct SDK README.md

The Uber Direct SDK allows you to integrate your own apps and services with Uber Direct order delivery. This SDK is built using TypeScript, which provides better type checking and helps you avoid runtime errors.

Installation

npm install uber-direct-sdk

Usage

Authentication

import {UberDirectAuth} from 'uber-direct-sdk';

const auth = new UberDirectAuth({
    clientId: 'CLIENT_ID',
    clientSecret: 'CLIENT_SECRET',
    customerId: 'CUSTOMER_ID',
});

const token = await auth.getAccessToken();

DaaS

The DaaS class contains methods for creating, listing, updating, and canceling deliveries.

import { UberDirectDaaS } from 'uber-direct-sdk';

const daaS = new UberDirectDaaS(auth);

const quote = await daaS.quote({
 ...
});

const delivery = await daaS.createDelivery(quote.quote_id);

const deliveryList = await daaS.listDeliveries();

const deliveryInfo = await daaS.getDeliveryInfo(delivery.delivery_id);

await daaS.updateDelivery(delivery.delivery_id, {
    current_status: 'pickup',
});

await daaS.cancelDelivery(delivery.delivery_id);

Webhooks

The UberDirectWebhook class allows you to handle webhook events from Uber Direct.

import { UberDirectWebhook } from 'uber-direct-sdk';

const uberDirectWebhook = new UberDirectWebhook('SECRET');

function controler(req, res) {
    const result = uberDirectWebhook.handleWebhook(req.body, req.headers);
}

JSON Request Verification Error Handling

The SDK uses zod for verifying all JSON requests. This helps ensure that the data being sent to the API conforms to the expected schema and reduces the likelihood of errors occurring due to malformed requests.

You can enable error throwing for each class by setting the setEnableThrow property to true. This will cause the SDK to throw an error if it encounters a type error when validating JSON requests. For example, to enable error throwing for a UberDirectAuth class:

const auth = new UberDirectAuth({
    clientId: 'CLIENT_ID',
    clientSecret: 'CLIENT_SECRET',
    customerId: 'CUSTOMER_ID',
});
auth.setEnableThrow(true);

Setting a Callback for Handling Type Errors

You can set a callback function to handle type errors that occur during JSON request validation. This can be useful for logging or custom error handling.

To set a callback function for a class, use the setThrowCallback method and pass in the callback function as an argument.

For example, to set a callback function for a UberDirectDaaS class:

const daaS = new UberDirectDaaS(auth);
daaS.setThrowCallback((error) => {
    console.error(`Type error occurred: ${ error.message }`);
    // Perform additional error handling logic here
});
1.4.18

6 months ago

1.4.15

12 months ago

1.4.17

10 months ago

1.4.16

12 months ago

1.4.14

12 months ago

1.4.13

12 months ago

1.4.12

12 months ago

1.4.10

12 months ago

1.4.9

12 months ago

1.4.8

12 months ago

1.4.7

12 months ago

1.4.6

12 months ago

1.4.5

12 months ago

1.4.4

12 months ago

1.4.3

12 months ago

1.4.2

12 months ago

1.4.1

12 months ago

1.4.0

12 months ago

1.3.5

1 year ago

1.3.4

1 year ago

1.3.3

1 year ago

1.3.2

1 year ago

1.3.1

1 year ago

1.3.0

1 year ago

1.2.5

1 year ago

1.2.4

1 year ago

1.2.3

1 year ago

1.2.2

1 year ago

1.2.1

1 year ago

1.2.0

1 year ago

1.1.0

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago