Prophecy.io Project Deployment API
The Project Deployment API from Prophecy.io — 1 operation(s) for project deployment.
The Project Deployment API from Prophecy.io — 1 operation(s) for project deployment.
openapi: 3.0.3
info:
title: Prophecy Connections Project Deployment API
description: API for managing Prophecy connections
version: 1.0.0
tags:
- name: Project Deployment
paths:
/api/deploy/project:
parameters:
- name: X-AUTH-TOKEN
in: header
description: Prophecy access token
required: true
schema:
type: string
post:
tags:
- Project Deployment
summary: Deploy project
description: Deploy projects with custom pipeline and project configurations to specific fabrics. Use this API to automate project deployment with external CI/CD tools or deploy the same project to different environments with different configuration values.
operationId: deployProject
requestBody:
description: Project deployment parameters
required: true
content:
application/json:
schema:
type: object
required:
- projectName
- fabricName
- gitTag
properties:
projectName:
type: string
description: 'Name of the project to be deployed. Example: CustomerAnalytics'
fabricName:
type: string
description: 'Name of the fabric where the project will be deployed. Example: production-databricks'
gitTag:
type: string
description: Git tag identifying the specific version of the project to deploy. Must follow the format {projectName}/{version}.
pipelineConfigurations:
type: object
additionalProperties:
type: object
description: Pipeline name. The key is the name of a pipeline within the project.
additionalProperties:
type: string
description: Parameter name and value. The key is the name of a pipeline parameter, and the value is the parameter value to assign.
description: 'Override default values for specific pipeline parameters. Each pipeline can have multiple parameter overrides. The parameter must exist in the pipeline definition, or the override will be skipped.
You only need to specify the parameters you want to override. Any parameters not specified will use their default values from the pipeline definition. You can override just one parameter or multiple parameters as needed.'
projectConfiguration:
type: object
additionalProperties:
type: string
description: Project configuration parameter name and value. The key is the project configuration variable name, and the value is the parameter value to assign.
description: Override default values for project-level configuration parameters that apply to all pipelines in the project.
example:
projectName: CustomerAnalytics
fabricName: production-databricks
gitTag: CustomerAnalytics/2.1
pipelineConfigurations:
sales_report:
report_period: monthly
include_forecasts: 'true'
customer_segmentation:
segment_count: '5'
min_customers_per_segment: '100'
revenue_analysis:
currency: USD
include_tax: 'false'
projectConfiguration:
environment: production
data_refresh_frequency: daily
responses:
'200':
description: Project deployment response
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
description: Indicates whether the request to deploy the project was successful.
message:
type: string
description: Message that explains the outcome of the request.
deploymentId:
type: string
description: Unique identifier of the deployment generated by this request.
details:
type: object
properties:
projectId:
type: string
description: Unique identifier of the deployed project.
fabricId:
type: string
description: Unique identifier of the fabric where the project was deployed.
version:
type: string
description: Version number of the deployed project.
pipelinesDeployed:
type: array
items:
type: string
description: Array of pipeline names that were successfully deployed.
configurationsApplied:
type: integer
description: Number of configuration parameters that were applied during deployment.
error:
type: string
description: Detailed error information provided when the request fails.
examples:
success:
summary: Response to a successful deployment request
value:
success: true
message: Project scheduled successfully
deploymentId: '212'
details:
projectId: '67890'
fabricId: 09123
version: '2.1'
pipelinesDeployed:
- sales_report
- customer_segmentation
- revenue_analysis
configurationsApplied: 5
error:
summary: Response to a request with an invalid Git tag
value:
success: false
message: Deployment failed
error: 'Failed to fetch project files: Clone failed because revision Some(CustomerAnalytics/2.1) was not found'