---
title: OCP developer platform overview
slug: optimizely-connect-platform/docs/developer-platform-overview-ocp2
docTags: 
createdAt: 2026-07-23T12:37:03.354Z
---

The Optimizely Connect Platform (OCP) developer platform lets you build custom apps that sync third-party data to OCP. This data can then sync to other Optimizely products to enable more personalized experiences.

The developer platform includes the following components:

- **Serverless compute platform** – Provides Optimizely-managed server space and infrastructure to build your apps.
- **Development environment** – Offers a command-line interface (CLI) that lets you manage your apps (including scaffolding, key-value storage, and more) and SDKs for interacting with OCP APIs.
- **Developer Portal** – Provides a user interface in OCP where you generate and manage your API key, register apps, and view your apps and their installed versions. View the **Developer Portal** in OCP instances where you have the **Developer** role. See [Developer Portal overview](docId\:mAHird1ThWGsH0Z0LJyaN) for information on access, roles, registration, and generating the API key.
- **App marketplace** – Lets you submit your apps for review to be listed by OCP as one of the following:
  - **Publicly** – Available to all Optimizely customers.
  - **Privately** – Available to only selected OCP accounts.

## App types

OCP supports four app types. All developed apps, regardless of type, display in the [OCP App Directory](docId\:kxAXlnJ4jG30wcVnhkwwy). For guidance on choosing an app type, see [Plan your app](docId:7hUWxLOUlUd_YjHaL0bPk).

![](https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/pl0A1GkEWrQEOTbXdKDDE_8bee482b255feea4c2424bf10141ff05cb7f4ca1bd6e89effa1daf96f4f14d1d-ocp-free-ui.png)

### Data sync source

A data sync source provides data from an external system to OCP through the [Sync Manager](docId\:dxH8n7k3o7OQ2ha375xR1). End-users select it as a custom source in any data sync, letting them route external data into Optimizely products such as Optimizely CMS.

See [Custom data sync sources](docId:6hgAikH6TMV9ClfpfPARu) for implementation details.

### Data sync destination

A data sync destination receives data from OCP and sends it to an external system through the Sync Manager. End-users select it as a custom destination in any data sync, letting them export Optimizely data, such as CMS content from Graph or assets from Optimizely CMP, to an external platform.

See [Custom data sync destinations](docId\:BTc-4lFtFEuRGxeCsjnk0) for implementation details.

### Mark tool

A Agent Platform tool extends Mark with custom tool capabilities. Use this type when you want Mark to retrieve data or perform actions in external systems on behalf of the user.

See [Add a custom tool to Mark](docId:1GdHO3DW4xZfN08J9ns92) for Mark tool hosting documentation, and the [Mark tool reference app end-to-end guide](docId\:partaPpjX0Gcet9jbZOns) for a complete developer walkthrough.

### Generic

A generic app is the standard OCP app type with functions, jobs, a settings form, and lifecycle hooks. Use this type for integrations that do not fit a specialized type, including end-to-end apps that handle the full sync logic between two fixed systems with their own authorization and schema management.

See [Plan your app](docId:7hUWxLOUlUd_YjHaL0bPk) for app type selection guidance and [App structure](docId\:LwKaxpvsF3FH7E61nEcAp) for the project layout.
