Insert Subscriber Request

The <insertSubscriberRequest> request provisions stand-alone IMSI and MSISDN routing entities or groups of related IMSI/MSISDN routing entities. This is referred to as subscriber data. This data contains relationships between IMSI and MSISDN routing entities along with an optional Account ID value. Each routing entity contains up to eight destination names. Each destination contains FQDN and realm values, which are used for routing messages.

When the group="y" attribute is specified, the <insertSubscriberRequest> request establishes relationships between IMSI, MSISDN and Account ID values. When adding a new IMSI or MSISDN value to a subscriber, the <insertSubscriberRequest> request creates a new IMSI or MSISDN routing entity. If any IMSI or MSISDN exists in the SDS database, the request fails, regardless of the group="y" attribute specification.

After a subscriber is created, all subsequent requests can use any of the subscriber's IMSI, MSISDN, or Account ID values to update, delete, or read the subscriber.

If the group="n" attribute is specified, the request establishes stand-alone entries of IMSI and MSISDN.

The request can also be used to remove a destination value from existing IMSI and/or MSISDN routing entities by specifying "none" as the destination name.

Semantic Rules (all requests)

Semantic Rules (requests that do not specify the group attribute or specify group="n")

Semantic Rules (requests that specify group="y")

  • The accountId parameter can be specified.
  • The deleteAccountId, deleteImsi, or deleteMsisdn parameters cannot be specified.
  • All specified accountID, imsi, or msisdn values must be either be assigned to the same subscriber, or they can exist in a stand-alone routing entity. After the command successfully completes, all specified values are assigned to the same subscriber. All routing entities must not exist in the SDS database.
  • All account of the accountID, imsi, or msisdn values must also be assigned to the same subscriber or either not assigned to any subscriber.
  • At least one imsi, msisdn, or accountId value must be specified within the insertAddressList.
  • All of the destination tags and values are optional.
  • The insertaddressList can have a maximum of one accountId, six imsi, six msisdn values specified. If any of these limits are exceeded, the request fails.
  • All accountId, imsi, and msisdn values specified within the insertaddressList are associated with a new subscriber and all specified routing entities will be provisioned with the specified destination values.
  • Existing stand-alone or grouped routing entities cannot be added using the insert subscriber request.
  • If a new routing entity is created, at least one of its destination values must not be equal to none.
  • The insert subscriber request must have at least one IMSI or MSISDN routing entity.
  • The updated subscriber can have zero or one Account ID value, 0-6 IMSI values, and 0-6 MSISDN values, as long as there is at least one IMSI or MSISDN value; otherwise, the request fails.

Insert Subscriber Request Format

The request must be inserted between the <soapenv:Body> and </soapenv:Body> XML tags as shown in SOAP Request Messages.
<insertSubscriberRequest [timeout="timeout"] [group="group"]>
 
    <insertAddressList>
    [   <accountId>accountId</accountId> ]
    [
        <imsi>imsi</msi>
        …
    [
        <imsi>imsi</msi>
    ]
    [
        <msisdn>msisdn</msisdn>
        …
        <msisdn>msisdn</msisdn>
    ]
    
    </insertAddressList>
    <destinationList>
    [   <imshss>imshss</imshss>       ]
    [   <ltehss>ltehss</ltehss>       ]
    [   <pcrf>pcrf</pcrf>             ]
    [   <ocs>ocs</ocs>                ]
    [   <ofcs>ofcs</ofcs>             ]
    [   <aaa>aaa</aaa>                ]
    [   <userdef1>userdef1</userdef1> ]
    [   <userdef2>userdef2</userdef2> ]
    </destinationList>
</updateSubscriberRequest>

Insert Subscriber Request Parameters

<insertSubscriberRequest> Parameters (SOAP)
Parameter Description Values
timeout (Optional) The amount of time (in seconds) to wait before being able to perform a write if another connection is performing a write, or has a transaction open. Clients waiting to write will be processed in the order that their requests were received.

If the request is being performed within a transaction, this parameter will have no effect, as the client already has a transaction open.

0 (return immediately if not available) to 3600 seconds (default is 0).
group (Optional) Indicates if relationships between a group of related IMSI and/or MSISDN routing entities and Account ID value should be created/updated.
  • y –Create new subscriber relationships with specified destinations.
  • n –Create stand-alone routing entities (default).
insertAddressList XML tag that contains a list of addresses to be created or updated. Must have at least 1 of the following tags and values:
  • 0-1 – accountId
  • 0-6 – imsi
  • 0-6 – msisdn
accountId (Optional) A user-defined Account ID value to add or update. 1 to 26 numeric digits.
imsi (Optional) An IMSI (specified in E.212 format) value to add or update. 10 to 15 numeric digits.
msisdn (Optional) An MSISDN (specified in E.164 international public telecommunication numbering plan format) value to add or update. 8 to 15 numeric digits.
destinationList (Optional) XML tag that contains a list of destination values to update or set in the routing entity(s). Can be empty, or contain any of the following destination tags and values: imshss, ltehss, pcrf, ocs, ofcs, aaa, userdef1, and/or userdef2.
imshss (Optional) The name of the IMS HSS destination. A string with 1 to 32 characters.
ltehss (Optional) The name of the LTE HSS destination. A string with 1 to 32 characters.
pcrf (Optional) The name of the PCRF destination. A string with 1 to 32 characters.
ocs (Optional) The name of the OCS destination. A string with 1 to 32 characters.
ofcs (Optional) The name of the OFCS destination. A string with 1 to 32 characters.
aaa (Optional) The name of the AAA server destination. A string with 1 to 32 characters.
userdef1 (Optional) The name of the first user defined destination. A string with 1 to 32 characters.
userdef2 (Optional) The name of the second user defined destination. A string with 1 to 32 characters.