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

# SIP credentials

> Use SIP Credentials and per-resource SIP Addresses to register SIP devices, route inbound SIP to your SignalWire resources, and control outbound calls.

SignalWire's platform handles SIP with two complementary features:

* A **SIP Credential** is a [SignalWire Resource](/docs/platform/resources) that represents a SIP
  identity and controls how that identity places **outbound** calls.
* A **Resource SIP Address** is a unique SIP address you can assign to any Resource so that all **inbound** SIP calls are handled by that resource.

Used together, they provide a way to send SIP traffic to SignalWire and run your own logic on it.

## SIP Credentials

A SIP Credential gives you a SIP address of the form `sip:username@your-space.sip.signalwire.com`
and a password that SIP devices use to register with SignalWire.

Create a SIP Credential under **Resources** in your [SignalWire Dashboard](https://my.signalwire.com/resources/sips), or programmatically with the
[Create a SIP Credential](/docs/apis/rest/sip-credentials/create-sip-credential) REST API.
You choose its **username** and a **password** for registration.

For a full walkthrough of the security, codec, and cipher settings, see the [SIP trunking guide](/docs/platform/voice/sip/trunking).

### Controlling outbound calls

A SIP Credential's **call handler** controls how it places **outbound** calls:

* **default** — use the outbound policy from your SIP Profile settings, for centralized management
  across endpoints.
* **passthrough** — allow the endpoint to dial PSTN phone numbers.
* **block-pstn** — block the endpoint from dialing PSTN phone numbers.
* **resource** — dial a specified resource and execute its instructions, for custom outbound
  workflows.

## Resource SIP Addresses

To run your logic on **inbound** SIP calls, give the resource that holds that logic its own SIP
Address. Inbound SIP traffic sent to that address is handled by the resource.
You can assign a SIP Address to resources such as:

* **AI Agent** — connect the caller to a SignalWire [AI Agent](/docs/platform/ai).
* **SWML Script** — execute a [SWML](/docs/swml) script.
* **Subscriber** — route the call to a [subscriber](/docs/platform/subscribers).
* **Call Flow** — hand the call to a flow built in the [Call Flow Builder](/docs/call-flow-builder).
* **Video room** — connect the caller straight into a SignalWire [video room](/docs/platform/video).

To add a SIP Address to a resource from your [SignalWire Dashboard](https://my.signalwire.com/resources):

### Open the resource

Open the resource you'd like to assign a SIP Address to and navigate to the **Addresses & Phone Numbers** tab.

### Add a SIP Address

Once on that tab,  click **+ Add**, then click the **SIP Address** option.

### Configure the address

On the **New SIP Address** page that appears, fill out the **Domain** and **Display Name** you prefer, then click **Create**.

## Inbound BYOC

To send traffic from your own carrier to SignalWire (inbound BYOC), assign a SIP Address to the
resource that should handle the calls. See the
[Bring your own carrier](/docs/platform/voice/sip/bring-your-own-carrier) guide for the full flow.

For more on the resources you can route calls to, see the [SIP overview](/docs/platform/voice/sip)
and [Call Fabric Resources](/docs/platform/resources).