跳到主要内容

ProjectConfigurationResponse

errCodeintegerrequired
Constant value: 0
errMessagestringrequired
Constant value:
data objectrequired
oneOf

Role-filtered personal state. Guests receive only accessible base profiles and attachments.

profilePolicy object

Source-owned role policy. Client labels, role claims and personal metadata never grant authority. Projects without this policy keep their existing behavior.

versionintegerrequired

Possible values: [1]

defaultProfileKeystringrequired

Must identify a guest profile.

manageMinimumRoleProjectRolerequired

权限逐级累加:访客只读;开发者编辑草稿、上传、发布、写服务器数据;维护者管理设置和低级成员;所有者管理全部成员、删除与转移。 / Cumulative guest, developer, maintainer and owner roles.

Possible values: [guest, developer, maintainer, owner]

profiles object[]required

Possible values: >= 1

  • Array [
  • keystringrequired
    namestringrequired
    minimumRoleProjectRolerequired

    权限逐级累加:访客只读;开发者编辑草稿、上传、发布、写服务器数据;维护者管理设置和低级成员;所有者管理全部成员、删除与转移。 / Cumulative guest, developer, maintainer and owner roles.

    Possible values: [guest, developer, maintainer, owner]

    fixedValues objectrequired
    property name*any
    descriptionstring
    tagsstring[]
  • ]
  • agentModelPolicy object

    Source-declared restriction retained independently of published field visibility. Draft and template metadata cannot relax the current source restriction.

    allowThirdPartyboolean
    versionintegerrequired

    Possible values: [1]

    revisionintegerrequired

    Possible values: >= 0

    fields object[]required
  • Array [
  • namestringrequired

    Possible values: Value must match regular expression ^[A-Za-z_][A-Za-z0-9_.-]{0,199}$

    typestringrequired

    Possible values: [string, number, boolean, json, file]

    labelstring
    descriptionstring
    defaultValue

    Native JSON default. Never store real secrets in source declarations.

    requiredboolean
    secretboolean
    multipleboolean

    String arrays for string fields; up to 32 server file references for file fields.

    controlstring

    ai-models is reserved for the STEAMHARNESS_AGENT_MODELS JSON field. Entries contain id, name, model and source. System entries use credentialId; third-party entries use apiKind, baseUrl and apiKey. Values are private unless explicitly included in publication.

    Possible values: [text, textarea, select, radio, checkboxes, ai-models]

    allowThirdPartyboolean

    Only valid for ai-models. Set false in configuration.json to allow only system AI. Saves and imports cannot add third-party entries or relax the project's declared policy. Omitted or true allows both sources.

    acceptstring[]

    File fields only. Accepted MIME types or extensions. Files upload through POST /api/projects/{projectId}/configurations/files and values contain server metadata, never file bytes.

    options object[]
  • Array [
  • valuestringrequired
    labelstring
  • ]
  • sharing object
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    paths object

    JSON Pointer rules, inherited from the parent with more specific rules taking precedence. Excluding the whole field excludes every descendant.

    property name* ConfigurationSharingRule
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    omittedPathsstring[]

    Generated opaque deny hashes for omitted JSON paths, without private path names.

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

  • ]
  • customFields object[]required
  • Array [
  • namestringrequired

    Possible values: Value must match regular expression ^[A-Za-z_][A-Za-z0-9_.-]{0,199}$

    typestringrequired

    Possible values: [string, number, boolean, json, file]

    labelstring
    descriptionstring
    defaultValue

    Native JSON default. Never store real secrets in source declarations.

    requiredboolean
    secretboolean
    multipleboolean

    String arrays for string fields; up to 32 server file references for file fields.

    controlstring

    ai-models is reserved for the STEAMHARNESS_AGENT_MODELS JSON field. Entries contain id, name, model and source. System entries use credentialId; third-party entries use apiKind, baseUrl and apiKey. Values are private unless explicitly included in publication.

    Possible values: [text, textarea, select, radio, checkboxes, ai-models]

    allowThirdPartyboolean

    Only valid for ai-models. Set false in configuration.json to allow only system AI. Saves and imports cannot add third-party entries or relax the project's declared policy. Omitted or true allows both sources.

    acceptstring[]

    File fields only. Accepted MIME types or extensions. Files upload through POST /api/projects/{projectId}/configurations/files and values contain server metadata, never file bytes.

    options object[]
  • Array [
  • valuestringrequired
    labelstring
  • ]
  • sharing object
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    paths object

    JSON Pointer rules, inherited from the parent with more specific rules taking precedence. Excluding the whole field excludes every descendant.

    property name* ConfigurationSharingRule
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    omittedPathsstring[]

    Generated opaque deny hashes for omitted JSON paths, without private path names.

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

  • ]
  • shadowedCustomFields object[]

    Custom definitions temporarily hidden by same-name project declarations, retained for later restoration.

  • Array [
  • namestringrequired

    Possible values: Value must match regular expression ^[A-Za-z_][A-Za-z0-9_.-]{0,199}$

    typestringrequired

    Possible values: [string, number, boolean, json, file]

    labelstring
    descriptionstring
    defaultValue

    Native JSON default. Never store real secrets in source declarations.

    requiredboolean
    secretboolean
    multipleboolean

    String arrays for string fields; up to 32 server file references for file fields.

    controlstring

    ai-models is reserved for the STEAMHARNESS_AGENT_MODELS JSON field. Entries contain id, name, model and source. System entries use credentialId; third-party entries use apiKind, baseUrl and apiKey. Values are private unless explicitly included in publication.

    Possible values: [text, textarea, select, radio, checkboxes, ai-models]

    allowThirdPartyboolean

    Only valid for ai-models. Set false in configuration.json to allow only system AI. Saves and imports cannot add third-party entries or relax the project's declared policy. Omitted or true allows both sources.

    acceptstring[]

    File fields only. Accepted MIME types or extensions. Files upload through POST /api/projects/{projectId}/configurations/files and values contain server metadata, never file bytes.

    options object[]
  • Array [
  • valuestringrequired
    labelstring
  • ]
  • sharing object
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    paths object

    JSON Pointer rules, inherited from the parent with more specific rules taking precedence. Excluding the whole field excludes every descendant.

    property name* ConfigurationSharingRule
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    omittedPathsstring[]

    Generated opaque deny hashes for omitted JSON paths, without private path names.

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

  • ]
  • capabilities object
    manageConfigurationsboolean
    roleProjectRole

    权限逐级累加:访客只读;开发者编辑草稿、上传、发布、写服务器数据;维护者管理设置和低级成员;所有者管理全部成员、删除与转移。 / Cumulative guest, developer, maintainer and owner roles.

    Possible values: [guest, developer, maintainer, owner]

    onlineboolean
    subjectstring

    Host-verified application account scope; not an authorization input.

    reasonstring
    configurationCapabilities object
    property name* object
    useboolean
    editboolean
    renameboolean
    deleteboolean
    minimumRoleProjectRole

    权限逐级累加:访客只读;开发者编辑草稿、上传、发布、写服务器数据;维护者管理设置和低级成员;所有者管理全部成员、删除与转移。 / Cumulative guest, developer, maintainer and owner roles.

    Possible values: [guest, developer, maintainer, owner]

    descriptionstring
    tagsstring[]
    reasonstring
    configurations object[]required

    Possible values: >= 1

  • Array [
  • deletedPaths object

    Personal JSON deletion overlays; managed by the service and rechecked against each version's permissions.

    property name* string[]
  • Array [
  • string
  • ]
  • profileKeystring
    baseProfileboolean
    templateIdstring
    idstringrequired
    namestringrequired
    values objectrequired
    property name*any
    createdAtstring<date-time>required
    updatedAtstring<date-time>required
  • ]
  • activeConfigurationIdstringrequired
    template object

    Version 3 freezes role policies and is rejected by unsupported hosts. Immutable, filtered version data; defaultValue is omitted. Arrays are indivisible. Excluded names are represented only by opaque deny hashes. The authenticated download validates source and attachment hashes before caching outside project source.

    versionintegerrequired

    Possible values: [2, 3]

    kindstringrequired

    Possible values: [steamharness-configuration-template]

    projectIdstringrequired
    projectVersionstringrequired
    sourceHashstringrequired

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

    draftRevisionintegerrequired

    Possible values: >= 0

    profilePolicy object

    Source-owned role policy. Client labels, role claims and personal metadata never grant authority. Projects without this policy keep their existing behavior.

    versionintegerrequired

    Possible values: [1]

    defaultProfileKeystringrequired

    Must identify a guest profile.

    manageMinimumRoleProjectRolerequired

    权限逐级累加:访客只读;开发者编辑草稿、上传、发布、写服务器数据;维护者管理设置和低级成员;所有者管理全部成员、删除与转移。 / Cumulative guest, developer, maintainer and owner roles.

    Possible values: [guest, developer, maintainer, owner]

    profiles object[]required

    Possible values: >= 1

  • Array [
  • keystringrequired
    namestringrequired
    minimumRoleProjectRolerequired

    权限逐级累加:访客只读;开发者编辑草稿、上传、发布、写服务器数据;维护者管理设置和低级成员;所有者管理全部成员、删除与转移。 / Cumulative guest, developer, maintainer and owner roles.

    Possible values: [guest, developer, maintainer, owner]

    fixedValues objectrequired
    property name*any
    descriptionstring
    tagsstring[]
  • ]
  • agentModelPolicy object

    Source-declared restriction retained independently of published field visibility. Draft and template metadata cannot relax the current source restriction.

    allowThirdPartyboolean
    fields object[]required
  • Array [
  • namestringrequired

    Possible values: Value must match regular expression ^[A-Za-z_][A-Za-z0-9_.-]{0,199}$

    typestringrequired

    Possible values: [string, number, boolean, json, file]

    labelstring
    descriptionstring
    defaultValue

    Native JSON default. Never store real secrets in source declarations.

    requiredboolean
    secretboolean
    multipleboolean

    String arrays for string fields; up to 32 server file references for file fields.

    controlstring

    ai-models is reserved for the STEAMHARNESS_AGENT_MODELS JSON field. Entries contain id, name, model and source. System entries use credentialId; third-party entries use apiKind, baseUrl and apiKey. Values are private unless explicitly included in publication.

    Possible values: [text, textarea, select, radio, checkboxes, ai-models]

    allowThirdPartyboolean

    Only valid for ai-models. Set false in configuration.json to allow only system AI. Saves and imports cannot add third-party entries or relax the project's declared policy. Omitted or true allows both sources.

    acceptstring[]

    File fields only. Accepted MIME types or extensions. Files upload through POST /api/projects/{projectId}/configurations/files and values contain server metadata, never file bytes.

    options object[]
  • Array [
  • valuestringrequired
    labelstring
  • ]
  • sharing object
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    paths object

    JSON Pointer rules, inherited from the parent with more specific rules taking precedence. Excluding the whole field excludes every descendant.

    property name* ConfigurationSharingRule
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    omittedPathsstring[]

    Generated opaque deny hashes for omitted JSON paths, without private path names.

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

  • ]
  • configurations object[]required

    Possible values: >= 1

  • Array [
  • idstringrequired
    namestringrequired

    Possible values: non-empty and <= 200 characters

    profileKeystring

    Stable source-declared role profile.

    values objectrequired
    property name*any
  • ]
  • defaultConfigurationIdstringrequired
    reservedFieldsstring[]

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

    attachments object[]
  • Array [
  • idstringrequired
    pathstringrequired
    sha256stringrequired

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

  • ]
  • publication object
    revisionintegerrequired

    Possible values: >= 0

    configurationRevisionintegerrequired

    Possible values: >= 0

    profilePolicy object

    Source-owned role policy. Client labels, role claims and personal metadata never grant authority. Projects without this policy keep their existing behavior.

    versionintegerrequired

    Possible values: [1]

    defaultProfileKeystringrequired

    Must identify a guest profile.

    manageMinimumRoleProjectRolerequired

    权限逐级累加:访客只读;开发者编辑草稿、上传、发布、写服务器数据;维护者管理设置和低级成员;所有者管理全部成员、删除与转移。 / Cumulative guest, developer, maintainer and owner roles.

    Possible values: [guest, developer, maintainer, owner]

    profiles object[]required

    Possible values: >= 1

  • Array [
  • keystringrequired
    namestringrequired
    minimumRoleProjectRolerequired

    权限逐级累加:访客只读;开发者编辑草稿、上传、发布、写服务器数据;维护者管理设置和低级成员;所有者管理全部成员、删除与转移。 / Cumulative guest, developer, maintainer and owner roles.

    Possible values: [guest, developer, maintainer, owner]

    fixedValues objectrequired
    property name*any
    descriptionstring
    tagsstring[]
  • ]
  • agentModelPolicy object

    Source-declared restriction retained independently of published field visibility. Draft and template metadata cannot relax the current source restriction.

    allowThirdPartyboolean
    configurationAccountIdstring

    Server-assigned source account for personal revision checks; client values do not grant authority.

    fields object[]required
  • Array [
  • namestringrequired

    Possible values: Value must match regular expression ^[A-Za-z_][A-Za-z0-9_.-]{0,199}$

    typestringrequired

    Possible values: [string, number, boolean, json, file]

    labelstring
    descriptionstring
    defaultValue

    Native JSON default. Never store real secrets in source declarations.

    requiredboolean
    secretboolean
    multipleboolean

    String arrays for string fields; up to 32 server file references for file fields.

    controlstring

    ai-models is reserved for the STEAMHARNESS_AGENT_MODELS JSON field. Entries contain id, name, model and source. System entries use credentialId; third-party entries use apiKind, baseUrl and apiKey. Values are private unless explicitly included in publication.

    Possible values: [text, textarea, select, radio, checkboxes, ai-models]

    allowThirdPartyboolean

    Only valid for ai-models. Set false in configuration.json to allow only system AI. Saves and imports cannot add third-party entries or relax the project's declared policy. Omitted or true allows both sources.

    acceptstring[]

    File fields only. Accepted MIME types or extensions. Files upload through POST /api/projects/{projectId}/configurations/files and values contain server metadata, never file bytes.

    options object[]
  • Array [
  • valuestringrequired
    labelstring
  • ]
  • sharing object
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    paths object

    JSON Pointer rules, inherited from the parent with more specific rules taking precedence. Excluding the whole field excludes every descendant.

    property name* ConfigurationSharingRule
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    omittedPathsstring[]

    Generated opaque deny hashes for omitted JSON paths, without private path names.

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

  • ]
  • configurations object[]required

    Possible values: >= 1

  • Array [
  • idstringrequired
    namestringrequired

    Possible values: non-empty and <= 200 characters

    profileKeystring

    Stable source-declared role profile.

    values objectrequired
    property name*any
  • ]
  • defaultConfigurationIdstringrequired
    publicationPreview object

    Version 3 freezes role policies and is rejected by unsupported hosts. Immutable, filtered version data; defaultValue is omitted. Arrays are indivisible. Excluded names are represented only by opaque deny hashes. The authenticated download validates source and attachment hashes before caching outside project source.

    versionintegerrequired

    Possible values: [2, 3]

    kindstringrequired

    Possible values: [steamharness-configuration-template]

    projectIdstringrequired
    projectVersionstringrequired
    sourceHashstringrequired

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

    draftRevisionintegerrequired

    Possible values: >= 0

    profilePolicy object

    Source-owned role policy. Client labels, role claims and personal metadata never grant authority. Projects without this policy keep their existing behavior.

    versionintegerrequired

    Possible values: [1]

    defaultProfileKeystringrequired

    Must identify a guest profile.

    manageMinimumRoleProjectRolerequired

    权限逐级累加:访客只读;开发者编辑草稿、上传、发布、写服务器数据;维护者管理设置和低级成员;所有者管理全部成员、删除与转移。 / Cumulative guest, developer, maintainer and owner roles.

    Possible values: [guest, developer, maintainer, owner]

    profiles object[]required

    Possible values: >= 1

  • Array [
  • keystringrequired
    namestringrequired
    minimumRoleProjectRolerequired

    权限逐级累加:访客只读;开发者编辑草稿、上传、发布、写服务器数据;维护者管理设置和低级成员;所有者管理全部成员、删除与转移。 / Cumulative guest, developer, maintainer and owner roles.

    Possible values: [guest, developer, maintainer, owner]

    fixedValues objectrequired
    property name*any
    descriptionstring
    tagsstring[]
  • ]
  • agentModelPolicy object

    Source-declared restriction retained independently of published field visibility. Draft and template metadata cannot relax the current source restriction.

    allowThirdPartyboolean
    fields object[]required
  • Array [
  • namestringrequired

    Possible values: Value must match regular expression ^[A-Za-z_][A-Za-z0-9_.-]{0,199}$

    typestringrequired

    Possible values: [string, number, boolean, json, file]

    labelstring
    descriptionstring
    defaultValue

    Native JSON default. Never store real secrets in source declarations.

    requiredboolean
    secretboolean
    multipleboolean

    String arrays for string fields; up to 32 server file references for file fields.

    controlstring

    ai-models is reserved for the STEAMHARNESS_AGENT_MODELS JSON field. Entries contain id, name, model and source. System entries use credentialId; third-party entries use apiKind, baseUrl and apiKey. Values are private unless explicitly included in publication.

    Possible values: [text, textarea, select, radio, checkboxes, ai-models]

    allowThirdPartyboolean

    Only valid for ai-models. Set false in configuration.json to allow only system AI. Saves and imports cannot add third-party entries or relax the project's declared policy. Omitted or true allows both sources.

    acceptstring[]

    File fields only. Accepted MIME types or extensions. Files upload through POST /api/projects/{projectId}/configurations/files and values contain server metadata, never file bytes.

    options object[]
  • Array [
  • valuestringrequired
    labelstring
  • ]
  • sharing object
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    paths object

    JSON Pointer rules, inherited from the parent with more specific rules taking precedence. Excluding the whole field excludes every descendant.

    property name* ConfigurationSharingRule
    publishboolean
    Default value: true
    includeValueboolean
    Default value: false
    editableboolean
    Default value: true
    omittedPathsstring[]

    Generated opaque deny hashes for omitted JSON paths, without private path names.

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

  • ]
  • configurations object[]required

    Possible values: >= 1

  • Array [
  • idstringrequired
    namestringrequired

    Possible values: non-empty and <= 200 characters

    profileKeystring

    Stable source-declared role profile.

    values objectrequired
    property name*any
  • ]
  • defaultConfigurationIdstringrequired
    reservedFieldsstring[]

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

    attachments object[]
  • Array [
  • idstringrequired
    pathstringrequired
    sha256stringrequired

    Possible values: Value must match regular expression ^[a-f0-9]{64}$

  • ]
  • canManagePublicationboolean
    sourceHashstring

    当前所选源码的摘要;读取已发布版本不会要求草稿存在。 / Hash of the selected source; reading a published version does not require a draft.

    publicationRevisioninteger

    仅开发者及以上读取草稿时提供,用于发布并发校验。 / Provided to developers and above when reading the draft for publication concurrency checks.

    fieldCapabilities object
    property name* ProjectConfigurationCapability
    editablebooleanrequired
    reasonstring
    paths object
    property name* ProjectConfigurationCapability
    editablebooleanrequired
    reasonstring
    conflicts object[]

    Preserved personal drafts whose field types changed on upgrade.

  • Array [
  • configurationIdstring
    keystring
    value
    reasonstring
  • ]
  • ProjectConfigurationResponse
    {
    "errCode": 0,
    "errMessage": "string",
    "data": {
    "profilePolicy": {
    "version": 1,
    "defaultProfileKey": "string",
    "manageMinimumRole": "guest",
    "profiles": [
    {
    "key": "string",
    "name": "string",
    "minimumRole": "guest",
    "fixedValues": {},
    "description": "string",
    "tags": [
    "string"
    ]
    }
    ]
    },
    "agentModelPolicy": {
    "allowThirdParty": true
    },
    "version": 1,
    "revision": 0,
    "fields": [
    {
    "name": "string",
    "type": "string",
    "label": "string",
    "description": "string",
    "required": true,
    "secret": true,
    "multiple": true,
    "control": "text",
    "allowThirdParty": true,
    "accept": [
    "string"
    ],
    "options": [
    {
    "value": "string",
    "label": "string"
    }
    ],
    "sharing": {
    "publish": true,
    "includeValue": false,
    "editable": true
    },
    "paths": {},
    "omittedPaths": [
    "string"
    ]
    }
    ],
    "customFields": [
    {
    "name": "string",
    "type": "string",
    "label": "string",
    "description": "string",
    "required": true,
    "secret": true,
    "multiple": true,
    "control": "text",
    "allowThirdParty": true,
    "accept": [
    "string"
    ],
    "options": [
    {
    "value": "string",
    "label": "string"
    }
    ],
    "sharing": {
    "publish": true,
    "includeValue": false,
    "editable": true
    },
    "paths": {},
    "omittedPaths": [
    "string"
    ]
    }
    ],
    "shadowedCustomFields": [
    {
    "name": "string",
    "type": "string",
    "label": "string",
    "description": "string",
    "required": true,
    "secret": true,
    "multiple": true,
    "control": "text",
    "allowThirdParty": true,
    "accept": [
    "string"
    ],
    "options": [
    {
    "value": "string",
    "label": "string"
    }
    ],
    "sharing": {
    "publish": true,
    "includeValue": false,
    "editable": true
    },
    "paths": {},
    "omittedPaths": [
    "string"
    ]
    }
    ],
    "capabilities": {
    "manageConfigurations": true,
    "role": "guest",
    "online": true,
    "subject": "string",
    "reason": "string"
    },
    "configurationCapabilities": {},
    "configurations": [
    {
    "deletedPaths": {},
    "profileKey": "string",
    "baseProfile": true,
    "templateId": "string",
    "id": "string",
    "name": "string",
    "values": {},
    "createdAt": "2024-07-29T15:51:28.071Z",
    "updatedAt": "2024-07-29T15:51:28.071Z"
    }
    ],
    "activeConfigurationId": "string",
    "template": {
    "version": 2,
    "kind": "steamharness-configuration-template",
    "projectId": "string",
    "projectVersion": "string",
    "sourceHash": "string",
    "draftRevision": 0,
    "profilePolicy": {
    "version": 1,
    "defaultProfileKey": "string",
    "manageMinimumRole": "guest",
    "profiles": [
    {
    "key": "string",
    "name": "string",
    "minimumRole": "guest",
    "fixedValues": {},
    "description": "string",
    "tags": [
    "string"
    ]
    }
    ]
    },
    "agentModelPolicy": {
    "allowThirdParty": true
    },
    "fields": [
    {
    "name": "string",
    "type": "string",
    "label": "string",
    "description": "string",
    "required": true,
    "secret": true,
    "multiple": true,
    "control": "text",
    "allowThirdParty": true,
    "accept": [
    "string"
    ],
    "options": [
    {
    "value": "string",
    "label": "string"
    }
    ],
    "sharing": {
    "publish": true,
    "includeValue": false,
    "editable": true
    },
    "paths": {},
    "omittedPaths": [
    "string"
    ]
    }
    ],
    "configurations": [
    {
    "id": "string",
    "name": "string",
    "profileKey": "string",
    "values": {}
    }
    ],
    "defaultConfigurationId": "string",
    "reservedFields": [
    "string"
    ],
    "attachments": [
    {
    "id": "string",
    "path": "string",
    "sha256": "string"
    }
    ]
    },
    "publication": {
    "revision": 0,
    "configurationRevision": 0,
    "profilePolicy": {
    "version": 1,
    "defaultProfileKey": "string",
    "manageMinimumRole": "guest",
    "profiles": [
    {
    "key": "string",
    "name": "string",
    "minimumRole": "guest",
    "fixedValues": {},
    "description": "string",
    "tags": [
    "string"
    ]
    }
    ]
    },
    "agentModelPolicy": {
    "allowThirdParty": true
    },
    "configurationAccountId": "string",
    "fields": [
    {
    "name": "string",
    "type": "string",
    "label": "string",
    "description": "string",
    "required": true,
    "secret": true,
    "multiple": true,
    "control": "text",
    "allowThirdParty": true,
    "accept": [
    "string"
    ],
    "options": [
    {
    "value": "string",
    "label": "string"
    }
    ],
    "sharing": {
    "publish": true,
    "includeValue": false,
    "editable": true
    },
    "paths": {},
    "omittedPaths": [
    "string"
    ]
    }
    ],
    "configurations": [
    {
    "id": "string",
    "name": "string",
    "profileKey": "string",
    "values": {}
    }
    ],
    "defaultConfigurationId": "string"
    },
    "publicationPreview": {
    "version": 2,
    "kind": "steamharness-configuration-template",
    "projectId": "string",
    "projectVersion": "string",
    "sourceHash": "string",
    "draftRevision": 0,
    "profilePolicy": {
    "version": 1,
    "defaultProfileKey": "string",
    "manageMinimumRole": "guest",
    "profiles": [
    {
    "key": "string",
    "name": "string",
    "minimumRole": "guest",
    "fixedValues": {},
    "description": "string",
    "tags": [
    "string"
    ]
    }
    ]
    },
    "agentModelPolicy": {
    "allowThirdParty": true
    },
    "fields": [
    {
    "name": "string",
    "type": "string",
    "label": "string",
    "description": "string",
    "required": true,
    "secret": true,
    "multiple": true,
    "control": "text",
    "allowThirdParty": true,
    "accept": [
    "string"
    ],
    "options": [
    {
    "value": "string",
    "label": "string"
    }
    ],
    "sharing": {
    "publish": true,
    "includeValue": false,
    "editable": true
    },
    "paths": {},
    "omittedPaths": [
    "string"
    ]
    }
    ],
    "configurations": [
    {
    "id": "string",
    "name": "string",
    "profileKey": "string",
    "values": {}
    }
    ],
    "defaultConfigurationId": "string",
    "reservedFields": [
    "string"
    ],
    "attachments": [
    {
    "id": "string",
    "path": "string",
    "sha256": "string"
    }
    ]
    },
    "canManagePublication": true,
    "sourceHash": "string",
    "publicationRevision": 0,
    "fieldCapabilities": {},
    "conflicts": [
    {
    "configurationId": "string",
    "key": "string",
    "value": {},
    "reason": "string"
    }
    ]
    }
    }