UNPKG

@port-labs/port

Version:

A Pulumi package for creating and managing Port resources.

1,679 lines 59.7 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; export interface ActionApprovalEmailNotification { } export interface ActionApprovalWebhookNotification { /** * The format to invoke the webhook */ format?: pulumi.Input<string>; /** * The URL to invoke the webhook */ url: pulumi.Input<string>; } export interface ActionAutomationTrigger { /** * Any entity change event trigger */ anyEntityChangeEvent?: pulumi.Input<inputs.ActionAutomationTriggerAnyEntityChangeEvent>; /** * Any run change event trigger */ anyRunChangeEvent?: pulumi.Input<inputs.ActionAutomationTriggerAnyRunChangeEvent>; /** * Entity created event trigger */ entityCreatedEvent?: pulumi.Input<inputs.ActionAutomationTriggerEntityCreatedEvent>; /** * Entity deleted event trigger */ entityDeletedEvent?: pulumi.Input<inputs.ActionAutomationTriggerEntityDeletedEvent>; /** * Entity updated event trigger */ entityUpdatedEvent?: pulumi.Input<inputs.ActionAutomationTriggerEntityUpdatedEvent>; /** * JQ condition for automation trigger */ jqCondition?: pulumi.Input<inputs.ActionAutomationTriggerJqCondition>; /** * Run created event trigger */ runCreatedEvent?: pulumi.Input<inputs.ActionAutomationTriggerRunCreatedEvent>; /** * Run updated event trigger */ runUpdatedEvent?: pulumi.Input<inputs.ActionAutomationTriggerRunUpdatedEvent>; /** * Timer property expired event trigger */ timerPropertyExpiredEvent?: pulumi.Input<inputs.ActionAutomationTriggerTimerPropertyExpiredEvent>; } export interface ActionAutomationTriggerAnyEntityChangeEvent { /** * The blueprint identifier of the changed entity */ blueprintIdentifier: pulumi.Input<string>; } export interface ActionAutomationTriggerAnyRunChangeEvent { /** * The action identifier of the changed run */ actionIdentifier: pulumi.Input<string>; } export interface ActionAutomationTriggerEntityCreatedEvent { /** * The blueprint identifier of the created entity */ blueprintIdentifier: pulumi.Input<string>; } export interface ActionAutomationTriggerEntityDeletedEvent { /** * The blueprint identifier of the deleted entity */ blueprintIdentifier: pulumi.Input<string>; } export interface ActionAutomationTriggerEntityUpdatedEvent { /** * The blueprint identifier of the updated entity */ blueprintIdentifier: pulumi.Input<string>; } export interface ActionAutomationTriggerJqCondition { /** * The combinator of the condition */ combinator?: pulumi.Input<string>; /** * The jq expressions of the condition */ expressions: pulumi.Input<pulumi.Input<string>[]>; } export interface ActionAutomationTriggerRunCreatedEvent { /** * The action identifier of the created run */ actionIdentifier: pulumi.Input<string>; } export interface ActionAutomationTriggerRunUpdatedEvent { /** * The action identifier of the updated run */ actionIdentifier: pulumi.Input<string>; } export interface ActionAutomationTriggerTimerPropertyExpiredEvent { /** * The blueprint identifier of the expired timer property */ blueprintIdentifier: pulumi.Input<string>; /** * The property identifier of the expired timer property */ propertyIdentifier: pulumi.Input<string>; } export interface ActionAzureMethod { /** * Required when selecting type AZURE. The Azure org that the workflow belongs to */ org: pulumi.Input<string>; /** * The Azure Devops workflow [payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload) should be in `JSON` format, encoded as a string. Use jsonencode to encode arrays or objects. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload). */ payload?: pulumi.Input<string>; /** * Required when selecting type AZURE. The Azure webhook that the workflow belongs to */ webhook: pulumi.Input<string>; } export interface ActionGithubMethod { /** * Required when selecting type GITHUB. The GitHub org that the workflow belongs to */ org: pulumi.Input<string>; /** * Required when selecting type GITHUB. The GitHub repo that the workflow belongs to */ repo: pulumi.Input<string>; /** * Report the workflow status when invoking the action */ reportWorkflowStatus?: pulumi.Input<string>; /** * The GitHub workflow that the action belongs to */ workflow: pulumi.Input<string>; /** * The GitHub [workflow inputs](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload) should be in `JSON` format, encoded as a string. Use jsonencode to encode arrays or objects. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload). */ workflowInputs?: pulumi.Input<string>; } export interface ActionGitlabMethod { /** * The default ref of the action */ defaultRef?: pulumi.Input<string>; /** * Required when selecting type GITLAB. The GitLab group name that the workflow belongs to */ groupName: pulumi.Input<string>; /** * The Gitlab pipeline variables should be in `JSON` format, encoded as a string. Use jsonencode to encode arrays or objects. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload). */ pipelineVariables?: pulumi.Input<string>; /** * Required when selecting type GITLAB. The GitLab project name that the workflow belongs to */ projectName: pulumi.Input<string>; } export interface ActionKafkaMethod { /** * The Kafka message [payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload) should be in `JSON` format, encoded as a string. Use jsonencode to encode arrays or objects. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload). */ payload?: pulumi.Input<string>; } export interface ActionPermissionsPermissions { /** * The permission to approve the action's runs */ approve: pulumi.Input<inputs.ActionPermissionsPermissionsApprove>; /** * The permission to execute the action */ execute: pulumi.Input<inputs.ActionPermissionsPermissionsExecute>; } export interface ActionPermissionsPermissionsApprove { /** * The policy to use for approval */ policy?: pulumi.Input<string>; /** * The roles with approval permission */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * The teams with approval permission */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * The users with approval permission */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface ActionPermissionsPermissionsExecute { /** * Give execution permission to the teams who own the entity */ ownedByTeam?: pulumi.Input<boolean>; /** * The policy to use for execution */ policy?: pulumi.Input<string>; /** * The roles with execution permission */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * The teams with execution permission */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * The users with execution permission */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface ActionSelfServiceTrigger { /** * The ID of the blueprint */ blueprintIdentifier?: pulumi.Input<string>; /** * The `condition` field allows you to define rules using Port's [search & query syntax](https://docs.getport.io/search-and-query/#rules) to determine which entities the action will be available for. */ condition?: pulumi.Input<string>; /** * The operation type of the action */ operation: pulumi.Input<string>; /** * Order properties */ orderProperties?: pulumi.Input<pulumi.Input<string>[]>; /** * The required jq query of the property */ requiredJqQuery?: pulumi.Input<string>; /** * The steps of the action */ steps?: pulumi.Input<pulumi.Input<inputs.ActionSelfServiceTriggerStep>[]>; /** * action titles */ titles?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerTitles>; }>; /** * User properties */ userProperties?: pulumi.Input<inputs.ActionSelfServiceTriggerUserProperties>; } export interface ActionSelfServiceTriggerStep { /** * The order of the properties in this step */ orders: pulumi.Input<pulumi.Input<string>[]>; /** * The step's title (max 25 characters) */ title: pulumi.Input<string>; } export interface ActionSelfServiceTriggerTitles { /** * The description of the action title */ description?: pulumi.Input<string>; /** * The title of the action title */ title: pulumi.Input<string>; /** * The visibility of the string property */ visible?: pulumi.Input<boolean>; /** * The visibility condition jq query of the string property */ visibleJqQuery?: pulumi.Input<string>; } export interface ActionSelfServiceTriggerUserProperties { /** * The array property of the action */ arrayProps?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayProps>; }>; /** * The boolean property of the action */ booleanProps?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesBooleanProps>; }>; /** * The number property of the action */ numberProps?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesNumberProps>; }>; /** * The object property of the action */ objectProps?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesObjectProps>; }>; /** * The string property of the action */ stringProps?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesStringProps>; }>; } export interface ActionSelfServiceTriggerUserPropertiesArrayProps { /** * An array of boolean items within the property */ booleanItems?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayPropsBooleanItems>; /** * The default jq query of the array property */ defaultJqQuery?: pulumi.Input<string>; /** * The properties that this property depends on */ dependsOns?: pulumi.Input<pulumi.Input<string>[]>; /** * The description of the property */ description?: pulumi.Input<string>; /** * The disabled state of the array property */ disabled?: pulumi.Input<boolean>; /** * The disabled state jq query of the array property */ disabledJqQuery?: pulumi.Input<string>; /** * The icon of the property */ icon?: pulumi.Input<string>; /** * The max items of the array property */ maxItems?: pulumi.Input<number>; /** * The min items of the array property */ minItems?: pulumi.Input<number>; /** * An array of number items within the property */ numberItems?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayPropsNumberItems>; /** * An array of object items within the property */ objectItems?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayPropsObjectItems>; /** * Whether the property is required, by default not required, this property can't be set at the same time if `requiredJqQuery` is set, and only supports true as value */ required?: pulumi.Input<boolean>; /** * How to sort entities when in the self service action form in the UI */ sort?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayPropsSort>; /** * An array of string items within the property */ stringItems?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayPropsStringItems>; /** * The title of the property */ title?: pulumi.Input<string>; /** * The visibility of the array property */ visible?: pulumi.Input<boolean>; /** * The visibility condition jq query of the array property */ visibleJqQuery?: pulumi.Input<string>; } export interface ActionSelfServiceTriggerUserPropertiesArrayPropsBooleanItems { /** * The default values for the boolean items */ defaults?: pulumi.Input<pulumi.Input<boolean>[]>; } export interface ActionSelfServiceTriggerUserPropertiesArrayPropsNumberItems { /** * The default values for the number items */ defaults?: pulumi.Input<pulumi.Input<number>[]>; /** * The jq query for the enum number items */ enumJqQuery?: pulumi.Input<string>; /** * The enum of possible values for the number items */ enums?: pulumi.Input<pulumi.Input<number>[]>; } export interface ActionSelfServiceTriggerUserPropertiesArrayPropsObjectItems { /** * The default values for the object items */ defaults?: pulumi.Input<pulumi.Input<{ [key: string]: pulumi.Input<string>; }>[]>; } export interface ActionSelfServiceTriggerUserPropertiesArrayPropsSort { /** * The order to sort the entities in */ order?: pulumi.Input<string>; /** * The property to sort the entities by */ property: pulumi.Input<string>; } export interface ActionSelfServiceTriggerUserPropertiesArrayPropsStringItems { /** * The blueprint identifier the action relates to */ blueprint?: pulumi.Input<string>; /** * The dataset of the entity-format items */ dataset?: pulumi.Input<string>; /** * The default value of the items */ defaults?: pulumi.Input<pulumi.Input<string>[]>; /** * The jq query for the enum of string items */ enumJqQuery?: pulumi.Input<string>; /** * The enum of possible values for the string items */ enums?: pulumi.Input<pulumi.Input<string>[]>; /** * The format of the string property, Accepted values include `date-time`, `url`, `email`, `ipv4`, `ipv6`, `yaml`, `entity`, `user`, `team`, `proto`, `markdown` */ format?: pulumi.Input<string>; } export interface ActionSelfServiceTriggerUserPropertiesBooleanProps { /** * The default of the boolean property */ default?: pulumi.Input<boolean>; /** * The default jq query of the boolean property */ defaultJqQuery?: pulumi.Input<string>; /** * The properties that this property depends on */ dependsOns?: pulumi.Input<pulumi.Input<string>[]>; /** * The description of the property */ description?: pulumi.Input<string>; /** * The disabled state of the boolean property */ disabled?: pulumi.Input<boolean>; /** * The disabled state jq query of the boolean property */ disabledJqQuery?: pulumi.Input<string>; /** * The icon of the property */ icon?: pulumi.Input<string>; /** * Whether the property is required, by default not required, this property can't be set at the same time if `requiredJqQuery` is set, and only supports true as value */ required?: pulumi.Input<boolean>; /** * The title of the property */ title?: pulumi.Input<string>; /** * The visibility of the boolean property */ visible?: pulumi.Input<boolean>; /** * The visibility condition jq query of the boolean property */ visibleJqQuery?: pulumi.Input<string>; } export interface ActionSelfServiceTriggerUserPropertiesNumberProps { /** * The default of the number property */ default?: pulumi.Input<number>; /** * The default jq query of the number property */ defaultJqQuery?: pulumi.Input<string>; /** * The properties that this property depends on */ dependsOns?: pulumi.Input<pulumi.Input<string>[]>; /** * The description of the property */ description?: pulumi.Input<string>; /** * The disabled state of the number property */ disabled?: pulumi.Input<boolean>; /** * The disabled state jq query of the number property */ disabledJqQuery?: pulumi.Input<string>; /** * The enum colors of the number property */ enumColors?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The enum jq query of the string property */ enumJqQuery?: pulumi.Input<string>; /** * The enum of the number property */ enums?: pulumi.Input<pulumi.Input<number>[]>; /** * The icon of the property */ icon?: pulumi.Input<string>; /** * The min of the number property */ maximum?: pulumi.Input<number>; /** * The max of the number property */ minimum?: pulumi.Input<number>; /** * Whether the property is required, by default not required, this property can't be set at the same time if `requiredJqQuery` is set, and only supports true as value */ required?: pulumi.Input<boolean>; /** * The title of the property */ title?: pulumi.Input<string>; /** * The visibility of the number property */ visible?: pulumi.Input<boolean>; /** * The visibility condition jq query of the number property */ visibleJqQuery?: pulumi.Input<string>; } export interface ActionSelfServiceTriggerUserPropertiesObjectProps { /** * The default of the object property */ default?: pulumi.Input<string>; /** * The default jq query of the object property */ defaultJqQuery?: pulumi.Input<string>; /** * The properties that this property depends on */ dependsOns?: pulumi.Input<pulumi.Input<string>[]>; /** * The description of the property */ description?: pulumi.Input<string>; /** * The disabled state of the object property */ disabled?: pulumi.Input<boolean>; /** * The disabled state jq query of the object property */ disabledJqQuery?: pulumi.Input<string>; /** * The algorithm to encrypt the property with. Accepted value: `aes256-gcm` */ encryption?: pulumi.Input<string>; /** * The icon of the property */ icon?: pulumi.Input<string>; /** * Whether the property is required, by default not required, this property can't be set at the same time if `requiredJqQuery` is set, and only supports true as value */ required?: pulumi.Input<boolean>; /** * The title of the property */ title?: pulumi.Input<string>; /** * The visibility of the object property */ visible?: pulumi.Input<boolean>; /** * The visibility condition jq query of the object property */ visibleJqQuery?: pulumi.Input<string>; } export interface ActionSelfServiceTriggerUserPropertiesStringProps { /** * The blueprint identifier the string property relates to */ blueprint?: pulumi.Input<string>; /** * The dataset of an the entity-format property */ dataset?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesStringPropsDataset>; /** * The default of the string property */ default?: pulumi.Input<string>; /** * The default jq query of the string property */ defaultJqQuery?: pulumi.Input<string>; /** * The properties that this property depends on */ dependsOns?: pulumi.Input<pulumi.Input<string>[]>; /** * The description of the property */ description?: pulumi.Input<string>; /** * The disabled state of the string property */ disabled?: pulumi.Input<boolean>; /** * The disabled state jq query of the string property */ disabledJqQuery?: pulumi.Input<string>; /** * The algorithm to encrypt the property with. Accepted value: `aes256-gcm` */ encryption?: pulumi.Input<string>; /** * The enum colors of the string property */ enumColors?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The enum jq query of the string property */ enumJqQuery?: pulumi.Input<string>; /** * The enum of the string property */ enums?: pulumi.Input<pulumi.Input<string>[]>; /** * The format of the string property, Accepted values include `date-time`, `url`, `email`, `ipv4`, `ipv6`, `yaml`, `entity`, `user`, `team`, `proto`, `markdown` */ format?: pulumi.Input<string>; /** * The icon of the property */ icon?: pulumi.Input<string>; /** * The max length of the string property */ maxLength?: pulumi.Input<number>; /** * The min length of the string property */ minLength?: pulumi.Input<number>; /** * The pattern of the string property */ pattern?: pulumi.Input<string>; /** * The pattern jq query of the string property. This field accepts a JQ expression to dynamically generate either a regex pattern (as a string) or a list of allowed values (as an array). Cannot be used with `pattern`. Empty values are not allowed. Examples: `"if .env == \"prod\" then \"^[a-z]+$\" else \"^[a-zA-Z]+$\" end"` for dynamic regex patterns, or `"[\"value1\", \"value2\"]"` for a fixed list of allowed values. */ patternJqQuery?: pulumi.Input<string>; /** * Whether the property is required, by default not required, this property can't be set at the same time if `requiredJqQuery` is set, and only supports true as value */ required?: pulumi.Input<boolean>; /** * How to sort entities when in the self service action form in the UI */ sort?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesStringPropsSort>; /** * The title of the property */ title?: pulumi.Input<string>; /** * The visibility of the string property */ visible?: pulumi.Input<boolean>; /** * The visibility condition jq query of the string property */ visibleJqQuery?: pulumi.Input<string>; } export interface ActionSelfServiceTriggerUserPropertiesStringPropsDataset { /** * The combinator of the dataset */ combinator: pulumi.Input<string>; /** * The rules of the dataset */ rules: pulumi.Input<pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesStringPropsDatasetRule>[]>; } export interface ActionSelfServiceTriggerUserPropertiesStringPropsDatasetRule { /** * The blueprint identifier the action relates to */ blueprint?: pulumi.Input<string>; /** * The operator of the rule */ operator: pulumi.Input<string>; /** * The property identifier of the rule */ property?: pulumi.Input<string>; /** * The value of the rule */ value?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesStringPropsDatasetRuleValue>; } export interface ActionSelfServiceTriggerUserPropertiesStringPropsDatasetRuleValue { jqQuery: pulumi.Input<string>; } export interface ActionSelfServiceTriggerUserPropertiesStringPropsSort { /** * The order to sort the entities in */ order?: pulumi.Input<string>; /** * The property to sort the entities by */ property: pulumi.Input<string>; } export interface ActionUpsertEntityMethod { /** * Required when selecting type Upsert Entity. The blueprint identifier of the entity for the upsert */ blueprintIdentifier: pulumi.Input<string>; /** * Upsert Entity invocation method */ mapping?: pulumi.Input<inputs.ActionUpsertEntityMethodMapping>; /** * The title of the entity */ title?: pulumi.Input<string>; } export interface ActionUpsertEntityMethodMapping { /** * The icon of the entity */ icon?: pulumi.Input<string>; /** * Required when selecting type Upsert Entity. The entity identifier for the upsert */ identifier?: pulumi.Input<string>; /** * The properties of the entity (key-value object encoded to a string) */ properties?: pulumi.Input<string>; /** * The relations of the entity (key-value object encoded to a string) */ relations?: pulumi.Input<string>; /** * The teams the entity belongs to */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * Jq that returns the teams the entity belongs to */ teamsJq?: pulumi.Input<string>; } export interface ActionWebhookMethod { /** * Specifies whether to use an agent to invoke the action. This can be a boolean value (`'true''` or `'false'`) or a JQ if dynamic evaluation is needed. */ agent?: pulumi.Input<string>; /** * The Webhook body should be in `JSON` format, encoded as a string. Use jsonencode to encode arrays or objects. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload). */ body?: pulumi.Input<string>; /** * The HTTP headers for invoking the action. They should be encoded as a key-value object to a string using jsonencode. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload). */ headers?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The HTTP method to invoke the action */ method?: pulumi.Input<string>; /** * Synchronize the action */ synchronized?: pulumi.Input<string>; /** * Required when selecting type WEBHOOK. The URL to invoke the action */ url: pulumi.Input<string>; } export interface AggregationPropertiesProperties { /** * The description of the aggregation property */ description?: pulumi.Input<string>; /** * The icon of the aggregation property */ icon?: pulumi.Input<string>; /** * The aggregation method to perform on the target blueprint, one of count*entities, average*entities, average*by*property, aggregate*by*property */ method: pulumi.Input<inputs.AggregationPropertiesPropertiesMethod>; /** * Path filter to filter entities based on relation path */ pathFilters?: pulumi.Input<pulumi.Input<inputs.AggregationPropertiesPropertiesPathFilter>[]>; /** * Query to filter the target entities */ query?: pulumi.Input<string>; /** * The identifier of the blueprint to perform the aggregation on */ targetBlueprintIdentifier: pulumi.Input<string>; /** * The title of the aggregation property */ title?: pulumi.Input<string>; } export interface AggregationPropertiesPropertiesMethod { /** * Function to calculate the aggregate by property value of the target entities, such as sum, min, max, median */ aggregateByProperty?: pulumi.Input<inputs.AggregationPropertiesPropertiesMethodAggregateByProperty>; /** * Function to calculate the average by property value of the target entities */ averageByProperty?: pulumi.Input<inputs.AggregationPropertiesPropertiesMethodAverageByProperty>; /** * Function to average the entities of the target entities */ averageEntities?: pulumi.Input<inputs.AggregationPropertiesPropertiesMethodAverageEntities>; /** * Function to count the entities of the target entities */ countEntities?: pulumi.Input<boolean>; } export interface AggregationPropertiesPropertiesMethodAggregateByProperty { /** * The func of the aggregate by property */ func: pulumi.Input<string>; /** * The property of the aggregate by property */ property: pulumi.Input<string>; } export interface AggregationPropertiesPropertiesMethodAverageByProperty { /** * The time periods to calculate the average by, e.g. hour, day, week, month */ averageOf: pulumi.Input<string>; /** * The property name on which to calculate the the time periods, e.g. $createdAt, $updated_at or any other date property */ measureTimeBy: pulumi.Input<string>; /** * The property name on which to calculate the average by */ property: pulumi.Input<string>; } export interface AggregationPropertiesPropertiesMethodAverageEntities { /** * The time periods to calculate the average of, e.g. hour, day, week, month */ averageOf?: pulumi.Input<string>; /** * The property name on which to calculate the the time periods, e.g. $createdAt, $updated_at or any other date property */ measureTimeBy?: pulumi.Input<string>; } export interface AggregationPropertiesPropertiesPathFilter { /** * The blueprint to start the path from. Should be the target blueprint or undefined to start from the source blueprint */ fromBlueprint?: pulumi.Input<string>; /** * The path array of relations to filter by */ paths: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintCalculationProperties { /** * The calculation of the calculation property */ calculation: pulumi.Input<string>; /** * The colorized of the calculation property */ colorized?: pulumi.Input<boolean>; /** * The colors of the calculation property */ colors?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The description of the calculation property */ description?: pulumi.Input<string>; /** * The format of the calculation property */ format?: pulumi.Input<string>; /** * The icon of the calculation property */ icon?: pulumi.Input<string>; /** * The title of the calculation property */ title?: pulumi.Input<string>; /** * The type of the calculation property */ type: pulumi.Input<string>; } export interface BlueprintKafkaChangelogDestination { } export interface BlueprintMirrorProperties { /** * The path of the mirror property */ path: pulumi.Input<string>; /** * The title of the mirror property */ title?: pulumi.Input<string>; } export interface BlueprintOwnership { /** * Path for the Inherited ownership type. Required when type is 'Inherited'. Must be a valid relation identifiers path. */ path?: pulumi.Input<string>; /** * Optional title for the owning teams property. */ title?: pulumi.Input<string>; /** * Ownership type: either 'Inherited' or 'Direct'. */ type: pulumi.Input<string>; } export interface BlueprintPermissionsEntities { /** * Manage permissions to register entities of the blueprint */ register: pulumi.Input<inputs.BlueprintPermissionsEntitiesRegister>; /** * Manage permissions to unregister entities of the blueprint */ unregister: pulumi.Input<inputs.BlueprintPermissionsEntitiesUnregister>; /** * Manage permissions to update entities of the blueprint */ update: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdate>; updateMetadataProperties: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateMetadataProperties>; /** * Manage permissions to update the entity properties */ updateProperties?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateProperties>; }>; /** * Manage permissions to update the entity relations */ updateRelations?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateRelations>; }>; } export interface BlueprintPermissionsEntitiesRegister { /** * Owned by team */ ownedByTeam?: pulumi.Input<boolean>; /** * Roles with register permissions */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * Teams with register permissions */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * Users with register permissions */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintPermissionsEntitiesUnregister { /** * Owned by team */ ownedByTeam?: pulumi.Input<boolean>; /** * Roles with unregister permissions */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * Teams with unregister permissions */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * Users with unregister permissions */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintPermissionsEntitiesUpdate { /** * Owned by team */ ownedByTeam?: pulumi.Input<boolean>; /** * Roles with update permissions */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * Teams with update permissions */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * Users with update permissions */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintPermissionsEntitiesUpdateMetadataProperties { /** * The entity's icon */ icon: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateMetadataPropertiesIcon>; /** * Unique Entity identifier, used for API calls, programmatic access and distinguishing between different entities */ identifier: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateMetadataPropertiesIdentifier>; /** * The team this entity belongs to */ team: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateMetadataPropertiesTeam>; /** * A human-readable name for the entity */ title: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateMetadataPropertiesTitle>; } export interface BlueprintPermissionsEntitiesUpdateMetadataPropertiesIcon { /** * Owned by team */ ownedByTeam?: pulumi.Input<boolean>; /** * Roles with update `$icon` metadata permissions */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * Teams with update `$icon` metadata permissions */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * Users with update `$icon` metadata permissions */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintPermissionsEntitiesUpdateMetadataPropertiesIdentifier { /** * Owned by team */ ownedByTeam?: pulumi.Input<boolean>; /** * Roles with update `$identifier` metadata permissions */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * Teams with update `$identifier` metadata permissions */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * Users with update `$identifier` metadata permissions */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintPermissionsEntitiesUpdateMetadataPropertiesTeam { /** * Owned by team */ ownedByTeam?: pulumi.Input<boolean>; /** * Roles with update `$team` metadata permissions */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * Teams with update `$team` metadata permissions */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * Users with update `$team` metadata permissions */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintPermissionsEntitiesUpdateMetadataPropertiesTitle { /** * Owned by team */ ownedByTeam?: pulumi.Input<boolean>; /** * Roles with update `$title` metadata permissions */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * Teams with update `$title` metadata permissions */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * Users with update `$title` metadata permissions */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintPermissionsEntitiesUpdateProperties { /** * Owned by team */ ownedByTeam?: pulumi.Input<boolean>; /** * Roles with update specific property permissions */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * Teams with update specific property permissions */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * Users with update specific property permissions */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintPermissionsEntitiesUpdateRelations { /** * Owned by team */ ownedByTeam?: pulumi.Input<boolean>; /** * Roles with update specific relation permissions */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * Teams with update specific relation permissions */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * Users with update specific relation permissions */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintProperties { /** * The array property of the blueprint */ arrayProps?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.BlueprintPropertiesArrayProps>; }>; /** * The boolean property of the blueprint */ booleanProps?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.BlueprintPropertiesBooleanProps>; }>; /** * The number property of the blueprint */ numberProps?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.BlueprintPropertiesNumberProps>; }>; /** * The object property of the blueprint */ objectProps?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.BlueprintPropertiesObjectProps>; }>; /** * The string property of the blueprint */ stringProps?: pulumi.Input<{ [key: string]: pulumi.Input<inputs.BlueprintPropertiesStringProps>; }>; } export interface BlueprintPropertiesArrayProps { /** * The items of the array property */ booleanItems?: pulumi.Input<inputs.BlueprintPropertiesArrayPropsBooleanItems>; /** * The description of the property */ description?: pulumi.Input<string>; /** * The icon of the property */ icon?: pulumi.Input<string>; /** * The max items of the array property */ maxItems?: pulumi.Input<number>; /** * The min items of the array property */ minItems?: pulumi.Input<number>; /** * The items of the array property */ numberItems?: pulumi.Input<inputs.BlueprintPropertiesArrayPropsNumberItems>; /** * The items of the array property */ objectItems?: pulumi.Input<inputs.BlueprintPropertiesArrayPropsObjectItems>; /** * Whether the property is required */ required?: pulumi.Input<boolean>; /** * The items of the array property */ stringItems?: pulumi.Input<inputs.BlueprintPropertiesArrayPropsStringItems>; /** * The title of the property */ title?: pulumi.Input<string>; } export interface BlueprintPropertiesArrayPropsBooleanItems { /** * The default of the items */ defaults?: pulumi.Input<pulumi.Input<boolean>[]>; } export interface BlueprintPropertiesArrayPropsNumberItems { /** * The default of the items */ defaults?: pulumi.Input<pulumi.Input<number>[]>; } export interface BlueprintPropertiesArrayPropsObjectItems { /** * The default of the items */ defaults?: pulumi.Input<pulumi.Input<string>[]>; } export interface BlueprintPropertiesArrayPropsStringItems { /** * The default of the items */ defaults?: pulumi.Input<pulumi.Input<string>[]>; /** * The enum colors of the string array items */ enumColors?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The enum of the string array items */ enums?: pulumi.Input<pulumi.Input<string>[]>; /** * The format of the items */ format?: pulumi.Input<string>; /** * The pattern of the string array items */ pattern?: pulumi.Input<string>; } export interface BlueprintPropertiesBooleanProps { /** * The default of the boolean property */ default?: pulumi.Input<boolean>; /** * The description of the property */ description?: pulumi.Input<string>; /** * The icon of the property */ icon?: pulumi.Input<string>; /** * Whether the property is required */ required?: pulumi.Input<boolean>; /** * The title of the property */ title?: pulumi.Input<string>; } export interface BlueprintPropertiesNumberProps { /** * The default of the number property */ default?: pulumi.Input<number>; /** * The description of the property */ description?: pulumi.Input<string>; /** * The enum colors of the number property */ enumColors?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The enum of the number property */ enums?: pulumi.Input<pulumi.Input<number>[]>; /** * The icon of the property */ icon?: pulumi.Input<string>; /** * The min of the number property */ maximum?: pulumi.Input<number>; /** * The max of the number property */ minimum?: pulumi.Input<number>; /** * Whether the property is required */ required?: pulumi.Input<boolean>; /** * The title of the property */ title?: pulumi.Input<string>; } export interface BlueprintPropertiesObjectProps { /** * The default of the object property */ default?: pulumi.Input<string>; /** * The description of the property */ description?: pulumi.Input<string>; /** * The icon of the property */ icon?: pulumi.Input<string>; /** * Whether the property is required */ required?: pulumi.Input<boolean>; /** * The spec of the object property */ spec?: pulumi.Input<string>; /** * The title of the property */ title?: pulumi.Input<string>; } export interface BlueprintPropertiesStringProps { /** * The default of the string property */ default?: pulumi.Input<string>; /** * The description of the property */ description?: pulumi.Input<string>; /** * The enum colors of the string property */ enumColors?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The enum of the string property */ enums?: pulumi.Input<pulumi.Input<string>[]>; /** * The format of the string property */ format?: pulumi.Input<string>; /** * The icon of the property */ icon?: pulumi.Input<string>; /** * The max length of the string property */ maxLength?: pulumi.Input<number>; /** * The min length of the string property */ minLength?: pulumi.Input<number>; /** * The pattern of the string property */ pattern?: pulumi.Input<string>; /** * Whether the property is required */ required?: pulumi.Input<boolean>; /** * The spec of the string property */ spec?: pulumi.Input<string>; /** * The spec authentication of the string property */ specAuthentication?: pulumi.Input<inputs.BlueprintPropertiesStringPropsSpecAuthentication>; /** * The title of the property */ title?: pulumi.Input<string>; } export interface BlueprintPropertiesStringPropsSpecAuthentication { /** * The authorizationUrl of the spec authentication */ authorizationUrl: pulumi.Input<string>; /** * The clientId of the spec authentication */ clientId: pulumi.Input<string>; /** * The tokenUrl of the spec authentication */ tokenUrl: pulumi.Input<string>; } export interface BlueprintRelations { /** * The description of the relation */ description?: pulumi.Input<string>; /** * The many of the relation */ many?: pulumi.Input<boolean>; /** * The required of the relation */ required?: pulumi.Input<boolean>; /** * The target of the relation */ target: pulumi.Input<string>; /** * The title of the relation */ title?: pulumi.Input<string>; } export interface BlueprintTeamInheritance { /** * The path of the team inheritance */ path: pulumi.Input<string>; } export interface BlueprintWebhookChangelogDestination { /** * The agent of the webhook changelog destination */ agent?: pulumi.Input<boolean>; /** * The url of the webhook changelog destination */ url: pulumi.Input<string>; } export interface EntityProperties { /** * The array properties of the entity */ arrayProps?: pulumi.Input<inputs.EntityPropertiesArrayProps>; /** * The bool properties of the entity */ booleanProps?: pulumi.Input<{ [key: string]: pulumi.Input<boolean>; }>; /** * The number properties of the entity */ numberProps?: pulumi.Input<{ [key: string]: pulumi.Input<number>; }>; /** * The object properties of the entity */ objectProps?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The string properties of the entity */ stringProps?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; } export interface EntityPropertiesArrayProps { booleanItems?: pulumi.Input<{ [key: string]: pulumi.Input<pulumi.Input<boolean>[]>; }>; numberItems?: pulumi.Input<{ [key: string]: pulumi.Input<pulumi.Input<number>[]>; }>; objectItems?: pulumi.Input<{ [key: string]: pulumi.Input<pulumi.Input<string>[]>; }>; stringItems?: pulumi.Input<{ [key: string]: pulumi.Input<pulumi.Input<string>[]>; }>; } export interface EntityRelations { /** * The many relation of the entity */ manyRelations?: pulumi.Input<{ [key: string]: pulumi.Input<pulumi.Input<string>[]>; }>; /** * The single relation of the entity */ singleRelations?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; } export interface IntegrationKafkaChangelogDestination { } export interface IntegrationWebhookChangelogDestination { /** * The agent of the webhook changelog destination */ agent?: pulumi.Input<boolean>; /** * The url of the webhook changelog destination */ url: pulumi.Input<string>; } export interface PagePermissionsRead { /** * The roles with read permission */ roles?: pulumi.Input<pulumi.Input<string>[]>; /** * The teams with read permission */ teams?: pulumi.Input<pulumi.Input<string>[]>; /** * The users with read permission */ users?: pulumi.Input<pulumi.Input<string>[]>; } export interface ScorecardFilter { /** * The combinator of the filter */ combinator: pulumi.Input<string>; /** * The conditions of the filter. Each condition object should be encoded to a string */ conditions: pulumi.Input<pulumi.Input<string>[]>; } export interface ScorecardLevel { /** * The color of the level */ color: pulumi.Input<string>; /** * The title of the level */ title: pulumi.Input<string>; } export interface ScorecardRule { /** * The description of the rule */ description?: pulumi.Input<string>; /** * The identifier of the rule */ identifier: pulumi.Input<string>; /** * The level of the rule */ level: pulumi.Input<string>; /** * The query of the rule */ query: pulumi.Input<inputs.ScorecardRuleQuery>; /** * The title of the rule */ title: pulumi.Input<string>; } export interface ScorecardRuleQuery { /** * The combinator of the query */ combinator: pulumi.Input<string>; /** * The conditions of the query. Each condition object should be encoded to a string */ conditions: pulumi.Input<pulumi.Input<string>[]>; } export interface SystemBlueprintCalculationProperties { /** * The calculation of the calculation property */ calculation: pulumi.Input<string>; /** * The colorized of the calculation property */ colorized?: pulumi.Input<boolean>; /** * The colors of the calculation property */ colors?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The description of the calculation property */ description?: pulumi.Input<string>; /** * The format of the calculation property */ format?: pulumi.Input<string>; /** * The icon of the calculation property */ icon?: pulumi.Input<string>; /** * The title of the calculation property */ title?: pulumi.Input<string>; /** * The type of the calculation property */ type: pulumi.Input<string>; } export interface SystemBlueprintMirrorProperties { /** * The path of the mirror property */ path: pulumi.Input<string>; /** * The title of the mirror property */ title?: pulumi.Input<string>; } export interface SystemBlueprintProperties {