Docs Look up a SIP parameter
Look up a SIP parameter
On this page
This page lists every SIP URI parameter, header-field parameter and option tag in the IANA registry. For each entry it gives:
- the RFC that defines it,
- whether sipnab parses it today.
This page comes from the IANA registries directly. sip-response-codes.md and sip-methods.md come from them the same way. So the tables move when IANA does, not when someone remembers.
What sipnab parses
Three parameters, deliberately stated conservatively:
branch(topVia)tag(From/To)expires(Contactparameter, falling back to theExpiresheader)
The expires parameter on Subscription-State is a different registration.
sipnab does not read it.
- A
NOTIFYcontributes itsSubscription-Statevalue token:active,pending,terminated. - The parameters after the
;go unread.
An earlier draft of this page computed the column by grepping the source for each parameter name. That reported 41 of 204.
- That number was wrong and flattering.
m,code,algandcountall appear in unrelated code.- A substring match is not evidence of parsing.
- The list below names only what traces to an actual extraction site. So it understates rather than overstates.
sipnab carries everything else in these tables verbatim.
- sipnab preserves the full header.
- So an unparsed parameter is visible in
get_message, the TUI detail pane and any export. - Unparsed means “not given a named accessor or a filter field”. It does not mean “discarded”.
SIP/SIPS URI parameters (35)
Parameters after a ; in a SIP URI, e.g. sip:alice@example.com;transport=tcp.
| Parameter | Predefined values | Defined by | sipnab parses |
|---|---|---|---|
aai | No | RFC 5552 | — |
bnc | No | RFC 6140 | — |
cause | Yes | RFC 4458, RFC 8119 | — |
ccxml | No | RFC 5552 | — |
comp | Yes | RFC 3486 | — |
content-type | No | RFC 4240 | — |
delay | No | RFC 4240 | — |
duration | No | RFC 4240 | — |
extension | No | RFC 4240 | — |
gr | No | RFC 5627 | — |
iotl | Yes | RFC 7549 | — |
locale | No | RFC 4240 | — |
lr | No | RFC 3261 | — |
m | Yes | RFC 6910 | — |
maddr | No | RFC 3261 | — |
maxage | No | RFC 5552 | — |
maxstale | No | RFC 5552 | — |
method | “get” / “post” | RFC 5552 | — |
method | Yes | RFC 3261 | — |
ob | No | RFC 5626 | — |
param[n] | No | RFC 4240 | — |
play | No | RFC 4240 | — |
pn-param | No | RFC 8599 | — |
pn-prid | No | RFC 8599 | — |
pn-provider | No | RFC 8599 | — |
pn-purr | No | RFC 8599 | — |
postbody | No | RFC 5552 | — |
repeat | No | RFC 4240 | — |
sg | No | RFC 6140 | — |
sigcomp-id | No | RFC 5049 | — |
target | No | RFC 4458 | — |
transport | Yes | RFC 3261, RFC 7118 | — |
ttl | No | RFC 3261 | — |
user | Yes | RFC 3261, RFC 4967 | — |
voicexml | No | RFC 4240 | — |
Header field parameters (201)
Parameters attached to a specific header field.
- The same name can mean different things on different headers.
- That is why the header is part of the registration.
| Header field | Parameter | Predefined values | Defined by | sipnab parses |
|---|---|---|---|---|
Accept | q | No | RFC 3261 | — |
Accept-Encoding | q | No | RFC 3261 | — |
Accept-Language | q | No | RFC 3261 | — |
Alert-Info | appearance | No | RFC 7463 | — |
AlertMsg-Error | code | no | RFC 8876 | — |
Answer-Mode | require | No | RFC 5373 | — |
Authentication-Info | cnonce | No | RFC 3261 | — |
Authentication-Info | nc | No | RFC 3261 | — |
Authentication-Info | nextnonce | No | RFC 3261 | — |
Authentication-Info | qop | Yes | RFC 3261 | — |
Authentication-Info | rspauth | No | RFC 3261 | — |
Authorization | algorithm | Yes | RFC 3261, RFC 3310 | — |
Authorization | auts | No | RFC 3310 | — |
Authorization | cnonce | No | RFC 3261 | — |
Authorization | nc | No | RFC 3261 | — |
Authorization | nonce | No | RFC 3261 | — |
Authorization | opaque | No | RFC 3261 | — |
Authorization | qop | Yes | RFC 3261 | — |
Authorization | realm | No | RFC 3261 | — |
Authorization | response | No | RFC 3261 | — |
Authorization | uri | No | RFC 3261 | — |
Authorization | username | No | RFC 3261 | — |
Call-Info | call-reason | No | RFC 9796 | — |
Call-Info | integrity | No | RFC 9796 | — |
Call-Info | m | Yes | RFC 6910 | — |
Call-Info | purpose | Yes | RFC 3261, RFC 5367, RFC 6910, RFC 6993, RFC 7082, RFC 7852, RFC 8688, RFC 9248, RFC 9796 | — |
Call-Info | verified | Yes | RFC 9796 | — |
Contact | expires | No | RFC 3261 | yes |
Contact | mp | No | RFC 7044 | — |
Contact | np | No | RFC 7044 | — |
Contact | pub-gruu | No | RFC 5627 | — |
Contact | q | No | RFC 3261 | — |
Contact | rc | No | RFC 7044 | — |
Contact | reg-id | No | RFC 5626 | — |
Contact | temp-gruu | No | RFC 5627 | — |
Contact | temp-gruu-cookie | No | RFC 6140 | — |
Content-Disposition | handling | Yes | RFC 3204, RFC 3261, RFC 3459, RFC 5621 | — |
Event | adaptive-min-rate | No | RFC 6446 | — |
Event | body | Yes | RFC 5989 | — |
Event | call-id | No | RFC 4235 | — |
Event | effective-by | No | RFC 6080 | — |
Event | from-tag | No | RFC 4235 | — |
Event | id | No | RFC 6665 | — |
Event | include-session-description | No | RFC 4235 | — |
Event | max-rate | No | RFC 6446 | — |
Event | min-rate | No | RFC 6446 | — |
Event | model | No | RFC 6080 | — |
Event | profile-type | Yes | RFC 6080 | — |
Event | shared | No | RFC 7463 | — |
Event | to-tag | No | RFC 4235 | — |
Event | vendor | No | RFC 6080 | — |
Event | version | No | RFC 6080 | — |
Feature-Caps | fcap-name [7] | No | RFC 6809 | — |
From | tag | No | RFC 3261 | yes |
Geolocation | loc-src | No | RFC 8787 | — |
Geolocation-Error | code | Yes | RFC 6442 | — |
History-Info | mp | No | RFC 7044 | — |
History-Info | np | No | RFC 7044 | — |
History-Info | rc | No | RFC 7044 | — |
P-Access-Network-Info | cgi-3gpp | No | RFC 7315 | — |
P-Access-Network-Info | ci-3gpp2 | No | RFC 7315 | — |
P-Access-Network-Info | ci-3gpp2-femto | No | RFC 7315 | — |
P-Access-Network-Info | dsl-location | No | RFC 7315 | — |
P-Access-Network-Info | dvb-rcs2-node-id | No | RFC 7315 | — |
P-Access-Network-Info | eth-location | No | RFC 7315 | — |
P-Access-Network-Info | fiber-location | No | RFC 7315 | — |
P-Access-Network-Info | gstn-location | No | RFC 7315 | — |
P-Access-Network-Info | i-wlan-node-id | No | RFC 7315 | — |
P-Access-Network-Info | local-time-zone | No | RFC 7315 | — |
P-Access-Network-Info | operator-specific-GI | No | RFC 7315 | — |
P-Access-Network-Info | utran-cell-id-3gpp | No | RFC 7315 | — |
P-Access-Network-Info | utran-sai-3gpp | No | RFC 7315 | — |
P-Charging-Function-Addresses | ccf | No | RFC 7315 | — |
P-Charging-Function-Addresses | ccf-2 | No | RFC 7315 | — |
P-Charging-Function-Addresses | ecf | No | RFC 7315 | — |
P-Charging-Function-Addresses | ecf-2 | No | RFC 7315 | — |
P-Charging-Vector | icid-generated-at | No | RFC 7315 | — |
P-Charging-Vector | icid-value | No | RFC 7315 | — |
P-Charging-Vector | orig-ioi | No | RFC 7315 | — |
P-Charging-Vector | related-icid | No | RFC 7315 | — |
P-Charging-Vector | related-icid-generated-at | No | RFC 7315 | — |
P-Charging-Vector | term-ioi | No | RFC 7315 | — |
P-Charging-Vector | transit-ioi | No | RFC 7315 | — |
P-DCS-Billing-Info | called | No | RFC 5503 | — |
P-DCS-Billing-Info | calling | No | RFC 5503 | — |
P-DCS-Billing-Info | charge | No | RFC 5503 | — |
P-DCS-Billing-Info | jip | No | RFC 5503 | — |
P-DCS-Billing-Info | locroute | No | RFC 5503 | — |
P-DCS-Billing-Info | rksgroup | No | RFC 5503 | — |
P-DCS-Billing-Info | routing | No | RFC 5503 | — |
P-DCS-LAES | bcid | No | RFC 5503 | — |
P-DCS-LAES | cccid | No | RFC 5503 | — |
P-DCS-LAES | content | No | RFC 5503 | — |
P-DCS-LAES | key (OBSOLETED) | No | RFC 3603, RFC 5503 | — |
P-DCS-Redirect | count | No | RFC 5503 | — |
P-DCS-Redirect | redirector-uri | No | RFC 5503 | — |
P-DCS-Trace-Party-ID | timestamp | No | RFC 5503 | — |
P-Refused-URI-List | members | No | RFC 5318 | — |
P-Served-User | orig-cdiv | No | RFC 8498 | — |
P-Served-User | regstate | Yes | RFC 5502 | — |
P-Served-User | sescase | Yes | RFC 5502 | — |
Policy-Contact | non-cacheable | Yes | RFC 6794 | — |
Priv-Answer-Mode | require | No | RFC 5373 | — |
Proxy-Authenticate | algorithm | Yes | RFC 3261, RFC 3310 | — |
Proxy-Authenticate | authz_server | No | RFC 8898 | — |
Proxy-Authenticate | domain | No | RFC 3261 | — |
Proxy-Authenticate | error | No | RFC 8898 | — |
Proxy-Authenticate | nonce | No | RFC 3261 | — |
Proxy-Authenticate | opaque | No | RFC 3261 | — |
Proxy-Authenticate | qop | Yes | RFC 3261 | — |
Proxy-Authenticate | realm | No | RFC 3261 | — |
Proxy-Authenticate | scope | No | RFC 8898 | — |
Proxy-Authenticate | stale | Yes | RFC 3261 | — |
Proxy-Authorization | algorithm | Yes | RFC 3261, RFC 3310 | — |
Proxy-Authorization | auts | No | RFC 3310 | — |
Proxy-Authorization | cnonce | No | RFC 3261 | — |
Proxy-Authorization | nc | No | RFC 3261 | — |
Proxy-Authorization | nonce | No | RFC 3261 | — |
Proxy-Authorization | opaque | No | RFC 3261 | — |
Proxy-Authorization | qop | Yes | RFC 3261 | — |
Proxy-Authorization | realm | No | RFC 3261 | — |
Proxy-Authorization | response | No | RFC 3261 | — |
Proxy-Authorization | uri | No | RFC 3261 | — |
Proxy-Authorization | username | No | RFC 3261 | — |
Reason | cause | Yes | RFC 3326 | — |
Reason | location | Yes | RFC 8606 | — |
Reason | ppi | No | RFC 9410 | — |
Reason | text | No | RFC 3326 | — |
Retry-After | duration | No | RFC 3261 | — |
Security-Client | alg | Yes | RFC 3329 | — |
Security-Client | d-alg | Yes | RFC 3329 | — |
Security-Client | d-qop | Yes | RFC 3329 | — |
Security-Client | d-ver | No | RFC 3329 | — |
Security-Client | ealg | Yes | RFC 3329 | — |
Security-Client | mod | Yes | RFC 3329 | — |
Security-Client | port1 | No | RFC 3329 | — |
Security-Client | port2 | No | RFC 3329 | — |
Security-Client | prot | Yes | RFC 3329 | — |
Security-Client | q | No | RFC 3329 | — |
Security-Client | spi | No | RFC 3329 | — |
Security-Server | alg | Yes | RFC 3329 | — |
Security-Server | d-alg | Yes | RFC 3329 | — |
Security-Server | d-qop | Yes | RFC 3329 | — |
Security-Server | d-ver | No | RFC 3329 | — |
Security-Server | ealg | Yes | RFC 3329 | — |
Security-Server | mod | Yes | RFC 3329 | — |
Security-Server | port1 | No | RFC 3329 | — |
Security-Server | port2 | No | RFC 3329 | — |
Security-Server | prot | Yes | RFC 3329 | — |
Security-Server | q | No | RFC 3329 | — |
Security-Server | spi | No | RFC 3329 | — |
Security-Verify | alg | Yes | RFC 3329 | — |
Security-Verify | d-alg | Yes | RFC 3329 | — |
Security-Verify | d-qop | Yes | RFC 3329 | — |
Security-Verify | d-ver | No | RFC 3329 | — |
Security-Verify | ealg | Yes | RFC 3329 | — |
Security-Verify | mod | Yes | RFC 3329 | — |
Security-Verify | port1 | No | RFC 3329 | — |
Security-Verify | port2 | No | RFC 3329 | — |
Security-Verify | prot | Yes | RFC 3329 | — |
Security-Verify | q | No | RFC 3329 | — |
Security-Verify | spi | No | RFC 3329 | — |
Session-ID | logme | No (no values are allowed) | RFC 8497 | — |
Session-ID | remote | No | RFC 7989 | — |
Subscription-State | adaptive-min-rate | No | RFC 6446 | — |
Subscription-State | expires | No | RFC 6665 | — |
Subscription-State | max-rate | No | RFC 6446 | — |
Subscription-State | min-rate | No | RFC 6446 | — |
Subscription-State | reason | Yes | RFC 6665 | — |
Subscription-State | retry-after | No | RFC 6665 | — |
Target-Dialog | local-tag | No | RFC 4538 | — |
Target-Dialog | remote-tag | No | RFC 4538 | — |
To | tag | No | RFC 3261 | yes |
Trigger-Consent | target-uri | No | RFC 5360 | — |
User-to-User | content | No | RFC 7433 | — |
User-to-User | encoding | Yes | RFC 7433 | — |
User-to-User | purpose | No | RFC 7433 | — |
Via | alias | No | RFC 5923 | — |
Via | branch | No | RFC 3261 | yes |
Via | comp | Yes | RFC 3486 | — |
Via | keep | No | RFC 6223 | — |
Via | maddr | No | RFC 3261 | — |
Via | oc | Yes | RFC 7339 | — |
Via | oc-algo | Yes | RFC 7339, RFC 7415 | — |
Via | oc-seq | Yes | RFC 7339 | — |
Via | oc-validity | Yes | RFC 7339 | — |
Via | received | No | RFC 3261, RFC 7118 | — |
Via | received-realm | No | RFC 8055 | — |
Via | rport | No | RFC 3581 | — |
Via | sigcomp-id | No | RFC 5049 | — |
Via | ttl | No | RFC 3261 | — |
WWW-Authenticate | algorithm | Yes | RFC 3261, RFC 3310 | — |
WWW-Authenticate | authz_server | No | RFC 8898 | — |
WWW-Authenticate | domain | Yes | RFC 3261 | — |
WWW-Authenticate | error | No | RFC 8898 | — |
WWW-Authenticate | nonce | No | RFC 3261 | — |
WWW-Authenticate | opaque | No | RFC 3261 | — |
WWW-Authenticate | qop | Yes | RFC 3261 | — |
WWW-Authenticate | realm | No | RFC 3261 | — |
WWW-Authenticate | scope | No | RFC 8898 | — |
WWW-Authenticate | stale | Yes | RFC 3261 | — |
Option tags (36)
Values for Require, Supported, Proxy-Require and Unsupported.
- They negotiate extensions.
- So a
420 Bad Extensionis usually an option tag that one end required and the other did not support. - Compare the two lists.
| Option tag | Defined by |
|---|---|
100rel | RFC 3262 |
199 | RFC 6228 |
answermode | RFC 5373 |
early-session | RFC 3959 |
eventlist | RFC 4662 |
explicitsub | RFC 7614 |
from-change | RFC 4916 |
geolocation-http | RFC 6442 |
geolocation-sip | RFC 6442 |
gin | RFC 6140 |
gruu | RFC 5627 |
histinfo | RFC 7044 |
ice | RFC 5768 |
join | RFC 3911 |
multiple-refer | RFC 5368 |
norefersub | RFC 4488 |
nosub | RFC 7614 |
outbound | RFC 5626 |
path | RFC 3327 |
policy | RFC 6794 |
precondition | RFC 3312 |
pref | RFC 3840 |
privacy | RFC 3323 |
recipient-list-invite | RFC 5366 |
recipient-list-message | RFC 5365 |
recipient-list-subscribe | RFC 5367 |
record-aware | RFC 7866 |
replaces | RFC 3891 |
resource-priority | RFC 4412 |
sdp-anat | RFC 4092 |
sec-agree | RFC 3329 |
siprec | RFC 7866 |
tdialog | RFC 4538 |
timer | RFC 4028 |
trickle-ice | RFC 8840 |
uui | RFC 7433 |