ArchitectureAuthentication

Basic

Basic authentication provides secure access to external services using a username and password.

Basic Usage

src/index.ts
import * as i from '@xentom/integration-framework';

export default i.integration({
  auth: i.auth.basic(),

  nodes: {
    getUser: i.nodes.callable({
      inputs: {
        id: i.pins.data({
          control: i.controls.text({
            label: 'User ID',
          }),
        }),
      },
      outputs: {
        user: i.pins.data(),
      },
      async run({ auth, inputs, next }) {
        const basicAuth = Buffer.from(`${auth.username}:${auth.password}`).toString('base64');
        const response = await fetch(`https://api.example.com/users/${inputs.id}`, {
          headers: {
            Authorization: `Basic ${basicAuth}`,
          },
        });

        return next({
          user: await response.json(),
        });
      },
    }),
  },
});

Configuration Options

Prop

Type

On this page