Drata Trust Center Updates API

The Trust Center Updates API from Drata — 4 operation(s) for trust center updates.

Business capability
Trust Portal & Public Disclosure BC-4290.30

Operations 9

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /tcu/topics/ Create a Trust Center update topic · Create topic #
Ask an LLM
“How do I start a new topic for Trust Center announcements?”
“Can I create a Trust Center topic that stays hidden?”
Tell an agent
Create a Trust Center topic {subject} in category {category}.
Add a Trust Center topic {subject} under {category} with hidden set to {hidden}.
GET /tcu/topics/ List Trust Center update topics · List topics #
Ask an LLM
“What topics are set up for Trust Center updates?”
“Which subjects do we post Trust Center announcements under?”
Tell an agent
List all Trust Center update topics.
Show me our top-level Trust Center topics.
PATCH /tcu/topics/{topicId} Update a Trust Center topic · Update topic #
Ask an LLM
“Can I change the subject or visibility of a Trust Center topic?”
“Is it possible to edit an existing Trust Center topic?”
Tell an agent
Update Trust Center topic {topic}.
Edit the settings of Trust Center topic {topic}.
DELETE /tcu/topics/{topicId} Delete a Trust Center topic · Delete topic #
Ask an LLM
“Can I remove a Trust Center topic we no longer use?”
“What happens when I delete a Trust Center topic?”
Tell an agent destructive · confirm first
Delete Trust Center topic {topic}.
Remove topic {topic} from the Trust Center.
GET /tcu/topics/{topicId} Get a Trust Center topic · Get topic by ID #
Ask an LLM
“What are the details of one Trust Center topic?”
“Can I look up a Trust Center topic by ID?”
Tell an agent
Get Trust Center topic {topic}.
Show me topic {topic} from our Trust Center.
POST /tcu/topics/{topicId}/updates Post an update to a Trust Center topic · Create update #
Ask an LLM
“How do I post a new security update to our Trust Center?”
“Which channels can a Trust Center update be sent through?”
Tell an agent
Post update {message} to Trust Center topic {topic} via {channels}.
Publish a Trust Center update under topic {topic} saying {message} on channels {channels}.
GET /tcu/topics/{topicId}/updates/{updateId} Get one Trust Center update · Get update by ID #
Ask an LLM
“Can I retrieve a specific Trust Center update we posted?”
“What did a particular Trust Center update say?”
Tell an agent
Get update {update} in Trust Center topic {topic}.
Show the Trust Center update {update} posted under topic {topic}.
PATCH /tcu/topics/{topicId}/updates/{updateId} Edit the message of a Trust Center update · Edit update #
Ask an LLM
“Can I fix a typo in a Trust Center update after posting it?”
“Is it possible to change the text of an existing Trust Center update?”
Tell an agent
Change the message of update {update} in topic {topic} to {message}.
Edit Trust Center update {update} under topic {topic}.
DELETE /tcu/topics/{topicId}/updates/{updateId} Delete a Trust Center update · Delete update #
Ask an LLM
“Can I take down an update I posted to the Trust Center?”
“Is deleting a Trust Center update reversible?”
Tell an agent destructive · confirm first
Delete update {update} from Trust Center topic {topic}.
Remove Trust Center update {update} under topic {topic}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/drata:drata-trust-center-updates-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

drata-trust-center-updates-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: SafeBase API documentation.
  version: 1.4.1
  title: SafeBase API documentation Trust Center Updates API
  contact:
    email: support@safebase.io
