---
title: Integration Catalog
description: Use the endpoints in the Integration Catalog to discover and retrieve integration metadata, SAML metadata, and download integration kits as a compressed file.
component: pingone-api
page_id: pingone-api:platform:integration-catalog
canonical_url: https://developer.pingidentity.com/pingone-api/platform/integration-catalog.html
section_ids:
  assigning-admin-roles-and-permissions-to-this-service: Assigning admin roles and permissions to this service
  integration-data-model: Integration data model
  integration-version-data-model: Integration version data model
  integration-kit-data-model: Integration Kit data model (extends Integration Version)
  integration-version-saml-data-model: SAML data model (extends Integration Version)
  attribute-data-model: Attribute data model
---

# Integration Catalog

Use the endpoints in the Integration Catalog to discover and retrieve integration metadata, SAML metadata, and download integration kits as a compressed file.

## Assigning admin roles and permissions to this service

Admin role assignments determine access to PingOne APIs. When assigning admin roles to this service, refer to [PingOne Permissions by Service](reference/roles-and-permissions-in-pingone/permissions-by-service.html) for the service-specific permissions.

You can also choose to assign admin roles based on particular service resources. Refer to [PingOne Permissions by Resource](reference/roles-and-permissions-in-pingone/permissions-by-resource.html) when assigning admin roles per service resources.

Admin assignments to roles are set by:

