diff --git a/introspection/Makefile.am b/introspection/Makefile.am
index 175162cc..941c9244 100644
--- a/introspection/Makefile.am
+++ b/introspection/Makefile.am
@@ -14,4 +14,5 @@ EXTRA_DIST = \
mm-modem-gsm-sms.xml \
mm-modem-simple.xml \
mm-serial-error.xml \
- mm-modem-location.xml
+ mm-modem-location.xml \
+ mm-modem-gsm-ussd.xml
diff --git a/introspection/all.xml b/introspection/all.xml
index 30725c73..967e90da 100644
--- a/introspection/all.xml
+++ b/introspection/all.xml
@@ -33,6 +33,7 @@
+
diff --git a/introspection/mm-modem-gsm-ussd.xml b/introspection/mm-modem-gsm-ussd.xml
new file mode 100644
index 00000000..f1f99fb4
--- /dev/null
+++ b/introspection/mm-modem-gsm-ussd.xml
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
+ Sends a USSD command string to the network initiating a USSD session.
+ When the request is handled by the network, the method returns the
+ response or an appropriate error. The network may be awaiting further
+ response from the ME after returning from this method and no new command
+ can be initiated until this one is cancelled or ended.
+
+
+
+
+
+ The command to start the USSD session with.
+
+
+
+
+
+
+ Respond to a USSD request that is either initiated by the mobile network,
+ or that is awaiting further input after Initiate() was called.
+
+
+
+
+
+ The response to network-initiated USSD command, or a response to a
+ request for further input.
+
+
+
+
+
+
+ Cancel an ongoing USSD session, either mobile or network initiated.
+
+
+
+
+
+
+
+ Indicates the state of any ongoing USSD session. Values may be one of
+ the following: "idle" (no active session), "active" (a session is active
+ and the mobile is waiting for a response), "user-response" (the network
+ is waiting for the client's response, which must be sent using Respond()).
+
+
+
+
+
+ Contains any network-initiated request to which no USSD response is
+ required. When no USSD session is active, or when there is no network-
+ initiated request, this property will be a zero-length string.
+
+
+
+
+
+ Contains any pending network-initiated request for a response. Client
+ should call Respond() with the appropriate response to this request.
+ When no USSD session is active, or when there is no pending
+ network-initiated request, this property will be a zero-length string.
+
+
+
+
+