openapi: 3.1.0 info: title: Demandbase Account List Account Lists Campaigns API description: Create, manage, and sync target account lists for ABM campaigns and personalization efforts. Build dynamic and static account lists, add or remove accounts, and sync lists with CRM systems. version: '1.0' contact: name: Demandbase Support url: https://support.demandbase.com/ termsOfService: https://www.demandbase.com/terms-of-service/ servers: - url: https://api.demandbase.com/accounts description: Demandbase Account List API Production security: - bearerAuth: [] tags: - name: Campaigns description: Manage advertising campaigns paths: /campaigns: get: operationId: listCampaigns summary: Demandbase List campaigns description: Retrieve a list of advertising campaigns with optional filtering by status, date range, and other parameters. tags: - Campaigns parameters: - name: status in: query required: false description: Filter by campaign status schema: type: string enum: - active - paused - completed - draft - name: limit in: query required: false description: Maximum number of results schema: type: integer default: 25 maximum: 100 - name: offset in: query required: false description: Pagination offset schema: type: integer default: 0 responses: '200': description: List of campaigns content: application/json: schema: type: object properties: campaigns: type: array items: $ref: '#/components/schemas/Campaign' total: type: integer '401': description: Unauthorized post: operationId: createCampaign summary: Demandbase Create a campaign description: Create a new advertising campaign with targeting and budget settings. tags: - Campaigns requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateCampaignRequest' responses: '201': description: Campaign created successfully content: application/json: schema: $ref: '#/components/schemas/Campaign' '400': description: Invalid request '401': description: Unauthorized /campaigns/{campaignId}: get: operationId: getCampaign summary: Demandbase Get a campaign description: Retrieve details of a specific advertising campaign. tags: - Campaigns parameters: - $ref: '#/components/parameters/campaignId' responses: '200': description: Campaign details content: application/json: schema: $ref: '#/components/schemas/Campaign' '401': description: Unauthorized '404': description: Campaign not found put: operationId: updateCampaign summary: Demandbase Update a campaign description: Update an existing advertising campaign. tags: - Campaigns parameters: - $ref: '#/components/parameters/campaignId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateCampaignRequest' responses: '200': description: Campaign updated content: application/json: schema: $ref: '#/components/schemas/Campaign' '400': description: Invalid request '401': description: Unauthorized '404': description: Campaign not found delete: operationId: deleteCampaign summary: Demandbase Delete a campaign description: Delete an advertising campaign. tags: - Campaigns parameters: - $ref: '#/components/parameters/campaignId' responses: '204': description: Campaign deleted '401': description: Unauthorized '404': description: Campaign not found components: parameters: campaignId: name: campaignId in: path required: true description: Campaign unique identifier schema: type: string schemas: Campaign: type: object properties: id: type: string description: Campaign unique identifier name: type: string description: Campaign name status: type: string enum: - active - paused - completed - draft description: Campaign status budget: type: number description: Campaign budget in USD daily_budget: type: number description: Daily budget cap in USD start_date: type: string format: date description: Campaign start date end_date: type: string format: date description: Campaign end date audience_id: type: string description: Associated audience segment ID created_at: type: string format: date-time description: Campaign creation timestamp updated_at: type: string format: date-time description: Last update timestamp CreateCampaignRequest: type: object required: - name - budget - start_date properties: name: type: string description: Campaign name budget: type: number description: Campaign budget in USD daily_budget: type: number description: Daily budget cap in USD start_date: type: string format: date description: Campaign start date end_date: type: string format: date description: Campaign end date audience_id: type: string description: Target audience segment ID securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: OAuth 2.0 bearer token for API access externalDocs: description: Demandbase Account List API Documentation url: https://docs.demandbase.com/docs/account-list-api