* [Automatic assignment for some roles](roles/predefined-roles.html#automatic-role-assignment).

* [Group Role Assignments](group-role-assignments/group-role-assignments.html).

* [User Role Assignments](users/user-role-assignments.html).

Refer to [Roles Management](roles.html) for more information.

## Integration data model

| Property                  | Type      | Required? | Mutable?  | Description                                                                                                                                                                                                                                   |
| ------------------------- | --------- | --------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `categories`              | String\[] | Optional  | Mutable   | The list of categories used to classify the integration. Valid strings include alphanumeric characters, underscore, hyphen, and space.                                                                                                        |
| `createdAt`               | Date      | Required  | Immutable | Creation date of the integration.                                                                                                                                                                                                             |
| `description`             | String    | Optional  | Mutable   | The description of the integration in HTML to be used for the integration listing. You can use `class` and `style` attributes for inline styling. There's a 4000 character limit for the description.                                         |
| `id`                      | String    | Required  | Immutable | The platform-generated ID of this integration.                                                                                                                                                                                                |
| `logo`                    | String    | Optional  | Mutable   | A logo to use for the integration. If specified, the associated properties are required.                                                                                                                                                      |
| `logo.href`               | String    | Required  | Mutable   | The href to the absolute URL of the image.                                                                                                                                                                                                    |
| `logo.id`                 | String    | Required  | Mutable   | The image ID generated by the Image service.                                                                                                                                                                                                  |
| `marketingLandingPageUrl` | String    | Optional  | Mutable   | Absolute URL link to the marketing landing page.                                                                                                                                                                                              |
| `name`                    | String    | Required  | Mutable   | Name of the integration.                                                                                                                                                                                                                      |
| `pingProductNames`        | String\[] | Required  | Mutable   | The Ping product associated with the integration. Can include: `PINGID`, `PINGONE_ENTERPRISE`, `PINGONE`, `PINGACCESS`, `PINGFEDERATE`, `PINGDIRECTORY`, `PINGDATAGOVERNANCE`, or\`PINGINTELLIGENCE\_FOR\_APIS\`, `PINGONE_ADVANCED_SERVICES` |
| `publisher`               | String    | Required  | Mutable   | Name of the publisher.                                                                                                                                                                                                                        |
| `tags`                    | String\[] | Optional  | Mutable   | Tags to apply to the integration metadata. Can include: `SSO`, `AUTHENTICATION`, `MFA`, `INTELLIGENCE`, `GOVERNANCE`, `IDAAS`, `ACCESS`, `DIRECTORY`, or `PROVISIONING`.                                                                      |
| `thirdParty`              | Object    | Optional  | Mutable   | Metadata that defines the third party related to this integration.                                                                                                                                                                            |
| `thirdParty.companyName`  | String    | Required  | Mutable   | Name of the third party company for the listing.                                                                                                                                                                                              |
| `thirdParty.products`     | String\[] | Optional  | Mutable   | Names of the third party products for the integration.                                                                                                                                                                                        |

## Integration version data model

Each integration can have versions. Valid integration version numbers match the regular expression (^\d+.\d+(.\d+)?$). So, `1.0.2` and `2.06` are valid versions. Examples of **invalid** versions include `v.1.2` and `1.2.3.4`.

| Property                   | Type   | Required? | Mutable?  | Description                                                                                                                    |
| -------------------------- | ------ | --------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `configuration`            | Object | Optional  | Mutable   | The configuration of the integration version. If specified, `configuration.schema` and `configuration.properties` is required. |
| `configuration.schema`     | Object | Required  | Mutable   | Contains a JSON schema defining the integration version.                                                                       |
| `configuration.properties` | Object | Required  | Mutable   | Contains the property names and assigned values for the integration version.                                                   |
| `description`              | String | Optional  | Mutable   | Unicode characters. The description of this integration metadata version.                                                      |
| `id`                       | String | Required  | Immutable | The platform-generated ID of this integration metadata version.                                                                |
| `integration`              | Object | Required  | Read only | The parent integration of the integration version.                                                                             |
| `integration.id`           | String | Required  | Immutable | The platform-generated ID of the parent integration.                                                                           |
| `name`                     | String | Required  | Mutable   | A unique name for the integration metadata version.                                                                            |
| `number`                   | String | Required  | Mutable   | A unique number for the integration version.                                                                                   |
| `type`                     | String | Optional  | Mutable   | The type of integration for this version. Currently, the only valid values are `PRODUCT_INTEGRATION_KIT` and `SAML`.           |

## Integration Kit data model (extends Integration Version)

Integration version metadata with a type of `PRODUCT_INTEGRATION_KIT` will include this data.

| Property                    | Type   | Required? | Mutable? | Description                                                                                                                                                                                            |
| --------------------------- | ------ | --------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `documentationUrl`          | String | Optional  | Mutable  | Absolute URL to the documentation.                                                                                                                                                                     |
| `endOfLifeOn`               | Date   | Optional  | Mutable  | EOL support date in the form `yyyy-mm-dd`.                                                                                                                                                             |
| `integratedWith`            | Object | Optional  | Mutable  | Ping product integration details.                                                                                                                                                                      |
| `integratedWith.name`       | String | Required  | Mutable  | Name of the compatible Ping product with which this version integrates. Can include: `PINGID`, `PINGONE_ENTERPRISE`, `PINGONE`, `PINGACCESS`, `PINGFEDERATE`, `PINGDIRECTORY`, or `PINGDATAGOVERNANCE` |
| `integratedWith.minVersion` | String | Optional  | Mutable  | Earliest version of the integrated Ping product.                                                                                                                                                       |
| `integratedWith.maxVersion` | String | Optional  | Mutable  | Latest version of the integrated Ping product.                                                                                                                                                         |
| `number`                    | String | Required  | Mutable  | Unique number for the integration version.                                                                                                                                                             |
| `releasedOn`                | Date   | Required  | Mutable  | Release date in the form `yyyy-mm-dd`.                                                                                                                                                                 |

## SAML data model (extends Integration Version)

Integration version metadata with a type of `SAML` will include the following data.

|   |                                                  |
| - | ------------------------------------------------ |
|   | Only one SAML entity is allowed per integration. |

| Property                       | Type    | Required? | Mutable? | Description                                                                                                                                                                                                                                                     |
| ------------------------------ | ------- | --------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `assertionConsumerService`     | String  | Required  | Mutable  | The URL to which PingOne sends SAML responses. Parameterize the URL using `${paremter}`. For example, https\://$\\{subdomain}.slack.com. The maximum length is 2000 characters.                                                                                 |
| `assertionEncrypted`           | Boolean | Optional  | Mutable  | The state of assertion encryption. True if encrypted.                                                                                                                                                                                                           |
| `defaultTarget`                | String  | Optional  | Mutable  | After an IdP-initiated SSO, this URL is passed in the RelayState value in the SAML response. Informs the IdP where to send its response. Parameterize the URL using `${paremter}`. For example, https\://$\\{subdomain}.slack.com.                              |
| `entityId`                     | String  | Optional  | Mutable  | Unique ID for the application.                                                                                                                                                                                                                                  |
| `nameIdFormat`                 | String  | Optional  | Mutable  | This can be one of the following:\* urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified\* urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress\* urn:oasis:names:tc:SAML:2.0:nameid-format:persistent\* urn:oasis:names:tc:SAML:2.0:nameid-format:transient |
| `protocolVersion`              | String  | Required  | Mutable  | The SAML protocol version supported: `2.0`, `1.1`, or `1.0`.                                                                                                                                                                                                    |
| `slo`                          | Object  | Optional  | Mutable  | The Single Logout information.                                                                                                                                                                                                                                  |
| `slo.requestEndpoint`          | String  | Optional  | Mutable  | The endpoint where SLO requests are sent.                                                                                                                                                                                                                       |
| `slo.responseEndpoint`         | String  | Optional  | Mutable  | The endpoint where SLO responses are sent.                                                                                                                                                                                                                      |
| `slo.binding`                  | String  | Optional  | Mutable  | The SLO binding. Must be either `HTTP_POST` or `HTTP_REDIRECT`                                                                                                                                                                                                  |
| `thirdParty`                   | Object  | Optional  | Mutable  | Third-party IdP information.                                                                                                                                                                                                                                    |
| `thirdParty.metadata`          | Object  | Optional  | Mutable  | The third-party IdP metadata.                                                                                                                                                                                                                                   |
| `thirdParty.metadata.href`     | String  | Optional  | Mutable  | URL of IdP's SAML metadata XML.                                                                                                                                                                                                                                 |
| `thirdParty.instructions.href` | String  | Optional  | Mutable  | URL of IdP's setup instructions.                                                                                                                                                                                                                                |

## Attribute data model

Only available for SAML integration metadata. The attribute data is used to store any attributes that are predefined by providers.

| Property         | Type    | Required? | Mutable?  | Description                                                                                                                                      |
| ---------------- | ------- | --------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`             | String  | Required  | Mutable   | Auto-generated ID of this attribute.                                                                                                             |
| `integration`    | Object  | Required  | Read only | The parent integration of the integration version.                                                                                               |
| `integration.id` | String  | Required  | Immutable | The platform-generated ID of the parent integration.                                                                                             |
| `name`           | String  | Optional  | Mutable   | Attribute name the application expects. Unique within the integration version and in the form `urn:oasis:names:tc:SAML:2.0:attrname-format:uri`. |
| `required`       | Boolean | Optional  | Mutable   | Whether or not the attribute is required. If true, the `value` property must be set with a non-empty value. Default is false.                    |
| `schema`         | String  | Required  | Mutable   | A JSON schema describing the current attribute mapping.                                                                                          |
| `version`        | Object  | Required  | Read only | The relationship to the parent integration version.                                                                                              |
| `version.id`     | String  | Required  | Immutable | The platform-generated ID of the parent integration version.                                                                                     |