servers:
- url: https://app.safebase.io/api/ext/v1/rest
security:
- apiKey: []
tags:
- name: Trust Center Updates
paths:
  /tcu/topics/:
    post:
      tags:
      - Trust Center Updates
      summary: Create topic
      description: Create a top-level Trust Center Update topic
      operationId: createTopic
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - subject
              - category
              properties:
                subject:
                  type: string
                  example: New topic
                category:
                  type: string
                  enum:
                  - compliance
                  - vulnerabilities
                  - incidents
                  - subprocessors
                  - general
                  example: compliance
                hidden:
                  type: boolean
                  default: false
                  example: false
      responses:
        '201':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  result:
                    $ref: '#/components/schemas/TrustCenterTopicResponse'
        '400':
          $ref: '#/components/responses/400'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
      security:
      - apiKey:
        - tcupdates:edit
    get:
      tags:
      - Trust Center Updates
      summary: List topics
      description: List top-level Trust Center Update topics
      operationId: listTopics
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  result:
                    type: array
                    items:
                      $ref: '#/components/schemas/TrustCenterTopicResponse'
        '400':
          $ref: '#/components/responses/400'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
      security:
      - apiKey:
        - tcupdates:view
  /tcu/topics/{topicId}:
    patch:
      tags:
      - Trust Center Updates
      summary: Update topic
      description: Update a Trust Center topic
      operationId: updateTrustCenterTopic
      parameters:
      - name: topicId
        in: path
        required: true
        schema:
          description: The id of the topic to update
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                $ref: '#/paths/~1tcu~1topics~1/post/requestBody/content/application~1json/schema/properties'
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  result:
                    $ref: '#/components/schemas/TrustCenterTopicResponse'
        '400':
          $ref: '#/components/responses/400'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
      security:
      - apiKey:
        - tcupdates:edit
    delete:
      tags:
      - Trust Center Updates
      summary: Delete topic
      description: Delete a Trust Center topic
      operationId: deleteTrustCenterTopic
      parameters:
      - name: topicId
        in: path
        required: true
        schema:
          description: The parent topic id
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
        '400':
          $ref: '#/components/responses/400'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
      security:
      - apiKey:
        - tcupdates:edit
    get:
      tags:
      - Trust Center Updates
      summary: Get topic by ID
      description: Get a Trust Center topic
      operationId: getTrustCenterTopic
      parameters:
      - name: topicId
        in: path
        required: true
        schema:
          description: The topic id
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  result:
                    $ref: '#/components/schemas/TrustCenterTopicResponse'
        '400':
          $ref: '#/components/responses/400'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
      security:
      - apiKey:
        - tcupdates:view
  /tcu/topics/{topicId}/updates:
    post:
      tags:
      - Trust Center Updates
      summary: Create update
      description: Create a Trust Center Update
      operationId: createTrustCenterUpdate
      parameters:
      - name: topicId
        in: path
        required: true
        schema:
          description: The parent topic id
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - message
              - channels
              properties:
                message:
                  type: string
                  example: We are investigating any potential effects of the MegaCorp breach on our systems.
                channels:
                  type: object
                  description: The channel(s) to publish the update to. At least one channel must be specified. You must provide either statusPage OR email (with subscribers or audience).
                  properties:
                    statusPage:
                      type: boolean
                      default: false
                      description: Publish the update on the Trust Center Updates Card. This is considered a channel.
                    statusPageAudience:
                      type: string
                      enum:
                      - public
                      - private
                      default: public
                      example: public
                      description: If statusPage is true, this is the audience to publish the update to. Choose "public" for all users or "private" for account members only.
                    email:
                      type: object
                      description: 'Email channel configuration. Must specify at least one of: subscribers or audience. Both can be provided together.'
                      properties:
                        subscribers:
                          type: boolean
                          example: true
                          description: Whether to send the update to the subscribers channel. This is considered a channel.
                        audience:
                          type: object
                          description: A list of emails the update should be sent to. This is considered a channel.
                          properties:
                            emails:
                              type: array
                              items:
                                type: string
                                format: email
                              minItems: 1
                  anyOf:
                  - required:
                    - statusPage
                    properties:
                      statusPage:
                        const: true
                  - required:
                    - email
                    properties:
                      email:
                        anyOf:
                        - required:
                          - subscribers
                          properties:
                            subscribers:
                              const: true
                        - required:
                          - audience
      responses:
        '201':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  result:
                    $ref: '#/components/schemas/TrustCenterUpdateResponse'
        '400':
          $ref: '#/components/responses/400'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
      security:
      - apiKey:
        - tcupdates:edit
  /tcu/topics/{topicId}/updates/{updateId}:
    get:
      tags:
      - Trust Center Updates
      summary: Get update by ID
      description: Get a Trust Center Update by ID
      operationId: getTrustCenterUpdateById
      parameters:
      - name: topicId
        in: path
        required: true
        schema:
          description: The parent topic id
          type: string
      - name: updateId
        in: path
        required: true
        schema:
          description: The update id
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  result:
                    $ref: '#/components/schemas/TrustCenterUpdateResponse'
        '400':
          $ref: '#/components/responses/400'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
      security:
      - apiKey:
        - tcupdates:read
    patch:
      tags:
      - Trust Center Updates
      summary: Edit update
      description: Edit a Trust Center Update
      operationId: updateTrustCenterUpdate
      parameters:
      - name: topicId
        in: path
        required: true
        schema:
          description: The parent topic id
          type: string
      - name: updateId
        in: path
        required: true
        schema:
          description: The update id
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                message:
                  type: string
                  description: The new message for the Trust Center Update
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  result:
                    $ref: '#/components/schemas/TrustCenterUpdateResponse'
        '400':
          $ref: '#/components/responses/400'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
      security:
      - apiKey:
        - tcupdates:edit
    delete:
      tags:
      - Trust Center Updates
      summary: Delete update
      description: Delete a Trust Center Update
      operationId: deleteTrustCenterUpdate
      parameters:
      - name: topicId
        in: path
        required: true
        schema:
          description: The parent topic id
          type: string
      - name: updateId
        in: path
        required: true
        schema:
          description: The update id
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
        '400':
          $ref: '#/components/responses/400'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
      security:
      - apiKey:
        - tcupdates:edit
