SOAP API metadata service

The SOAP API metadata service asset manages the metadata functions of the SOAP server, including setting and regenerating metadata.

To add a SOAP API metadata service, go to Web services  SOAP API metadata service. For the API to work, it must be created under a SOAP server asset. The API will then be available to enable on the Details screen of the SOAP server.

You can configure the settings of the SOAP API metadata service on its associated asset screens. The majority of these screens are similar to those for a standard page. They are described in the Asset screens documentation. This documentation will describe the Details screen, which is different for a SOAP API search service.

Details screen

The Details screen allows you to configure the interface functions for the SOAP API metadata service. Read the Asset screens documentation for more information about the Status, Future status, Thumbnail, and Details sections.

Interface settings

This section allows you to control which functions the SOAP API asset service will provide when enabled on a SOAP server.

To enable the functions for the SOAP asset service:

  1. Select Edit on the Details screen.

  2. Select the Enabled checkbox beside the function list you want to make available on the API.

  3. Select Save to make the selected functions available to use.

The Operations section below contains a full explanation of each function.

Operations

The operations that are managed by the SOAP API metadata service are as follows:

SetMetadataSchema

The SetMetadataSchema operation will apply, deny or revoke (delete) a metadata schema on a specified asset. The parameters available for this operation are as follows:

SetMetadataSchemaSoapInput (SetMetadataSchema)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

AssetID [string]

The asset ID of the asset where the metadata schema is set. This parameter is mandatory.

1

1

simple

SchemaID [string]

The asset ID of the metadata schema. This parameter is mandatory.

1

1

simple

Grant [Grant]

The grant that will determine how the metadata schema is implemented, for example Revoke. This parameter is mandatory.

1

1

simple

Cascade [boolean]

Indicates whether the metadata schema will be cascaded to all child assets. The value for this parameter should be either TRUE or FALSE (or 1 or 0). The default value for this parameter is 1.

0

1

simple

Example 1. SetMetadataSchema request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:SetMetadataSchema>
      <AssetID>100</AssetID>
      <SchemaID>105</SchemaID>
      <Grant>Revoke</Grant>
      <Cascade>TRUE</Cascade>
    </ns1:SetMetadataSchema>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

