openapi: 3.0.1 info: title: Coveo Activity Activities Snapshot Synchronization API description: API for Coveo Platform termsOfService: https://www.coveo.com/en/support/terms-agreements contact: name: Coveo url: https://connect.coveo.com/s/discussions version: 1.0.0 servers: - url: https://platform.cloud.coveo.com description: Coveo public API endpoint security: - oauth2: - full tags: - name: Snapshot Synchronization paths: /rest/organizations/{organizationId}/snapshots/{snapshotId}/synchronization/{synchronizationPlanId}: get: tags: - Snapshot Synchronization summary: Show Synchronization Plan description: 'Shows a snapshot synchronization plan.
**Required privileges:**
- `Snapshot - View`
- `Link - View`

Privilege required ``` {"owner":"PLATFORM","targetDomain":"SNAPSHOTS","type":"VIEW","targetId":"*"} AND {"owner":"PLATFORM","targetDomain":"LINK","type":"VIEW","targetId":"*"} ```
' operationId: getSynchronizationPlan parameters: - name: organizationId in: path description: The unique identifier of the [organization](https://docs.coveo.com/en/185/).
**Example:** `destinationorganizationg7dg3gd` required: true schema: type: string - name: snapshotId in: path description: The unique identifier of the target snapshot.
**Example:** `destinationorganization-xzgbf5rdaiqtaznvh74zdwcedi` required: true schema: type: string - name: synchronizationPlanId in: path description: The unique identifier of the target synchronization plan.
**Example:** `destinationorganizationg7dg3gd-spnyvuywz6nbnqgujuwtlq2d7e` required: true schema: type: string responses: '200': description: OK content: '*/*': schema: $ref: '#/components/schemas/SynchronizationPlanModel' x-pretty-name: getSynchronizationPlan x-required-privilege: owner: PLATFORM targetDomain: SNAPSHOTS type: VIEW targetId: '*' x-required-privileges: - owner: PLATFORM targetDomain: SNAPSHOTS type: VIEW targetId: '*' - owner: PLATFORM targetDomain: LINK type: VIEW targetId: '*' x-ui-operation-id: /rest/organizations/paramId/snapshots/paramId/synchronization/paramId_get put: tags: - Snapshot Synchronization summary: Update Synchronization Plan description: 'Updates a snapshot synchronization plan.
**Required privileges:**
- `Snapshot - Edit`
- `Link - View`

