Apigee · Arazzo Workflow

Apigee Integration Auth Setup

Version 1.0.0

Create an auth config, list auth configs to confirm it, then author an integration version.

1 workflow 1 source API 1 provider
View Spec View on GitHub Advanced API SecurityAgentic AIAnalyticsAPI GatewayAPI GovernanceAPI HubAPI ManagementDeveloper PortalEnterpriseGenerative AIHybridIntegrationsMicroservicesMCPModel Context ProtocolMonetizationArazzoWorkflows

Provider

apigee

Workflows

setup-integration-auth
Create an auth config, verify it, and author an integration version.
Creates an auth config, lists auth configs to confirm registration, and creates a draft integration version.
3 steps inputs: authConfigDisplayName, credentialType, integrationId, locationId, productId, projectId, versionDescription outputs: authConfigName, authConfigs, versionName
1
createAuthConfig
createAuthConfig
Create an auth config that integrations will use to authenticate to external services.
2
listAuthConfigs
listAuthConfigs
List auth configs to confirm the new credential configuration is present.
3
createVersion
createIntegrationVersion
Author a draft integration version that will use the new auth config.

Source API Descriptions

Arazzo Workflow Specification

apigee-integration-auth-setup-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Apigee Integration Auth Setup
  summary: Create an auth config, list auth configs to confirm it, then author an integration version.
  description: >-
    The Application Integration credential-bootstrapping flow. The workflow
    creates an authentication configuration that integrations use to reach
    external services, lists auth configs to confirm the new one is present, and
    then authors a draft integration version that will use those credentials.
    Every step spells out its request inline so the flow can be read and executed
    without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: apigeeIntegrations
  url: ../openapi/apigee-integrations-openapi.yml
  type: openapi
workflows:
- workflowId: setup-integration-auth
  summary: Create an auth config, verify it, and author an integration version.
  description: >-
    Creates an auth config, lists auth configs to confirm registration, and
    creates a draft integration version.
  inputs:
    type: object
    required:
    - projectId
    - locationId
    - productId
    - authConfigDisplayName
    - credentialType
    - integrationId
    - versionDescription
    properties:
      projectId:
        type: string
        description: Google Cloud project id hosting the integration.
      locationId:
        type: string
        description: Google Cloud location of the integration.
      productId:
        type: string
        description: Product identifier (typically the Apigee product name).
      authConfigDisplayName:
        type: string
        description: Display name for the new auth config.
      credentialType:
        type: string
        description: Credential type stored in the auth config (e.g. API_KEY).
      integrationId:
        type: string
        description: Name of the integration to author.
      versionDescription:
        type: string
        description: Description for the new integration version.
  steps:
  - stepId: createAuthConfig
    description: >-
      Create an auth config that integrations will use to authenticate to
      external services.
    operationId: createAuthConfig
    parameters:
    - name: projectId
      in: path
      value: $inputs.projectId
    - name: locationId
      in: path
      value: $inputs.locationId
    - name: productId
      in: path
      value: $inputs.productId
    requestBody:
      contentType: application/json
      payload:
        displayName: $inputs.authConfigDisplayName
        credentialType: $inputs.credentialType
        visibility: PRIVATE
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      authConfigName: $response.body#/name
  - stepId: listAuthConfigs
    description: >-
      List auth configs to confirm the new credential configuration is present.
    operationId: listAuthConfigs
    parameters:
    - name: projectId
      in: path
      value: $inputs.projectId
    - name: locationId
      in: path
      value: $inputs.locationId
    - name: productId
      in: path
      value: $inputs.productId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      authConfigs: $response.body#/authConfigs
  - stepId: createVersion
    description: >-
      Author a draft integration version that will use the new auth config.
    operationId: createIntegrationVersion
    parameters:
    - name: projectId
      in: path
      value: $inputs.projectId
    - name: locationId
      in: path
      value: $inputs.locationId
    - name: productId
      in: path
      value: $inputs.productId
    - name: integrationId
      in: path
      value: $inputs.integrationId
    - name: newIntegration
      in: query
      value: true
    requestBody:
      contentType: application/json
      payload:
        description: $inputs.versionDescription
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      versionName: $response.body#/name
  outputs:
    authConfigName: $steps.createAuthConfig.outputs.authConfigName
    authConfigs: $steps.listAuthConfigs.outputs.authConfigs
    versionName: $steps.createVersion.outputs.versionName