components:
  schemas:
    ApiResponseNotFound:
      type: object
      properties:
        statusCode:
          type: integer
          example: 404
        error:
          type: string
          example: not_found
        message:
          type: string
          example: Not found
    ApiResponseInvalidApiKeyOrMissingScope:
      type: object
      properties:
        statusCode:
          type: integer
          example: 403
        error:
          type: string
          example: forbidden
        message:
          type: string
          example: 'Invalid API key / Missing required scope(s): (missing scopes here)'
    TrustCenterUpdateResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
        message:
          type: string
          example: Trust center updated
        createdAt:
          type: string
          format: date-time
          example: '2020-01-01T00:00:00.000Z'
        updatedAt:
          type: string
          format: date-time
          example: '2020-01-01T00:00:00.000Z'
        topicId:
          type: string
          format: uuid
    TrustCenterTopicResponse:
      type: object
      properties:
        id:
          type: string
          example: d9692768-cdbd-4fa9-988b-b33f37286f1b
        subject:
          type: string
          example: New topic
        category:
          type: string
          enum:
          - compliance
          - vulnerabilities
          - incidents
          - subprocessors
          - general
          example: compliance
        hidden:
          type: boolean
          example: false
        createdAt:
          type: string
          format: date-time
          example: '2020-01-01T00:00:00.000Z'
        updatedAt:
          type: string
          format: date-time
          example: '2020-01-01T00:00:00.000Z'
        updates:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                format: uuid
              message:
                type: string
                example: Trust center updated
              createdAt:
                type: string
                format: date-time
                example: '2020-01-01T00:00:00.000Z'
              updatedAt:
                type: string
                format: date-time
                example: '2020-01-01T00:00:00.000Z'
              topicId:
                type: string
                format: uuid
    ApiResponseInvalidRequest:
      type: object
      properties:
        statusCode:
          type: integer
          example: 400
        error:
          type: string
          example: bad_request
        message:
          type: string
          example: Invalid request.
  responses:
    '400':
      description: Invalid request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiResponseInvalidRequest'
    '404':
      description: Not found or no access
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiResponseNotFound'
    '405':
      description: Method not allowed
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiResponseNotFound'
    '403':
      description: Invalid api key / missing scope
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiResponseInvalidApiKeyOrMissingScope'
  securitySchemes:
    apiKey:
      type: apiKey
      name: x-sb-api-key
      in: header