Add a new software instance
You can use this operation to add a software instance to z/OSMF.
HTTP method and URI path
POST /zosmf/swmgmt/swi
- zosmf/swmgmt identifies the software management services.
- swi informs the service that the request is for the software instance object.
Standard headers
Use the following standard HTTP header with this request:
- Content-Type
- Identifies the type of input content provided by the caller. The JSON content type ("Content-Type: application/json") is used for the JSON document included as input with this request.
- Accept-Language
- Identifies the preferred language for messages that may be returned to the caller. Acceptable values are "Accept-Language: en" (English) and "Accept-Language: ja" (Japanese). Any other language value is ignored and English is used instead. In addition, if the header is not specified, English is used.
Custom headers
None.
Request content
{
"name":"swi-name",
"system":"system-nickname",
"description":"swi-description",
"globalzone":"global-zone",
"targetzones":["target-zones"],
"categories":["categories"],
"datasets":[
{
"dsname":"data-set-name",
"volume":"volume-serial"
}],
"products":[{
"prodname":"product-name",
"prodid":"product-id",
"release":"product-level",
"vendor":"vendor-name",
"url":"product-url",
"features":["feature-name"],
"generalavailability":"general-availability-date",
"endofservice":"end-of-service-date"
}],
"workflows":[{
"name":"workflow-name",
"description":"workflow-description",
"location": {
"smptype":"smp-type",
"smpname":"smp-name",
"dsname":"workflow-dsname",
"path":"workflow-path"
},
"performonhostsystem":true | false
}],
"datasetproperties":[{
"dddefname":"dddef-name",
"zone":"zone-name",
"dsname":"data-set-name",
"volume":"volume-serial",
"dstype":"DLIB",
"properties":[{"key":"value"}]
}],
"datasetpropertylabels":[{
"propertyname":"property-name",
"label":"property-label"
}],
"productproperties":[{
"prodid"":"product-id",
"release":"product-level",
"prodname":"product-name",
"properties":[{"key":"value"}]
}]
}
- swi-name
- Name of the software instance. The name can contain up to 30 non-blank characters, including alphanumeric characters (A-Z, a-z, and 0-9), mathematical symbols (< > - = | \), punctuation marks (? ! : ' " /), and special characters ($ _ # @ ^). The name is required and must be unique on the system.
- system-nickname
- Nickname of the system that has access to the volumes and data sets where the software instance
resides. Use the nickname that is specified for the system definition in the z/OSMF
Systems task. The nickname is required.
To manage the systems defined to z/OSMF, you can use the z/OSMF topology services. For more details, see Topology services.
- swi-description
- Description of the software instance. The description is optional and can contain a maximum of 256 characters.
- global-zone
CSI data set that contains the global zone used to manage the
software. If specified, must comply with z/OS® data set naming
conventions, and must end with .CSI. 
- target-zones
Comma-separated list of the target zones to be included in the
software instance. A list of 0 or more zone names, each target zone name must be 1-7 characters
long; the valid characters are uppercase alphabetic characters (A-Z), numeric characters (0-9), and
special characters (@ # $). The first character must be an alphabetic character.
- categories
- Comma-separated list of the categories to which the software instance is assigned. Each category name can contain up to 30 non-blank characters, including alphanumeric characters (A-Z, a-z, and 0-9), mathematical symbols (< > - = | \), punctuation marks (? ! : ' " /), and special characters ($ _ # @ ^). Assigning the software instance to a category is optional.
- datasets
- Array that contains each non-SMP/E managed data set to be added to the software instance. Adding non-SMP/E managed data sets to the software instance is optional.
- data-set-name
- Name of the non-SMP/E managed data set. You cannot specify data set members or a subset of a data set. A data set name is required if you are adding non-SMP/E managed data sets to the software instance. The data set name must comply with z/OS data set naming conventions
- volume-serial
- Volume on which the non-SMP/E managed data set resides. The volume serial is required if the
dataset is not cataloged, and the volume must be accessible by the system where the software
instance resides.
The volume serial must be 1-6 characters long; the valid
characters are uppercase alphabetic characters (A-Z), numeric characters (0-9), and national
characters ($, #, @). This value is optional.
- products
- List of products for the software instance that are not managed by SMP/E. This list is optional.
- product-name
- Name of the product, but can be up to 64 characters.
- product-ID
- Identifier for the product, but can be up to 64 characters.
- product-level
- Release level for the product, but can be up to 64 characters.
- vendor-name
- Name of the vendor that provides the product, but can be up to 64 characters.
- product-URL
- A URL that links to additional information about the product, but can be up to 1023 characters.
- feature-name
- List of names of features for the product, but can be up to 64 characters.
- general-availability-date
- Date this level of the product is available to all users. May be null,or a date value, in ISO 8601 format, yyyy-mm-ddThh:mm:ssZ.
- end-of-service-date
- Last date on which the vendor will deliver standard support services for this level of the
product. This date is the general end of service date. It does not account for lifecycle extensions.
Can be any of the following:
- null
- The end of service date is unknown for the product.
- yyyy-mm-ddThh:mm:ssZ
- The known end of service date, in ISO 8601 format.
- NotAnnounced
- The end of service date is not yet announced for the product.
- workflows
- List of workflows for the software instance. This list is optional.
- workflow-name
- Name for the workflow. The name may contain up to 100 characters, but must not include the characters for ampersand ('&'), forward slash ('/'), backward slash ('\'), logical or ('|'), greater than ('>'), or less than ('<'). Embedded blanks are allowed.
- workflow-description
- Description for the workflow. The description is optional, and can contain a maximum of 256 characters.
- location
- Location of the workflow definition file for the workflow. A workflow definition file location is required.
- smp-type
- The SMP/E element type for a workflow definition file that is managed by SMP/E. The SMP/E element type is optional and may be up to 12 uppercase alphanumeric characters. The first character cannot be numeric.
- smp-name
- The SMP/E element name for a workflow definition file that is managed by SMP/E. The SMP/E element name is optional and may be up to 8 uppercase alphanumeric, $, #, or @ characters.
- workflow-dsname
- The sequential data set name, or partitioned data set name and member for a workflow definition file that is in a data set. The data set name is optional, but if specified must comply with z/OS data set naming conventions. For example, IBMUSR.SM.WRKFLOWS(WRKFLOW1).
- workflow-path
- The UNIX path for a workflow definition file that is a
UNIX file. The UNIX
path is optional, but if specified it must have valid UNIX
file name syntax:
- Must be an absolute pathname (must start with slash).
- Must not end with a slash.
- Can be up to 1023 characters long.
performonhostsystem
Indicates whether the workflow steps may be performed on the host system or on another system in
the same sysplex as the host system. This property is optional and the default value is true.- true
- Indicates that the workflow steps may be performed on the z/OSMF host system on which the software instance resides.
- false
- Indicates that the workflow steps may be performed on a system in the sysplex other than the z/OSMF host system on which the software instance
resides.Tip: Ensure that the description property contains information that helps the user select an appropriate alternative system for the performance of the workflow steps. For example, if the workflow steps are for installation verification procedures (IVPs), the user would select the system on which the newly activated software runs.

- datasetproperties
- A list of one or more properties for individual data sets. These properties are made available to a workflow as workflow variable properties when Software Management creates a workflow instance for the software instance. See Software Management workflow variables for more information.
- datasetpropertylabels
-
A list of labels that each correspond to unique data set properties that a provider defines in datasetproperties. Label values are used for column headings to display provider defined data set property values on the Deployment Configuration Data Sets page. Not all provider defined data set properties must have corresponding defined labels, but only those with defined labels are eligible for display on the Deployment Configuration Data Sets page. A data set property can have only one associated label, and all labels must be unique.
- productproperties
- A list of one or more properties for individual software products. These properties are made available to a workflow as workflow variable properties when Software Management creates a workflow instance for the software instance. See Software Management workflow variables for more information.
Usage considerations
Required authorizations
To submit requests through the software management services, the user ID initiating the request requires the same authorizations as when performing an analogous operation using the z/OSMF Software Management task. That is, the user ID must have READ access to the Software Management task, and CONTROL access to the SAF resources corresponding to the software instance to be added. If the specified categories are implicitly added during this software instance add operation, the user ID must also have CONTROL access to the SAF resources corresponding to the specified categories. For information about access controls for the Software Management task, see Creating access controls for the Software Management task in IBM z/OS Management Facility Configuration Guide.
Expected response
On completion, the service returns an HTTP response, which includes a status code indicating
whether your request completed. Status code 200 indicates success. A status code of
4nn or 5nn indicates that an error has occurred. For more details, see Error handling.
Example
POST /zosmf/swmgmt/swi HTTP/1.1
Host: pev174.yourco.com Content-Type: application/json Accept-Language: en { "name":"Hooli", "system":"PEV174", "description":"Fictitious software product from Hooli", "globalzone":"IBMUSER.HOOLI.CSI", "targetzones":["TGTZ"], "datasets":[ {"dsname":"IBMUSER.HOOLI.PROCLIB","volume": "LV1234"}, {"dsname":"IBMUSER.HOOLI.PARMLIB","volume":"LV1234"} ], "products":[ {"prodname":"Hooli Express","release":"2.1","vendor":"Hooli Software"} ], "workflows":[ {"name":"Setup Hooli", "description":"Setup and configure fictitious software product Hooli", "location": {"dsname":"IBMUSER.HOOLI.WORKFLOW(SETUP)"}} ], "datasetproperties":[ {"dddefname":"HOOLMOD","properties":[{"hooli-LnkLst":"yes"},{"hooli-ispfType":"LMOD"}]}, {"dddefname":"HOOLMSG","properties":[{"hooli-ispfType":"MESSAGE"}]}, {"dddefname":"HOOLPNL","properties":[{"hooli-ispfType":"PANEL"}]}, {"dddefname":"HOOLSKL","properties":[{"hooli-ispfType":"SKELETON"}]}, {"dddefname":"HOOLTBL","properties":[{"hooli-ispfType":"TABLE"}]}, {"dddefname":"HOOLREXX","properties":[{"hooli-ispfType":"EXEC"}]} ], "datasetpropertylabels":[ {"propertyname":"hooli-LnkLst","label":"LNKLST Eligible"}, {"propertyname":"hooli-ispfType","label":"ISPF Element Type"} ] }