tessl.io PublishPolicy API
The PublishPolicy API from tessl.io — 1 operation(s) for publishpolicy.
The PublishPolicy API from tessl.io — 1 operation(s) for publishpolicy.
openapi: 3.1.1
info:
title: Tessl Admin Keys PublishPolicy API
version: 1.0.0
description: Admin-scoped API keys for support tooling.
servers:
- url: https://api.tessl.io
tags:
- name: PublishPolicy
paths:
/experimental/orgs/{orgId}/publish-policy:
get:
tags:
- PublishPolicy
description: Returns the publish policy for the organization, falling back to the default policy when no row exists. A persisted policy that no longer matches the current schema surfaces as a 500 rather than silently downgrading to the default.
parameters:
- schema:
format: uuid
type: string
in: path
name: orgId
required: true
- schema:
type: string
example: Bearer <token>
in: header
name: Authorization
required: false
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
required:
- links
- data
properties:
links:
type: object
required:
- self
properties:
self:
format: uri
type: string
data:
type: object
required:
- id
- type
- attributes
properties:
id:
format: uuid
type: string
type:
type: string
enum:
- publish-policy
attributes:
type: object
required:
- policyDoc
- isDefault
- updatedAt
properties:
policyDoc:
additionalProperties: false
type: object
required:
- version
- rules
properties:
version:
type: number
enum:
- 1
rules:
additionalProperties: false
type: object
required:
- securityThreshold
properties:
securityThreshold:
additionalProperties: false
type: object
required:
- minSeverityToBlock
properties:
minSeverityToBlock:
anyOf:
- anyOf:
- type: string
enum:
- MEDIUM
- type: string
enum:
- HIGH
- type: string
enum:
- CRITICAL
- type: 'null'
isDefault:
type: boolean
updatedAt:
anyOf:
- format: date-time
type: string
- type: 'null'
'401':
description: Unauthorized
content:
application/json:
schema:
description: Unauthorized
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Unauthorized
status:
type: number
enum:
- 401
message:
type: string
'403':
description: Forbidden
content:
application/json:
schema:
description: Forbidden
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Forbidden
status:
type: number
enum:
- 403
message:
type: string
'404':
description: Not Found
content:
application/json:
schema:
description: Not Found
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Not Found
status:
type: number
enum:
- 404
message:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
description: Internal Server Error
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Internal Server Error
status:
type: number
enum:
- 500
message:
type: string
put:
tags:
- PublishPolicy
description: Upserts the publish policy for the organization.
requestBody:
required: true
content:
application/json:
schema:
additionalProperties: false
type: object
required:
- policyDoc
properties:
policyDoc:
additionalProperties: false
type: object
required:
- version
- rules
properties:
version:
type: number
enum:
- 1
rules:
additionalProperties: false
type: object
required:
- securityThreshold
properties:
securityThreshold:
additionalProperties: false
type: object
required:
- minSeverityToBlock
properties:
minSeverityToBlock:
anyOf:
- anyOf:
- type: string
enum:
- MEDIUM
- type: string
enum:
- HIGH
- type: string
enum:
- CRITICAL
- type: 'null'
parameters:
- schema:
format: uuid
type: string
in: path
name: orgId
required: true
- schema:
type: string
example: Bearer <token>
in: header
name: Authorization
required: false
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
required:
- links
- data
properties:
links:
type: object
required:
- self
properties:
self:
format: uri
type: string
data:
type: object
required:
- id
- type
- attributes
properties:
id:
format: uuid
type: string
type:
type: string
enum:
- publish-policy
attributes:
type: object
required:
- policyDoc
- isDefault
- updatedAt
properties:
policyDoc:
additionalProperties: false
type: object
required:
- version
- rules
properties:
version:
type: number
enum:
- 1
rules:
additionalProperties: false
type: object
required:
- securityThreshold
properties:
securityThreshold:
additionalProperties: false
type: object
required:
- minSeverityToBlock
properties:
minSeverityToBlock:
anyOf:
- anyOf:
- type: string
enum:
- MEDIUM
- type: string
enum:
- HIGH
- type: string
enum:
- CRITICAL
- type: 'null'
isDefault:
type: boolean
updatedAt:
format: date-time
type: string
'401':
description: Unauthorized
content:
application/json:
schema:
description: Unauthorized
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Unauthorized
status:
type: number
enum:
- 401
message:
type: string
'403':
description: Forbidden
content:
application/json:
schema:
description: Forbidden
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Forbidden
status:
type: number
enum:
- 403
message:
type: string
'404':
description: Not Found
content:
application/json:
schema:
description: Not Found
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Not Found
status:
type: number
enum:
- 404
message:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
description: Internal Server Error
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Internal Server Error
status:
type: number
enum:
- 500
message:
type: string
delete:
tags:
- PublishPolicy
description: Deletes the publish policy for the organization, reverting to the default policy. Idempotent.
parameters:
- schema:
format: uuid
type: string
in: path
name: orgId
required: true
- schema:
type: string
example: Bearer <token>
in: header
name: Authorization
required: false
responses:
'204':
description: Default Response
'401':
description: Unauthorized
content:
application/json:
schema:
description: Unauthorized
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Unauthorized
status:
type: number
enum:
- 401
message:
type: string
'403':
description: Forbidden
content:
application/json:
schema:
description: Forbidden
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Forbidden
status:
type: number
enum:
- 403
message:
type: string
'404':
description: Not Found
content:
application/json:
schema:
description: Not Found
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Not Found
status:
type: number
enum:
- 404
message:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
description: Internal Server Error
type: object
required:
- error
properties:
error:
type: object
required:
- title
- status
- message
properties:
title:
type: string
enum:
- Internal Server Error
status:
type: number
enum:
- 500
message:
type: string