Newscred Workflows API
The Workflows API from Newscred — 2 operation(s) for workflows.
The Workflows API from Newscred — 2 operation(s) for workflows.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/newscred-workflows-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Optimizely CMP Open API Documentation Workflows API
version: V3
servers:
- description: v3 version of Optimizely CMP Open API
url: https://api.cmp.optimizely.com/v3
security:
- OAuth2:
- openid
- profile
- offline_access
tags:
- name: Workflows
paths:
/workflows:
get:
description: <span style="background-color:#e95f6a;padding:5px;border-radius:5px">Experimental</span> Get a list of workflows.
operationId: listWorkflows
parameters:
- $ref: '#/components/parameters/offset'
- $ref: '#/components/parameters/page_size'
responses:
'200':
content:
application/json:
schema:
additionalProperties: false
properties:
data:
description: List of workflows
items:
$ref: '#/components/schemas/WorkflowListResponseItem'
type: array
pagination:
allOf:
- $ref: '#/components/schemas/Pagination'
- properties:
next:
example: https://api.cmp.optimizely.com/v3/workflows?offset=10&page_size=10
type:
- string
- 'null'
type: object
required:
- data
- pagination
type: object
description: List of fetched workflows
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
summary: GET /workflows
tags:
- Workflows
/workflows/{workflow_id}:
get:
description: <span style="background-color:#e95f6a;padding:5px;border-radius:5px">Experimental</span> Get a workflow by ID.
operationId: getWorkflow
parameters:
- example: 5fe4925ef8a9378056bf4e37
in: path
name: workflow_id
required: true
schema:
description: Unique identifier of the workflow
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/WorkflowResponse'
description: Fetched workflow
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
summary: GET /workflows/{workflow_id}
tags:
- Workflows
components:
schemas:
FieldTypeSimpleNumber:
allOf:
- $ref: '#/components/schemas/FieldBaseType'
- properties:
decimal_places:
description: Decimal place of the numerical field
example: 2
type:
- integer
- 'null'
has_thousand_separator:
description: Whether the numerical field has a thousand separator
example: true
type: boolean
required:
- has_thousand_separator
- decimal_places
type: object
WorkflowListResponseItem:
additionalProperties: false
properties:
description:
description: Description of the workflow
example: Nice description
type:
- string
- 'null'
id:
description: Unique identifier of the workflow
example: 6e7f910551b00a722e04188
type: string
is_flexible:
description: Indicates whether the workflow is flexible
example: true
type: boolean
name:
description: Name of the workflow
example: The awesome workflow
type: string
required:
- id
- name
- description
- is_flexible
type: object
FieldTypeCheckbox:
allOf:
- $ref: '#/components/schemas/FieldBaseType'
- properties:
choices:
description: Choices of the checkbox
items:
properties:
id:
description: Identifier of the choice
example: 6ceee2f4fa3411ecb37802420ac8001b
type: string
name:
description: Name of the choice
example: Checkbox 1 Choice 1
type: string
required:
- id
- name
- color
type: object
type: array
required:
- choices
type: object
FieldTypeCommon:
allOf:
- $ref: '#/components/schemas/FieldBaseType'
- type: object
Pagination:
additionalProperties: false
description: Pagination related information
properties:
next:
description: URL to the next page
example: https://api.cmp.optimizely.com/<some-path-to-next-page>?offset=10&page_size=10
type:
- string
- 'null'
previous:
description: URL to the previous page
example: null
type:
- string
- 'null'
required:
- next
- previous
type: object
FieldTypeRadio:
allOf:
- $ref: '#/components/schemas/FieldBaseType'
- properties:
choices:
description: Choices of the radio button
items:
properties:
id:
description: Identifier of the choice
example: 6ceee2f4fa3411ecb37802420ac8001b
type: string
name:
description: Name of the choice
example: Radio 1 Choice 1
type: string
required:
- id
- name
- color
type: object
type: array
required:
- choices
type: object
WorkflowResponse:
additionalProperties: false
properties:
description:
description: Description of the workflow
example: Nice description
type:
- string
- 'null'
fields:
description: List of fields
items:
$ref: '#/components/schemas/ObjectFieldCreateResponse'
type: array
id:
description: Unique identifier of the workflow
example: 6e7f910551b00a722e04188
type: string
is_active:
description: Indicates whether the workflow is active
example: true
type: boolean
is_asset_approval_enabled:
description: Indicates whether the asset approval of a workflow is enabled
example: true
type: boolean
is_flexible:
description: Indicates whether the workflow is flexible
example: true
type: boolean
is_resource_management_enabled:
description: Indicates whether the resource management of a workflow is enabled
example: true
type: boolean
is_smart_duration_enabled:
description: Indicates whether the smart duration of a workflow is enabled
example: true
type: boolean
name:
description: Name of the workflow
example: The awesome workflow
type: string
steps:
description: List of steps
items:
properties:
id:
description: Identifier of the step
example: 6e7f910551b00a722e04181
type: string
name:
description: Name of the step
example: Step 1
type: string
sub_steps:
description: List of sub-steps
items:
properties:
actions:
description: List of actions of a sub-step
example:
- name: Approve
- name: Find Content
- name: Write/Edit Content
- name: Publish
- name: Set Publish Destination
- name: Edit Fields
- name: Set Publish Date
- name: Write/Edit Share
- name: Select Image
items:
properties:
name:
description: Name of the action
example: Approve
type: string
required:
- name
type: object
type: array
assignees:
description: List of assignees of a sub-step
items:
properties:
id:
description: Identifier of the sub-step assignee
example: 6e7f910551b00a722e04182
type: string
links:
description: Meta links
properties:
self:
description: URL of the assignee
example: https://api.cmp.optimizely.com/v3/users/6e7f910551b00a722e04182
type: string
required:
- self
type: object
name:
description: Name of the assignee
example: Ned Stark
type: string
type:
description: Type of the assignee
enum:
- user
- team
example: user
type: string
required:
- id
- name
- type
- links
type: object
type: array
id:
description: Identifier of the sub-step
example: 6e7f910551b00a722e04182
type: string
name:
description: Name of the sub-step
example: Step 1 Substep 1
type: string
type:
description: Type of the sub-step
enum:
- default
- external
example: default
type: string
required:
- id
- name
- actions
- type
- assignees
type: object
type: array
required:
- id
- name
- sub_steps
type: object
type: array
required:
- id
- name
- description
- is_active
- is_flexible
- is_smart_duration_enabled
- is_asset_approval_enabled
- is_resource_management_enabled
- steps
- fields
type: object
ObjectFieldCreateResponse:
additionalProperties: false
discriminator:
mapping:
checkbox: '#/components/schemas/FieldTypeCheckbox'
currency_number: '#/components/schemas/FieldTypeCurrencyNumber'
date: '#/components/schemas/FieldTypeCommon'
dropdown: '#/components/schemas/FieldTypeDropdown'
image: '#/components/schemas/FieldTypeCommon'
label: '#/components/schemas/FieldTypeLabel'
percentage_number: '#/components/schemas/FieldTypePercentageNumber'
radio_button: '#/components/schemas/FieldTypeRadio'
rich_text: '#/components/schemas/FieldTypeCommon'
simple_number: '#/components/schemas/FieldTypeSimpleNumber'
text: '#/components/schemas/FieldTypeCommon'
text_area: '#/components/schemas/FieldTypeCommon'
video: '#/components/schemas/FieldTypeCommon'
propertyName: type
oneOf:
- $ref: '#/components/schemas/FieldTypeCommon'
- $ref: '#/components/schemas/FieldTypeLabel'
- $ref: '#/components/schemas/FieldTypeDropdown'
- $ref: '#/components/schemas/FieldTypeRadio'
- $ref: '#/components/schemas/FieldTypeCheckbox'
- $ref: '#/components/schemas/FieldTypeSimpleNumber'
- $ref: '#/components/schemas/FieldTypePercentageNumber'
- $ref: '#/components/schemas/FieldTypeCurrencyNumber'
type: object
FieldBaseType:
additionalProperties: false
properties:
id:
description: Identifier of the field
example: 64be245ec0d79e79fdf1ad84
type: string
name:
description: Name of the field
example: Dropdown 101
type: string
type:
description: Type of the field
example: text
type: string
values:
description: List of selected values or from user input
items:
type: string
type: array
required:
- id
- name
- type
- values
type: object
FieldTypeLabel:
allOf:
- $ref: '#/components/schemas/FieldBaseType'
- properties:
choices:
description: Choices of the label
items:
properties:
id:
description: Identifier of the choice
example: 6ceee2f4fa3411ecb37802420ac8001b
type: string
name:
description: Name of the choice
example: Label 1 Choice 1
type: string
required:
- id
- name
- color
type: object
type: array
is_multi_select:
description: Select multiple values from the label
type: boolean
required:
- is_multi_select
- choices
type: object
FieldTypeDropdown:
allOf:
- $ref: '#/components/schemas/FieldBaseType'
- properties:
choices:
description: Choices of the dropdown
items:
properties:
id:
description: Identifier of the choice
example: 6ceee2f4fa3411ecb37802420ac8001b
type: string
name:
description: Name of the choice
example: Dropdown 1 Choice 1
type: string
required:
- id
- name
type: object
type: array
is_multi_select:
description: Select multiple values from the dropdown
type: boolean
required:
- is_multi_select
- choices
type: object
FieldTypeCurrencyNumber:
allOf:
- $ref: '#/components/schemas/FieldBaseType'
- properties:
currency_code:
description: Currency code of the numerical field
example: USD
type: string
decimal_places:
description: Decimal place of the numerical field
example: 2
type:
- integer
- 'null'
has_thousand_separator:
description: Whether the numerical field has a thousand separator
example: true
type: boolean
required:
- has_thousand_separator
- decimal_places
- currency_code
type: object
Error:
additionalProperties: true
description: Error payload
properties:
errors:
additionalProperties: true
description: Additional information
properties: {}
type: object
message:
description: Message describing the error
example: Not found
type: string
required:
- message
type: object
FieldTypePercentageNumber:
allOf:
- $ref: '#/components/schemas/FieldBaseType'
- properties:
decimal_places:
description: Decimal place of the numerical field
example: 2
type:
- integer
- 'null'
required:
- decimal_places
type: object
responses:
Forbidden:
content:
application/json:
example:
message: You do not have the permission to perform this operation
schema:
$ref: '#/components/schemas/Error'
description: Permission error
NotFound:
content:
application/json:
example:
message: Resource not found
schema:
$ref: '#/components/schemas/Error'
description: Not found error
Unauthorized:
content:
application/json:
example:
message: Unauthorized
schema:
$ref: '#/components/schemas/Error'
description: Authorization error
parameters:
page_size:
description: Number of results to return per page
example: 15
in: query
name: page_size
schema:
default: 10
maximum: 100
minimum: 1
type: integer
offset:
description: Starting index of results (zero indexed)
example: 5
in: query
name: offset
schema:
default: 0
minimum: 0
type: integer
securitySchemes:
OAuth2:
flows:
authorizationCode:
authorizationUrl: https://accounts.cmp.optimizely.com/o/oauth2/v1/auth
scopes:
offline_access: Grants the ability to refresh access_token using the refresh token even when user is not present (not logged in).
openid: Grants the ability to receive a unique identifier for the user.
profile: Grants access to user profile information.
tokenUrl: https://accounts.cmp.optimizely.com/o/oauth2/v1/token
clientCredentials:
scopes: {}
tokenUrl: https://accounts.cmp.optimizely.com/o/oauth2/v1/token
type: oauth2
x-tagGroups:
- name: API
tags:
- Uploader
- Library
- Labels
- Brand Compliance
- Tasks
- Task Step
- Campaigns
- Publishing
- Templates
- Users
- Work Requests
- Structured Contents
- Assets
- Milestones
- Teams
- Settings
- Workflows
- Fields
- Events