Cisco Crosswork Workflow Manager Secrets API

Create, read, update and delete Crosswork Workflow Manager secrets, and read the secret types that define them, so credentials never sit inside a workflow definition.

OpenAPI Specification

cisco-crosswork-cwm-secrets-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Cisco Crosswork Workflow Manager Secrets API
  description: Cisco Crosswork Workflow Manager (CWM) 2.1 offers RESTful APIs that enable automation engineers and
    developers to create, deploy, and manage workflows, adapters, jobs, resources, events, and workers within the
    Cisco CWM platform.
  version: 2.1.0
  termsOfService: https://www.cisco.com/c/en/us/about/legal/terms-conditions.html
  contact:
    name: API Support
    url: https://www.cisco.com/support
  x-provenance:
    method: harvested
    authored_by: Cisco Crosswork
    harvested_by: API Evangelist
    harvested_on: '2026-08-19'
    first_party: true
    provider_published: true
    note: Refined from Cisco's own Crosswork Workflow Manager 2.1 Swagger 2.0 reference (see openapi/_original/cisco-crosswork-cwm-workflow-manager-openapi.json).
      Converted to OpenAPI 3.2.0 and split by tag; operationIds absent from Cisco's source were synthesised deterministically
      from method+path.
  x-evidence:
  - type: source
    url: https://developer.cisco.com/docs/crosswork/workflow-manager/
  - type: raw
    url: https://pubhub.devnetcloud.com/media/crosswork-workflow-manager-api-document/docs/262737b2-b3c2-32cd-b07b-fdbdcd23918f/apis/
servers:
- url: /crosswork/cwm/v2
  description: Relative to the customer-deployed Crosswork Workflow Manager host (https://{cwm-host}:{port})
tags:
- name: secrets
paths:
  /secret:
    get:
      summary: List all secrets.
      description: Retrieve a list of all available secrets stored in the system.
      operationId: list_secrets
      tags:
      - secrets
      responses:
        '200':
          description: Secrets retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/server.SecretList'
        '400':
          description: Bad request.
          content:
            application/json:
              schema:
                type: string
      security:
      - Bearer: []
    post:
      summary: Add a new secret.
      description: Add a new secret to the secret store.
      operationId: create_secret
      tags:
      - secrets
      requestBody:
        description: Secret to add to the store.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/server.SecretAddRequest'
      responses:
        '201':
          description: Secret created successfully.
          content:
            application/json:
              schema:
                type: string
        '400':
          description: Bad request.
          content:
            application/json:
              schema:
                type: string
      security:
      - Bearer: []
  /secret/{secretId}:
    delete:
      summary: Delete a secret by ID.
      description: Delete a specific secret from the database using its ID.
      operationId: delete_secret
      tags:
      - secrets
      parameters:
      - name: secretId
        in: path
        description: Secret ID.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Secret deleted successfully.
          content:
            application/json:
              schema:
                type: string
        '400':
          description: Bad request.
          content:
            application/json:
              schema:
                type: string
      security:
      - Bearer: []
    get:
      summary: Get a specific secret by ID.
      description: Retrieve the details of a specific secret by its ID.
      operationId: get_secret
      tags:
      - secrets
      parameters:
      - name: secretId
        in: path
        description: Secret ID.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Secret retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/server.SecretGetResponse'
        '400':
          description: Bad request.
          content:
            application/json:
              schema:
                type: string
      security:
      - Bearer: []
    patch:
      summary: Update a secret.
      description: Update an existing secret’s payload.
      operationId: update_secret
      tags:
      - secrets
      parameters:
      - name: secretId
        in: path
        description: Secret ID.
        required: true
        schema:
          type: string
      requestBody:
        description: Secret update payload.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/server.SecretUpdateRequest'
      responses:
        '200':
          description: Secret updated successfully.
          content:
            application/json:
              schema:
                type: string
        '400':
          description: Bad request.
          content:
            application/json:
              schema:
                type: string
      security:
      - Bearer: []
  /secretType:
    get:
      summary: List all secret types.
      description: Retrieve a list of all available secret types.
      operationId: list_secret_types
      tags:
      - secrets
      responses:
        '200':
          description: Secret types retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/server.SecretTypeListResponse'
        '400':
          description: Bad request.
          content:
            application/json:
              schema:
                type: string
      security:
      - Bearer: []
  /secretType/{secretTypeId}:
    get:
      summary: List secrets by secret type.
      description: Retrieve a list of secrets associated with a specific secret type.
      operationId: get_secret_type
      tags:
      - secrets
      parameters:
      - name: secretTypeId
        in: path
        description: Secret Type ID.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Secrets retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/server.SecretList'
        '404':
          description: Secret type not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/server.HTTPError'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/server.HTTPError'
      security:
      - Bearer: []
components:
  securitySchemes:
    Bearer:
      type: apiKey
      name: Authorization
      in: header
      description: 'JWT Authorization header using the Bearer scheme. Example: "Authorization: Bearer {token}"'
  schemas:
    models.SecretType:
      type: object
      properties:
        description:
          type: string
        schema:
          type: object
        secretTypeId:
          type: string
    server.HTTPError:
      type: object
      properties:
        code:
          type: integer
          example: 400
        message:
          type: string
          example: status bad request
    server.SecretAddRequest:
      type: object
      properties:
        secret:
          type: object
        secretId:
          type: string
        secretType:
          type: string
    server.SecretGetResponse:
      type: object
      properties:
        secretId:
          type: string
        secretType:
          type: string
    server.SecretList:
      type: object
      properties:
        secrets:
          type: array
          items:
            $ref: '#/components/schemas/server.SecretGetResponse'
    server.SecretTypeListResponse:
      type: object
      properties:
        secretTypes:
          type: array
          items:
            $ref: '#/components/schemas/models.SecretType'
    server.SecretUpdateRequest:
      type: object
      properties:
        secret:
          type: object
        secretType:
          type: string
security:
- Bearer: []