> For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

# getBasicAuthCredentials

> Retrieve the HTTP Basic Auth credentials for the service.

[ref-swmlservice]: /docs/server-sdks/reference/typescript/agents/swml-service

Retrieve the current HTTP Basic Auth credentials used by this service. Every
[`SWMLService`][ref-swmlservice] instance has auth credentials -- either
explicitly provided in the constructor, read from environment variables, or
auto-generated at startup.

## **Parameters**

<ParamField path="includeSource" type="boolean" default="false" toc={true}>
  When `true`, returns a 3-tuple that includes the credential source as the
  third element. The source is one of:

  * `"provided"` -- credentials were passed through constructor options
  * `"environment"` -- credentials came from `SWML_BASIC_AUTH_USER` and `SWML_BASIC_AUTH_PASSWORD` environment variables
  * `"auto-generated"` -- credentials were randomly generated at startup
</ParamField>

## **Returns**

`[string, string]` -- A `[username, password]` tuple when `includeSource` is
`false` or omitted.

`[string, string, 'provided' | 'environment' | 'auto-generated']` -- A
`[username, password, source]` tuple when `includeSource` is `true`.

## **Example**

```typescript {6,10}
import { SWMLService } from '@signalwire/sdk';

const service = new SWMLService({ name: 'my-service' });

// Get credentials
const [username, password] = service.getBasicAuthCredentials();
console.log(`Auth: ${username}:${password}`);

// Get credentials with source information
const [user, pass, source] = service.getBasicAuthCredentials(true);
console.log(`Auth source: ${source}`); // "provided", "environment", or "auto-generated"
```