Privilege required ``` {"owner":"PLATFORM","targetDomain":"SNAPSHOTS","type":"EDIT","targetId":"*"} ```
' operationId: updateSynchronizationPlan parameters: - name: organizationId in: path description: The unique identifier of the [organization](https://docs.coveo.com/en/185/).
**Example:** `destinationorganizationg7dg3gd` required: true schema: type: string - name: snapshotId in: path description: The unique identifier of the target snapshot.
**Example:** `destinationorganization-xzgbf5rdaiqtaznvh74zdwcedi` required: true schema: type: string - name: synchronizationPlanId in: path description: The unique identifier of the target synchronization plan.
**Example:** `destinationorganizationg7dg3gd-spnyvuywz6nbnqgujuwtlq2d7e` required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/SynchronizationPlanModel' required: true responses: '200': description: OK content: '*/*': schema: $ref: '#/components/schemas/SynchronizationPlanModel' x-pretty-name: updateSynchronizationPlan x-required-privilege: owner: PLATFORM targetDomain: SNAPSHOTS type: EDIT targetId: '*' x-required-privileges: - owner: PLATFORM targetDomain: SNAPSHOTS type: EDIT targetId: '*' x-ui-operation-id: /rest/organizations/paramId/snapshots/paramId/synchronization/paramId_put /rest/organizations/{organizationId}/snapshots/{snapshotId}/synchronization/{synchronizationPlanId}/children: put: tags: - Snapshot Synchronization summary: Update Synchronization Plan Children description: 'Updates child resource associations in a synchronization plan given a target parent association.
**Required privileges:**
- `Snapshot - Edit`
- `Link - View`

Privilege required ``` {"owner":"PLATFORM","targetDomain":"SNAPSHOTS","type":"VIEW","targetId":"*"} AND {"owner":"PLATFORM","targetDomain":"LINK","type":"VIEW","targetId":"*"} ```
' operationId: computeChildrenOperations parameters: - name: organizationId in: path description: The unique identifier of the [organization](https://docs.coveo.com/en/185/).
**Example:** `destinationorganizationg7dg3gd` required: true schema: type: string - name: snapshotId in: path description: The unique identifier of the target snapshot.
**Example:** `destinationorganization-xzgbf5rdaiqtaznvh74zdwcedi` required: true schema: type: string - name: synchronizationPlanId in: path description: The unique identifier of the target synchronization plan.
**Example:** `destinationorganizationg7dg3gd-spnyvuywz6nbnqgujuwtlq2d7e` required: true schema: type: string - name: parentResourceType in: query description: The `resourceType` of the parent resource.
**Example:** `QUERY_PIPELINE` required: true schema: type: string enum: - CATALOG_CONFIG - CATALOG - EXTENSION - FIELD - FILTER - INSIGHT_PANEL_INTERFACE - INSIGHT_PANEL_CONFIGURATION - MAPPING - ML_MODEL - ML_MODEL_ASSOCIATION - QUERY_PARAMETER - QUERY_PIPELINE - QUERY_PIPELINE_CONDITION - RANKING_EXPRESSION - RANKING_WEIGHT - RESULT_RANKING - FEATURED_RESULT - SEARCH_PAGE - SECURITY_PROVIDER - SOURCE - STATEMENT_GROUP - SETTING - STOP_WORD - STOREFRONT_ASSOCIATION - SUBSCRIPTION - THESAURUS - TRACKING_ID - TRIGGER - UNKNOWN - name: snapshotParentResourceName in: query description: The `resourceName` of the parent resource.
**Example:** `my_pipeline_aAePCD` required: true schema: type: string - name: targetParentId in: query description: The unique identifier of the parent resource in the target organization.
**Example:** `destinationorganizationg7dg3gd-qvml6dkyvouchhehsjhxxbkgqq` required: true schema: type: string responses: '200': description: OK content: '*/*': schema: $ref: '#/components/schemas/SynchronizationPlanModel' x-pretty-name: computeChildrenOperations x-required-privilege: owner: PLATFORM targetDomain: SNAPSHOTS type: VIEW targetId: '*' x-required-privileges: - owner: PLATFORM targetDomain: SNAPSHOTS type: VIEW targetId: '*' - owner: PLATFORM targetDomain: LINK type: VIEW targetId: '*' x-ui-operation-id: /rest/organizations/paramId/snapshots/paramId/synchronization/paramId/children_put /rest/organizations/{organizationId}/snapshots/{snapshotId}/synchronization/{synchronizationPlanId}/apply: put: tags: - Snapshot Synchronization summary: Apply Synchronization Plan description: 'Applies a snapshot synchronization plan.
**Required privileges:**
- `Snapshot - Edit`
- `Link - Edit`

Privilege required ``` {"owner":"PLATFORM","targetDomain":"SNAPSHOTS","type":"EDIT","targetId":"*"} AND {"owner":"PLATFORM","targetDomain":"LINK","type":"EDIT","targetId":"*"} ```
' operationId: applySynchronizationPlan parameters: - name: organizationId in: path description: The unique identifier of the [organization](https://docs.coveo.com/en/185/).
**Example:** `destinationorganizationg7dg3gd` required: true schema: type: string - name: snapshotId in: path description: The unique identifier of the target snapshot.
**Example:** `destinationorganization-xzgbf5rdaiqtaznvh74zdwcedi` required: true schema: type: string - name: synchronizationPlanId in: path description: The unique identifier of the target synchronization plan.
**Example:** `destinationorganizationg7dg3gd-spnyvuywz6nbnqgujuwtlq2d7e` required: true schema: type: string - name: overrideExistingLinks in: query description: Whether to use the links in the target synchronization plan to override the ones already existing in the organization if conflicts arise, rather than throwing an error.
**Default:** `false` required: false schema: type: boolean default: false responses: '200': description: OK content: '*/*': schema: $ref: '#/components/schemas/SynchronizationReportModel' x-pretty-name: applySynchronizationPlan x-required-privilege: owner: PLATFORM targetDomain: SNAPSHOTS type: EDIT targetId: '*' x-required-privileges: - owner: PLATFORM targetDomain: SNAPSHOTS type: EDIT targetId: '*' - owner: PLATFORM targetDomain: LINK type: EDIT targetId: '*' x-ui-operation-id: /rest/organizations/paramId/snapshots/paramId/synchronization/paramId/apply_put /rest/organizations/{organizationId}/snapshots/{snapshotId}/synchronization: post: tags: - Snapshot Synchronization summary: Create Synchronization Plan description: 'Creates a snapshot synchronization plan.
**Required privileges:**
- `Snapshot - Edit`
- `Link - View`

