Forsta Datasources Data API

Append, replace or delete data for a datasource. The data argument can be either an array of objects (JSON), a tab delimited file encoded as a single string (utf8 only) or an Excel 2007 file encoded as base-64.

Operations 4

POST /surveys/{survey}/datasources/{datasource}/data Append datasource data #
GET /surveys/{survey}/datasources/{datasource}/data List datasource data #
PUT /surveys/{survey}/datasources/{datasource}/data Replace datasource data #
DELETE /surveys/{survey}/datasources/{datasource}/data Truncate datasource data #

Documentation

Specifications

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/forsta-datasources-data-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

forsta-datasources-data-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Decipher Rest Datasources Data API
  version: '1.0'
  description: The Decipher REST API allows comprehensive automation of your private or shared Decipher instance.
servers:
- url: https://{server}/api/v1
  description: Replace server with your instance domain.
  variables:
    server:
      default: selfserve.decipherinc.com
      description: Server domain
security:
- APIKey: []
tags:
- name: Datasources Data
  description: 'Append, replace or delete data for a datasource. The data argument

    can be either an array of objects (JSON), a tab delimited file encoded

    as a single string (utf8 only) or an Excel 2007 file encoded as base-64.'
paths:
  /surveys/{survey}/datasources/{datasource}/data:
    post:
      operationId: createSurveyDatasourceData
      summary: Append datasource data
      description: Append data to this datasource's data files. This merges the rows and columns. For any record, if the key for the datasource already exists in the current data file the columns of that record are updated with the new record. Columns with data in existing file and new uploaded data are replaced. Any records not matching existing data are appended to the file.
      tags:
      - Datasources Data
      parameters:
      - $ref: '#/components/parameters/survey'
      - $ref: '#/components/parameters/datasource'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  description: Either an array of objects, a single tab-delimited string or a base64-encoded Excel 2007 file
                  oneOf:
                  - type: array
                    items:
                      type: object
                  - type: string
                    format: tab delimited
                  - type: string
                    format: base64-encoded Excel 2007 file
                skipRemerge:
                  type: boolean
                  description: If true, the live remerge process is skipped. Please note, that skipping the remerge process will mean that existing participants might not match the new data or updated data will not be updated with the new data.
                  default: false
              required:
              - data
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
      x-codeSamples:
      - lang: Curl
        source: 'curl -H x-apikey: {api_key} -X GET {server}/api/v1/surveys/{survey}/datasources/datasource/data

          '
      - lang: Cli
        source: 'beacon get surveys/{survey}/datasources/datasource/data > myfile.json

          '
    get:
      operationId: getSurveyDatasourceData
      summary: List datasource data
      description: List all the existing data, as an array of objects.
      tags:
      - Datasources Data
      parameters:
      - $ref: '#/components/parameters/survey'
      - $ref: '#/components/parameters/datasource'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
      x-codeSamples:
      - lang: Curl
        source: 'curl -H x-apikey: {api_key} -X GET {server}/api/v1/surveys/{survey}/datasources/datasource/data

          '
      - lang: Cli
        source: 'beacon get surveys/{survey}/datasources/datasource/data > myfile.json

          '
    put:
      operationId: updateSurveyDatasourceData
      summary: Replace datasource data
      description: Truncates the existing data file then replaces with the provided data.
      tags:
      - Datasources Data
      parameters:
      - $ref: '#/components/parameters/survey'
      - $ref: '#/components/parameters/datasource'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  description: either an array of objects, a single tab-delimited string or a base64-encoded Excel 2007 file
                  oneOf:
                  - type: array
                    items:
                      type: object
                  - type: string
                    format: tab delimited
                  - type: string
                    format: base64-encoded Excel 2007 file
              required:
              - data
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
      x-codeSamples:
      - lang: Curl
        source: 'curl -H x-apikey: {api_key} -X GET {server}/api/v1/surveys/{survey}/datasources/datasource/data

          '
      - lang: Cli
        source: 'beacon get surveys/{survey}/datasources/datasource/data > myfile.json

          '
    delete:
      operationId: deleteSurveyDatasourceData
      summary: Truncate datasource data
      description: Remove all existing data. The datasource definition itself is retained.
      tags:
      - Datasources Data
      parameters:
      - $ref: '#/components/parameters/survey'
      - $ref: '#/components/parameters/datasource'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
      x-codeSamples:
      - lang: Curl
        source: 'curl -H x-apikey: {api_key} -X GET {server}/api/v1/surveys/{survey}/datasources/datasource/data

          '
      - lang: Cli
        source: 'beacon get surveys/{survey}/datasources/datasource/data > myfile.json

          '