SetMetadataSchemaSoapOutput (SetMetadataSchemaResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

SetSchemaResult [boolean]

0

1

simple

Example 2. SetMetadataSchema response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:SetMetadataSchemaResponse>
      <SetSchemaResult>true</SetSchemaResult>
    </ns1:SetMetadataSchemaResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

GetMetadataFieldsOfSchema

The GetMetadataFieldsOfSchema operation will return the metadata field IDs of a specified metadata schema. The parameters available for this operation are as follows:

GetMetadataFieldsOfSchemaSoapInput (GetMetadataFieldsOfSchema)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

SchemaID [string]

The asset ID of the metadata schema to return metadata field IDs from. This parameter is mandatory.

1

1

simple

Example 3. GetMetadataFieldsOfSchema request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:GetMetadataFieldsOfSchema>
      <SchemaID>300</SchemaID>
    </ns1:GetMetadataFieldsOfSchema>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

GetMetadataFieldsOfSchemaSoapOutput (GetMetadataFieldsOfSchemaResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

GetMetadataFieldsOfSchemaResult [string]

0

/

simple

Example 4. GetMetadataFieldsOfSchema response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:GetMetadataFieldsOfSchemaResponse>
      <GetMetadataFieldsOfSchemaResult>302</GetMetadataFieldsOfSchemaResult>
      <GetMetadataFieldsOfSchemaResult>303</GetMetadataFieldsOfSchemaResult>
    </ns1:GetMetadataFieldsOfSchemaResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

GetMetadataFieldsDetailOfSchema

The GetMetadataFieldsDetailsOfSchema operation will return the metadata field details of a specified metadata schema. The parameters available for this operation are as follows:

GetMetadataFieldsDetailOfSchemaSoapInput (GetMetadataFieldsDetailOfSchema)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

SchemaID [string]

The asset ID of the metadata schema to return the metadata fields and the details from. This parameter is mandatory.

1

1

simple

Example 5. GetMetadataFieldsDetailOfSchema request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:GetMetadataFieldsDetailsOfSchema>
      <SchemaID>300</SchemaID>
    </ns1:GetMetadataFieldsDetailsOfSchema>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

GetMetadataFieldsDetailOfSchemaSoapOutput (GetMetadataFieldsDetailOfSchemaResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

GetMetadataFieldsDetailOfSchemaResult [string]

0

/

simple

Example 6. GetMetadataFieldsDetailOfSchema response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:GetMetadataFieldsDetailOfSchemaResponse>
      <GetMetadataFieldsDetailOfSchemaResult>
        <AssetID>302</AssetID>
        <TypeCode>metadata_field_text</TypeCode>
        <Name>Text</Name>
        <FriendlyName>Text</FriendlyName>
        <Description>Enter the value in the field provided.</Description>
        <Default>Home</Default>
        <Scheme>AGLS</Scheme>
        <Language>English</Language>
        <Editable>1</Editable>
        <IsContextable>1</IsContextable>
        <Required>0</Required>
        <Frontend>show</Frontend>
      </GetMetadataFieldsDetailOfSchemaResult>
      <GetMetadataFieldsDetailOfSchemaResult>
        <AssetID>302</AssetID>
        <TypeCode>metadata_field_multiple_text</TypeCode>
        <Name>Multiple Text</Name>
        <FriendlyName>Multi Text</FriendlyName>
        <Description>Enter the values in the fields provided.</Description>
        <Default></Default>
        <Scheme>AGLS</Scheme>
        <Language>English</Language>
        <Editable>0</Editable>
        <IsContextable>1</IsContextable>
        <Required>1</Required>
        <Frontend>hide</Frontend>
      </GetMetadataFieldsDetailOfSchemaResult>
    </ns1:GetMetadataFieldsDetailOfSchemaResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

GetMetadataFieldValues

The GetMetadataFieldValues will return the metadata field values of a specified asset. The parameters available for this operation are as follows:

GetMetadataFieldValuesSoapInput (GetMetadataFieldValues)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

AssetID [string]

The asset ID of the asset to return metadata field values from. This parameter is mandatory.

1

1

simple

FieldNames [string]

The metadata field names to return the values for. This allows you to define specific field values to return.

0

/

simple

Example 7. GetMetadataFieldValues request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:GetMetadataFieldValues>
      <AssetID>120</AssetID>
      <FieldNames>keywords</FieldNames>
      <FieldNames>summary</FieldNames>
    </ns1:GetMetadataFieldValues>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

GetMetadataFieldValuesSoapOutput (GetMetadataFieldValuesResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

GetMetadataFieldValuesResult [FieldInfo]

0

/

complex

Example 8. GetMetadataFieldValues response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:GetMetadataFieldValuesResponse>
      <GetMetadataFieldValuesResult>
        <FieldName>keywords</FieldName>
        <FieldValue>news, cms, matrix, squiz, release</FieldValue>
      </GetMetadataFieldValuesResult>
      <GetMetadataFieldValuesResult>
        <FieldName>summary</FieldName>
        <FieldValue>Squiz Matrix ver. 4.0.6 and 4.2.2 have been released.</FieldValue>
      </GetMetadataFieldValuesResult>
    </ns1:GetMetadataFieldValuesResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

RegenerateMetadataSchema

The RegenerateMetadataSchema operation will regenerate the metadata of all assets for a specified metadata schema. The parameters available for this operation are as follows:

RegenerateMetadataSchemaSoapInput (RegenerateMetadataSchema)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

SchemaID [string]

The asset ID of the metadata schema where metadata is to regenerate. This parameter is mandatory.

1

1

simple

Example 9. RegenerateMetadataSchema request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:RegenerateMetadataSchema>
      <SchemaID>100</SchemaID>
    </ns1:RegenerateMetadataSchema>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

RegenerateMetadataSchemaSoapOutput (RegenerateMetadataSchemaResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

RegenerateMetadataSchemaResult [boolean]

0

1

simple

Example 10. RegenerateMetadataSchema response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:RegenerateMetadataSchemaResponse>
      <RegenerateMetadataSchemaResult>true</RegenerateMetadataSchemaResult>
    </ns1:RegenerateMetadataSchemaResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

RegenerateMetadataAsset

The RegenerateMetadataAsset operation will regenerate the metadata of a specified asset. The parameters available for this operation are as follows:

RegenerateMetadataAssetSoapInput (RegenerateMetadataAsset)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

AssetID [string]

The asset ID of the asset where metadata is to regenerate. This parameter is mandatory.

1

1

simple

Example 11. RegenerateMetadataAsset request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:RegenerateMetadataAsset>
      <AssetID>100</AssetID>
    </ns1:RegenerateMetadataAsset>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

RegenerateMetadataAssetSoapOutput (RegenerateMetadataAssetResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

RegenerateMetadataAssetResult [boolean]

0

1

simple

Example 12. RegenerateMetadataAsset response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:RegenerateMetadataAssetResponse>
      <RegenerateMetadataAssetResult>true</RegenerateMetadataAssetResult>
    </ns1:RegenerateMetadataAssetResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

GetMetadataValueByIDs

The GetMetadataValueByIDs operation will return a metadata field value of a specified asset. The parameters available for this operation are as follows:

GetMetadataValueByIDsSoapInput (GetMetadataValueByIDs)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

AssetID [string]

The asset ID of the asset to return a metadata field value from. This parameter is mandatory.

1

1

simple

FieldID [string]

The asset ID of the field to return the value for. This parameter is mandatory.

1

1

simple

Example 13. GetMetadataValueByIDs request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:GetMetadataValueByIDs>
      <AssetID>100</AssetID>
      <FieldID>122</FieldID>
    </ns1:GetMetadataValueByIDs>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

GetMetadataValueByIDsSoapOutput (GetMetadataValueByIDsResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

GetMetadataValueByIDsResult [string]

1

1

simple

Example 14. GetMetadataValueByIDs response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:GetMetadataValueByIDsResponse>
      <GetMetadataValueByIDsResult>news, cms, matrix, squiz, release</GetMetadataValueByIDsResult>
    </ns1:GetMetadataValueByIDsResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

SetAssetMetadata

The SetAssetMetadata operation will set the value of a metadata field for a specified asset. The parameters available for this operation are as follows:

SetAssetMetadataSoapInput (SetAssetMetadata)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

AssetID [string]

The asset ID of the asset to set metadata on. This parameter is mandatory.

1

1

simple

FieldID [string]

The asset ID of the field to set the metadata value for. This parameter is mandatory.

1

1

simple

NewValue [string]

The metadata value of the metadata field. This parameter is mandatory. The formats for setting the value for the various metadata field types are as follows:

Text

A simple text string, for example Squiz Matrix.

Select

The key(s) for the option(s) to select, separated by semicolons, for example a; b; c.

Multiple Text

Simple text strings, separated by semicolons for each item, for example Squiz; Matrix.

Date

The date and time in the format yyyy-MM-dd hh::mm::ss, for example 2012-06-14 09:12:40.

Thesaurus

The name of the thesaurus term, for example Matrix.

Hierarchy

The key(s) for the option(s) to select, separated by semicolons, for example a; a1; b2.

WYSIWYG

HTML content, for example <strong>lorem ipsum…​</strong>

Related Asset

The asset ID of the related asset, for example 123.

Read the Developing websites with Matrix documentation for more information on the available metadata field types.

1

1

simple

Example 15. SetAssetMetadata request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:SetAssetMetadata>
      <AssetID>100</AssetID>
      <FieldID>105</FieldID>
      <NewValue>new_value</NewValue>
    </ns1:SetAssetMetadata>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

SetAssetMetadataSoapOutput (SetAssetMetadataResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

SetAssetMetadataResult [boolean]

0

1

simple

Example 16. SetAssetMetadata response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:SetAssetMetadataResponse>
      <SetAssetMetadataResult>true</SetAssetMetadataResult>
    </ns1:SetAssetMetadataResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

SetMultipleMetadataFields

The SetMultipleMetadataFields operation will set the values of multiple metadata fields on a specified asset. The parameters available for this operation are as follows:

SetMultipleMetadataFieldsSoapInput (SetMultipleMetadataFields)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

AssetID [string]

The asset ID of the asset to set metadata on. This parameter is mandatory.

1

1

simple

MetadataInfo [MetadataInfo]

The metadata field IDs and values to set on the specified asset. NOTE: This is a complexType parameter, requiring multiple elements.

The default value for this parameter is Array().

0

/

complex

Example 17. SetMultipleMetadataFields request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:SetMultipleMetadataFields>
      <AssetID>70</AssetID>
      <MetadataInfo>
        <FieldID>407</FieldID>
        <FieldValue>First field value</FieldValue>
      </MetadataInfo>
      <MetadataInfo>
        <FieldID>618</FieldID>
        <FieldValue>Second field value</FieldValue>
      </MetadataInfo>
    </ns1:SetMultipleMetadataFields>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

SetMultipleMetadataFieldsSoapOutput (SetMultipleMetadataFieldsResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

SetMultipleMetadataFieldsResult [boolean]

0

1

simple

Example 18. SetMultipleMetadataFields response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:SetMultipleMetadataFieldsResponse>
      <SetMultipleMetadataFieldsResult>true</SetMultipleMetadataFieldsResult>
    </ns1:SetMultipleMetadataFieldsResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

SetMetadataFieldDefaultValue

The SetMetadataFieldDefaultValue operation will set the default value for a specified metadata field. The parameters available for this operation are as follows:

SetMetadataFieldDefaultValueSoapInput (SetMetadataFieldDefaultValue)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

FieldID [string]

The asset ID of the field to set the default metadata value for. This parameter is mandatory.

1

1

simple

NewDefaultValue [string]

The default metadata value of the metadata field. The format for setting the values for each metadata field type is outlined in the SetAssetMetadata operation documentation. This parameter is mandatory.

1

1

simple

Example 19. SetMetadataFieldDefaultValue request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:SetMetadataFieldDefaultValue>
      <FieldID>105</FieldID>
      <NewDefaultValue>default_value</NewDefaultValue>
    </ns1:SetMetadataFieldDefaultValue>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

SetMetadataFieldDefaultValueSoapOutput (SetMetadataFieldDefaultValueResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

SetMetadataFieldDefaultValueResult [boolean]

0

1

simple

Example 20. SetMetadataFieldDefaultValue response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:SetMetadataFieldDefaultValueResponse>
      <SetMetadataFieldDefaultValueResult>true</SetMetadataFieldDefaultValueResult>
    </ns1:SetMetadataFieldDefaultValueResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

GetSchemasOnAsset

The GetSchemasOnAsset operation will return the Metadata Schemas applied to a specified asset. The parameters available for this operation are as follows:

GetSchemasOnAssetSoapInput (GetSchemasOnAsset)

Elements - Parameter [Param Type] Description Min Occurs Max Occurs Type

AssetID [string]

The asset ID of the asset to return the metadata schemas applied to it.

1

1

simple

Example 21. GetSchemasOnAsset request
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:GetSchemasOnAsset>
      <AssetID>100</AssetID>
    </ns1:GetSchemasOnAsset>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

GetSchemasOnAssetSoapOutput (GetSchemasOnAssetResponse)

Elements - Parameter [Param Type] Min Occurs Max Occurs Type

GetSchemasOnAssetResult [SchemaSetInfo]

0

/

complex

Example 22. GetSchemasOnAsset response
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://SYSTEM_ROOT_URL/_web_services/soap-server">
  <SOAP-ENV:Body>
    <ns1:GetSchemasOnAssetResponse>
      <GetSchemasOnAssetResult>
        <SchemaID>130</SchemaID>
        <Grant>1</Grant>
      </GetSchemasOnAssetResult>
    </ns1:GetSchemasOnAssetRepsonse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>