openapi: 3.2.0
info:
version: '1.0'
title: Data Export Get Fields API
description: "Export data in bulk from the Demandbase platform.
Authenticate using a bearer token. Pass a header like: `Authorization: Bearer v334asfsdfo3241ERqwefe`
The part after 'Bearer' is your API token. \nFor instructions on generating API tokens, see the [Generate and Manage API Key Set](https://support.demandbase.com/hc/en-us/articles/38999526296603-Generate-and-Manage-API-Key-Set) article at the Demandbase Help Center"
servers:
- url: https://uapi.demandbase.com/data/export
security:
- token: []
tags:
- name: Get Fields
paths:
/v1/fields:
get:
tags:
- Get Fields
summary: Export fields
description: 'The Fields endpoint returns a list of all fields available for specific data export jobs.
For `campaign` and `creative` export jobs, the query parameter `adReportType` is required.
'
operationId: fetchFields
parameters:
- name: entityType
in: query
description: Specifies the entity for which to retrieve available export fields.
required: true
schema:
type: string
enum:
- account
- campaign
- creative
- opportunity
- person
- activity
- accountBuyingGroup
- personBuyingGroupMember
- name: adReportType
in: query
description: Specifies the adReportType for which to retrieve available export fields.
schema:
type: string
responses:
'200':
description: An array of fields.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Field'
'400':
$ref: '#/components/responses/400errorDescriptionsForFetchFields'
'401':
$ref: '#/components/responses/401errorDescriptionsForAllApi'
'403':
$ref: '#/components/responses/403errorDescriptionsForAllApi'
'429':
$ref: '#/components/responses/429errorDescriptionsForAllApi'
'500':
$ref: '#/components/responses/500errorDescriptionsForAllApi'
security:
- token: []
components:
responses:
429errorDescriptionsForAllApi:
description: An endpoint request limit, concurrent-job limit, or export quota was exceeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorDto'
example:
errorCode: 429-100
errorMessage: Rate limit exceeded.
diagnosticCode: ce0fc1770e0d425b88892df4f663bf07
500errorDescriptionsForAllApi:
description: An unexpected internal service error occurred.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorDto'
example:
errorCode: 500-100
errorMessage: Error while communicating with internal service.
diagnosticCode: de0fc1770e0d425b88892df4f663bf07
401errorDescriptionsForAllApi:
description: Authentication credentials are missing or invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorDto'
example:
errorCode: 401-100
errorMessage: Authentication credentials are missing or invalid.
diagnosticCode: 1e0fc1770e0d425b88892df4f663bf07
400errorDescriptionsForFetchFields:
description: Invalid entityType.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorDto'
403errorDescriptionsForAllApi:
description: The authenticated user does not have permission to access this resource.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorDto'
example:
errorCode: 403-100
errorMessage: The authenticated user does not have permission to access this resource.
diagnosticCode: 3e0fc1770e0d425b88892df4f663bf07
schemas:
ErrorDto:
type: object
properties:
errorCode:
type: string
diagnosticCode:
type: string
errorMessage:
type: string
Field:
type: object
properties:
name:
type: string
dataType:
type: string
label:
type: string
description:
type: string
securitySchemes:
token:
type: http
scheme: bearer