components:
  parameters:
    survey:
      name: survey
      in: path
      required: true
      description: The survey path.
      example: selfserve/1a/123456
      schema:
        type: string
        format: uri
    datasource:
      name: datasource
      in: path
      required: true
      description: Datasource label, must be composed of a-zA-Z_ characters only
      schema:
        type: string
  securitySchemes:
    APIKey:
      type: apiKey
      in: header
      name: x-apikey
      description: 'In order to access the api, you''ll need to generate an API key. Refer to the

        instructions [here](/docs/decipher/api#section/API-Keys) to generate and

        configure an API key with the appropriate permission sets. You can generate

        as many keys as required.


        Configure each request to include your API key in the request header. For example:


        ```

        x-apikey: dp48ss3mgsaucyjtybxw728h7s4cgnwzhejtszdwhf4xpe8yhmtdwpk2ntdhtwbs

        ```

        '
x-tagGroups:
- name: Autoclose
  tags:
  - Autoclose
- name: Data Input and Output
  tags:
  - Data
  - Data Feed
  - Response Summary
  - Modifying Data
  - Datasources
  - Datasources Data
  - Umerge
- name: Survey Metadata
  tags:
  - Simulated Data
  - Survey State
  - Survey Evaluate
  - Survey Quotas
  - Survey Files
  - Survey Warnings
  - Survey Terms
  - Survey Subscribers
  - Survey Users
  - Survey Tasks
- name: Panels
  tags:
  - Panel Data
  - Panel Datapoints
  - Survey Panels
- name: Research Hub
  tags:
  - Users
  - Companies
  - Categories
  - Surveys
  - Panels
  - Crosstabs
  - Archives
  - Archival Reports
  - API Keys
  - Usage
  - Warnings Summary
- name: Crosstabs
  tags:
  - Crosstabs Configuration
  - Crosstabs Execution
  - Crosstabs Nets
  - Saved Crosstabs
  - Crosstabs Table Settings
  - Crosstabs Validation
  - Crosstabs Rim Weighting
- name: Dashboards
  tags:
  - Dashboards
- name: DQ APIs
  tags:
  - DQ-Specific API Calls
  - MaxDiff API Calls
  - Discrete Choice Model API Calls
  - Media Testimonial API Calls
- name: Response Summary
  tags:
  - Share Link
- name: Sample Management
  tags:
  - Bounced Emails
  - Participant Sources
- name: Distribution
  tags:
  - Email Distribution
  - SFTP Distribution
  - Slack Distribution
- name: Campaign Manager
  tags:
  - Campaigns
  - Campaign Email Invites
  - Campaign Exports
  - Campaign Lists
  - Shared Campaign Lists
  - Campaign Sends
  - Campaign Status Lists
  - Supression Lists
- name: Question Library
  tags:
  - Company Element
  - Company Elements
  - Survey Elements
  - Survey Element Report Settings
- name: Language Manager
  tags:
  - LM Application Data
  - LM Application Translations
  - Translation Resources
  - Translations
  - Translation Deltas
  - Translation Reservations
  - Primary Survey Language
  - Other Survey Languages
  - Unused Survey Languages
- name: Project Parameters
  tags:
  - Available Project Parameters
  - Saved Project Parameters
  - Project Parameters Configuration
- name: Multi-User Editing
  tags:
  - Available Sections
  - Check Out Section
  - Check In Section
  - Sync Section
  - Section Editor
  - Abandon Section
  - Validate Section
- name: Video Management
  tags:
  - Videos
  - Watermarked Videos
- name: Miscellaneous
  tags:
  - System Information
  - Logic Nodes
  - Logic Events
  - CATI
  - Global Search
  - Miscellaneous