401 Unauthorized
The 401 response is part of the authentication process during registration. Your system sends a registration request, SIPcity responds with a 401 challenge, and your system must return the correct authentication credentials (MD5-encrypted password) to proceed.

403 Forbidden
The server understood the request but refused to process it, usually due to misconfiguration or insufficient account credit.
-
Account Credit: Each outgoing call is rated against your account balance. Insufficient credit will cause a 403 response. See Manage Billing to top up your account.
-
Misconfiguration: The Caller ID (From number) in the SIP URI must match the authentication username. For example, if your SIP URI contains 61383940220 but your Digest username is 61383940218, the call will fail. Ensure both match.
487 Request Terminated
The calling party cancelled the call before it was answered. The 487 indicates the call termination.

SDP Extensions and Attributes
SDP (Session Description Protocol) extensions in the application/SDP header describe the media capabilities the calling party can receive or negotiate.
SDP Parameters
v=0 – Version Number
o=CiscoSystemsCCM-SIP 811669 1 IN IP4 10.105.40.14 – Origin
s=SIP Call – Call Subject
c=IN IP4 10.133.92.102 – Connection/IP address for RTP stream
t=0 0 – Time
m=audio 25268 RTP/AVP 18 101 – Media
a=rtpmap:18 G729/8000 – Attributes (media)
a=ptime:20 – Attributes (Packetisation)
a=rtpmap:101 telephone-event/8000 – DTMF attributes
a=fmtp:101 0-15 – DTMF tones
Media Line Breakdown
m=audio 25268 RTP/AVP 18 0 8 101
This line defines the media attributes for the call:
- audio: Audio call (m=video for video calls)
- 25268: Dynamic RTP port for the call
- RTP/AVP: RTP/AVP profile numbers:
18 = G729
0 = PCMU
8 = PCMA
101 = RTP-NTE payload
Understanding the SIP VIA Headers
When a user agent client (UAC) creates a SIP request, it must insert a Via header. The Via header identifies the protocol (SIP), version (2.0), transport type (UDP or TCP), IP address, and port (typically 5060). This allows the receiving server to return responses to the correct device.
Example:
Via: SIP/2.0/UDP 10.11.228.67:5060
Source: Andrew Prokop – SIP Adventures
Common SIP Response codes
1xx = Info SIP Responses
-
100 Trying – Extended search is being performed so a forking proxy must send a 100 Trying response.
-
180 Ringing – The Destination User Agent has received the INVITE message and is alerting the user of call.
-
183 Session Progress – This response may be used to send extra information for a call which is still being set up.
2xx = Success Responses
-
200 OK – Shows that the request was successful
4xx = Request Failures
-
400 Bad Request: The request could not be understood due to malformed syntax.
-
401 Unauthorized: The request requires user authentication. This response is issued by us as part of the normal password challenge and response process
-
403 Forbidden: The server understood the request but is refusing to – on our network, this generally indicates an incorrect password
-
404 Not Found: The server has definitive information that the user does not exist at the domain specified in the Request-URI. This status is also returned if the domain in the Request-URI does not match any of the domains handled by the recipient of the request.
-
407 Proxy Authentication Required: The request requires user authentication. This response is issued by proxies.
-
408 Request Timeout: Couldn’t find the user in time. The server could not produce a response within a suitable amount of time, for example, if it could not determine the location of the user in time. The client MAY repeat the request without modifications at any later time.
5xx = Server Errors
-
500 Internal Server Error: The server could not fulfill the request due to some unexpected conditions.
-
502 Bad Gateway: The server is acting as a gateway or proxy and received an invalid response from a downstream server while attempting to fulfill the request.
-
503 Service Unavailable: The server is undergoing maintenance or is temporarily overloaded and so cannot process the request. A “Retry-After” header field may specify when the client may reattempt its request.
6xx = Global Failures
-
600 Busy Everywhere – All possible destinations are busy.
-
603 Decline – Destination cannot or is refusing to participate in the call but on our network may indicate the account has no credit.
-
604 Does Not Exist Anywhere – The server has authoritative information that the requested user does not exist anywhere.
-
606 Not Acceptable – The user’s agent was contacted successfully but some aspects of the session description were not acceptable.
-
607 Unwanted – The called party did not want his call from the calling party. Future attempts from the calling party are likely to be similarly rejected.