Transcend Custom Integration API

Stream files, push datapoints, and respond to access, erasure, opt-in, and opt-out requests.

Documentation

Specifications

Schemas & Data

Other Resources

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/transcend-io-custom-integration-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 email required.

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

OpenAPI Specification

transcend-io-custom-integration-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Transcend Custom Integration API
  version: '3.2'
  description: 'Transcend''s REST API for privacy operations including data subject requests,

    preflight identifier enrichment, custom integrations, consent and preference

    management, LLM classifier, public JWT signing keys, and webhooks. Endpoints

    and base URLs derived from the official OpenAPI at

    https://docs.transcend.io/api/oas.json and the API reference at

    https://docs.transcend.io/docs/api-reference.

    '
  contact:
    name: Transcend
    url: https://docs.transcend.io/docs/api-reference
  license:
    name: Proprietary
    url: https://transcend.io/legal/terms-of-service
servers:
- url: https://api.transcend.io
  description: EU Backend (CLI default)
- url: https://api.us.transcend.io
  description: US Backend
- url: https://multi-tenant.sombra.transcend.io
  description: Multi-tenant Sombra (EU)
- url: https://multi-tenant.sombra.us.transcend.io
  description: Multi-tenant Sombra (US)
- url: https://consent.transcend.io
  description: Preference Store (Europe)
- url: https://consent.us.transcend.io
  description: Preference Store (US)
security:
- Transcend_API_Key: []
tags:
- name: Custom Integration
  description: Stream files, push datapoints, and respond to access, erasure, opt-in, and opt-out requests.
paths:
  /v1/files:
    get:
      tags:
      - Custom Integration
      summary: List Files for Custom Integration
      operationId: listFiles
      parameters:
      - in: query
        name: requestId
        schema:
          type: string
      responses:
        '200':
          description: File listing
          content:
            application/json:
              schema:
                type: object
                properties:
                  files:
                    type: array
                    items:
                      $ref: '#/components/schemas/File'
  /v1/datapoint:
    post:
      tags:
      - Custom Integration
      summary: Push Datapoints From a Custom Integration
      operationId: pushDatapoints
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DatapointBatch'
      responses:
        '200':
          description: Accepted
  /v1/datapoint-chunked:
    post:
      tags:
      - Custom Integration
      summary: Push Chunked Datapoints
      operationId: pushChunkedDatapoints
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DatapointBatch'
      responses:
        '200':
          description: Accepted
  /v1/data-silo:
    post:
      tags:
      - Custom Integration
      summary: Create or Sync a Data Silo
      operationId: createDataSilo
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DataSilo'
      responses:
        '200':
          description: Data silo
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataSilo'
    put:
      tags:
      - Custom Integration
      summary: Update a Data Silo
      operationId: updateDataSilo
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DataSilo'
      responses:
        '200':
          description: Updated
  /v1/data-silo/{id}/pending-requests/{type}:
    get:
      tags:
      - Custom Integration
      summary: List Pending Requests For a Data Silo By Type
      operationId: listDataSiloPendingRequests
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      - in: path
        name: type
        required: true
        schema:
          type: string
          enum:
          - ACCESS
          - ERASURE
          - OPT_IN
          - OPT_OUT
      responses:
        '200':
          description: Pending requests
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DataSubjectRequest'
components:
  schemas:
    DatapointBatch:
      type: object
      properties:
        requestId:
          type: string
        dataSiloId:
          type: string
        datapoints:
          type: array
          items:
            $ref: '#/components/schemas/Datapoint'
    File:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        mimeType:
          type: string
        size:
          type: integer
    Identifier:
      type: object
      properties:
        name:
          type: string
          description: Identifier slug (e.g. email, phone, userId).
        value:
          type: string
    DataSubjectRequestType:
      type: string
      enum:
      - ACCESS
      - ERASURE
      - OPT_IN
      - OPT_OUT
      - RECTIFICATION
      - RESTRICTION
      - AUTO_FULFILL
    DataSilo:
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        type:
          type: string
          description: Integration type slug (e.g. server, aws, salesforce).
        url:
          type: string
          format: uri
        description:
          type: string
        headers:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              value:
                type: string
              isSecret:
                type: boolean
        outerType:
          type: string
    DataSubjectRequest:
      type: object
      properties:
        id:
          type: string
          format: uuid
        type:
          $ref: '#/components/schemas/DataSubjectRequestType'
        status:
          type: string
          enum:
          - REQUEST_MADE
          - IN_PROGRESS
          - COMPLETED
          - FAILED
          - REJECTED
          - REVOKED
        coreIdentifier:
          $ref: '#/components/schemas/Identifier'
        subjectType:
          type: string
        locale:
          type: string
        createdAt:
          type: string
          format: date-time
        completedAt:
          type: string
          format: date-time
    Datapoint:
      type: object
      properties:
        name:
          type: string
        path:
          type: array
          items:
            type: string
        value:
          description: Arbitrary JSON value associated with the datapoint.
  securitySchemes:
    Transcend_API_Key:
      type: apiKey
      in: header
      name: Authorization
      description: 'API key issued from the Transcend admin dashboard. Send as `Authorization: Bearer <key>`.'