Privilege required ``` {"owner":"PLATFORM","targetDomain":"SNAPSHOTS","type":"EDIT","targetId":"*"} AND {"owner":"PLATFORM","targetDomain":"LINK","type":"VIEW","targetId":"*"} ```
' operationId: createSynchronizationPlan parameters: - name: organizationId in: path description: The unique identifier of the [organization](https://docs.coveo.com/en/185/).
**Example:** `destinationorganizationg7dg3gd` required: true schema: type: string - name: snapshotId in: path description: The unique identifier of the target snapshot.
**Example:** `destinationorganization-xzgbf5rdaiqtaznvh74zdwcedi` required: true schema: type: string responses: '201': description: Created content: '*/*': schema: $ref: '#/components/schemas/SynchronizationPlanModel' x-pretty-name: createSynchronizationPlan x-required-privilege: owner: PLATFORM targetDomain: SNAPSHOTS type: EDIT targetId: '*' x-required-privileges: - owner: PLATFORM targetDomain: SNAPSHOTS type: EDIT targetId: '*' - owner: PLATFORM targetDomain: LINK type: VIEW targetId: '*' x-ui-operation-id: /rest/organizations/paramId/snapshots/paramId/synchronization_post components: schemas: LinkModel: type: object properties: id: type: string description: The unique identifier of the link, if it already exists. example: tngt45tayqj6op3zt22rf22ek organizationId: type: string description: The unique identifier of the destination organization. example: '`destinationorganizationg7dg3gd`' resourceName: type: string description: The unique identifier of the resource in the snapshot that allows tracking across organizations. example: myextension_aAePCD resourceType: type: string description: The type of the resource. enum: - CATALOG_CONFIG - CATALOG - EXTENSION - FIELD - FILTER - INSIGHT_PANEL_INTERFACE - INSIGHT_PANEL_CONFIGURATION - MAPPING - ML_MODEL - ML_MODEL_ASSOCIATION - QUERY_PARAMETER - QUERY_PIPELINE - QUERY_PIPELINE_CONDITION - RANKING_EXPRESSION - RANKING_WEIGHT - RESULT_RANKING - FEATURED_RESULT - SEARCH_PAGE - SECURITY_PROVIDER - SOURCE - STATEMENT_GROUP - SETTING - STOP_WORD - STOREFRONT_ASSOCIATION - SUBSCRIPTION - THESAURUS - TRACKING_ID - TRIGGER - UNKNOWN resourceId: type: string description: The unique identifier of the resource in the destination organization. example: destinationorganizationg7dg3gd-qvml6dkyvouchhehsjhxxbkgqq description: The link definition. ReportResourceSynchronizationOperationsModel: type: object properties: resourceName: type: string description: The unique identifier of the resource in the snapshot that allows tracking across organizations. example: '`myrankingexpression_aAePCD`' displayName: type: string description: The name of the resource in your organization. example: '`myrankingexpression`' parentResourceId: type: string description: The resourceId of the parent resource, if applicable. example: mypipeline_f8dh8sh4 matches: type: array description: The matches of the resource. items: $ref: '#/components/schemas/MatchModel' description: The links of the resource. SynchronizationReportModel: type: object properties: id: type: string description: The unique identifier of the synchronization operation. example: '`startingorganizationg8tp8wu3-upxq6zdy5lueuidcksoadlsl3e`' updatedDate: type: string description: The date at which the report was created in number of milliseconds since UNIX epoch. format: date-time synchronizationPlanId: type: string description: The unique identifier of the synchronization plan. example: '`startingorganizationg8tp8wu3-xqtzk7c2lnskasagcxy75xkgp`' type: type: string description: The synchronization operation type. enum: - CREATE_SNAPSHOT - DRY_RUN - APPLY - CREATE_SYNCHRONIZATION_PLAN - APPLY_SYNCHRONIZATION_PLAN - GENERATE_DIFF status: type: string description: The synchronization operation status. enum: - PENDING - IN_PROGRESS - COMPLETED - ABORTED resultCode: type: string description: The synchronization operation result code at the end of the operation, if applicable. enum: - AUTO_SYNCHRONIZATION_FAILURE - EXTERNAL_SERVICE_COMMUNICATION_ERROR - RESOURCE_DEPENDENCY_CYCLE - RESOURCES_IN_ERROR - SUCCESS - UNABLE_TO_PUSH_TO_ORGANIZATION - UNABLE_TO_RETRIEVE_RESOURCES - UNEXPECTED_ERROR - UNSUPPORTED_RESOURCE resourcesProcessed: type: integer description: The number of resources processed by the synchronization. format: int32 linkOperations: type: object additionalProperties: $ref: '#/components/schemas/SynchronizationReportLinkOperationsModel' description: The summaries of the outcome of the link operations for the different resource types. linkOperationDetails: type: object additionalProperties: type: object additionalProperties: type: string description: An object containing details about link operation failures, if applicable. description: An object containing details about link operation failures, if applicable. description: An object containing details about link operation failures, if applicable. description: A snapshot synchronization report. SynchronizationReportLinkOperationsModel: type: object properties: linksCreated: type: integer description: The number of synchronization links created. format: int32 linksOverridden: type: integer description: The number of synchronization links overridden. format: int32 linksInError: type: integer description: The number of synchronization links in error. format: int32 description: A summary of the outcome of the link operations. ReportResourceAlreadyLinkedModel: type: object properties: resourceName: type: string description: The unique identifier of the resource in the snapshot that allows tracking across organizations. example: '`myrankingexpression_aAePCD`' displayName: type: string description: The name of the resource in your organization. example: '`myrankingexpression`' linkModel: $ref: '#/components/schemas/LinkModel' description: A preexisting link. SynchronizationPlanModel: type: object properties: id: type: string description: The unique identifier of the snapshot synchronization plan. example: destinationorganizationg7dg3gd-vfjwjnn6shwxjjd5vujhu22k5u snapshotId: type: string description: The unique identifier of the target snapshot. example: destinationorganizationg7dg3gd-wbbkq2fg6zprmdsegcqfbocdwq status: type: string description: The status of the snapshot synchronization plan. enum: - CREATING - CREATED - IN_ERROR alreadyLinkedResources: type: object additionalProperties: uniqueItems: true type: array description: For each resource type, the pre-existing links, if applicable. items: $ref: '#/components/schemas/ReportResourceAlreadyLinkedModel' description: For each resource type, the pre-existing links, if applicable. resourceSynchronizationOperations: type: object additionalProperties: type: array description: The link operations performed when applying the synchronization plan. items: $ref: '#/components/schemas/ReportResourceSynchronizationOperationsModel' description: The link operations performed when applying the synchronization plan. description: The updated synchronization plan. MatchModel: type: object properties: linkModel: $ref: '#/components/schemas/LinkModel' associationScore: type: number description: A number between `0` and `1` denoting the degree of confidence in the match, where`1` is the highest and `0` is the lowest. format: float displayName: type: string description: The human-readable name of the resource in the target organization. example: myextension description: The matches of the resource. securitySchemes: oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://platform.cloud.coveo.com/oauth/authorize tokenUrl: https://platform.cloud.coveo.com/oauth/token scopes: full: required