openapi: 3.1.0 info: title: Demandbase Account List Account Lists Import Jobs 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: Import Jobs description: Create and manage data import jobs paths: /import/v1/jobs: get: operationId: listImportJobs summary: Demandbase List import jobs description: Retrieve a list of data import jobs with their current status. tags: - Import Jobs parameters: - name: status in: query required: false description: Filter by job status schema: type: string enum: - pending - validating - processing - completed - failed - cancelled - name: limit in: query required: false schema: type: integer default: 25 - name: offset in: query required: false schema: type: integer default: 0 responses: '200': description: List of import jobs content: application/json: schema: type: object properties: jobs: type: array items: $ref: '#/components/schemas/ImportJob' total: type: integer '401': description: Unauthorized post: operationId: createImportJob summary: Demandbase Create an import job description: Create a new asynchronous data import job. Specify the entity type, operation mode (insert, update, or upsert), and field mappings. Upload the CSV data file after creating the job. tags: - Import Jobs requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateImportJobRequest' responses: '202': description: Import job created content: application/json: schema: $ref: '#/components/schemas/ImportJob' '400': description: Invalid request '401': description: Unauthorized /import/v1/jobs/{jobId}: get: operationId: getImportJob summary: Demandbase Get import job status description: Retrieve the current status and details of a specific import job, including processing progress and error summary. tags: - Import Jobs parameters: - $ref: '#/components/parameters/jobId' responses: '200': description: Import job details content: application/json: schema: $ref: '#/components/schemas/ImportJob' '401': description: Unauthorized '404': description: Import job not found delete: operationId: cancelImportJob summary: Demandbase Cancel an import job description: Cancel a pending or validating import job. tags: - Import Jobs parameters: - $ref: '#/components/parameters/jobId' responses: '200': description: Import job cancelled '401': description: Unauthorized '404': description: Import job not found '409': description: Job cannot be cancelled /import/v1/jobs/{jobId}/errors: get: operationId: getImportErrors summary: Demandbase Get import errors description: Retrieve detailed error information for rows that failed during import. tags: - Import Jobs parameters: - $ref: '#/components/parameters/jobId' - name: limit in: query required: false schema: type: integer default: 100 - name: offset in: query required: false schema: type: integer default: 0 responses: '200': description: Import errors content: application/json: schema: type: object properties: errors: type: array items: $ref: '#/components/schemas/ImportError' total: type: integer '401': description: Unauthorized '404': description: Import job not found components: parameters: jobId: name: jobId in: path required: true description: Import job unique identifier schema: type: string schemas: ImportError: type: object properties: row_number: type: integer description: Row number in the CSV file field: type: string description: Field that caused the error value: type: string description: Value that caused the error error_type: type: string description: Type of error message: type: string description: Error description CreateImportJobRequest: type: object required: - entity_type - operation properties: entity_type: type: string enum: - accounts - people - opportunities - activities description: Type of entity to import operation: type: string enum: - insert - update - upsert description: Import operation mode. Insert creates new records, update modifies existing records, upsert creates or updates based on match key. match_key: type: string description: Field used to match existing records for update/upsert operations (e.g., domain, email, account_id) field_mappings: type: array items: type: object properties: csv_column: type: string description: Column name in the CSV file demandbase_field: type: string description: Target Demandbase field name description: Map CSV columns to Demandbase fields ImportJob: type: object properties: id: type: string description: Import job unique identifier entity_type: type: string enum: - accounts - people - opportunities - activities description: Type of entity being imported operation: type: string enum: - insert - update - upsert description: Import operation mode status: type: string enum: - pending - validating - processing - completed - failed - cancelled description: Current job status total_rows: type: integer description: Total number of rows in the import file processed_rows: type: integer description: Number of rows processed so far success_count: type: integer description: Number of rows successfully imported error_count: type: integer description: Number of rows that failed file_name: type: string description: Name of the uploaded file file_size_bytes: type: integer description: Size of the uploaded file created_at: type: string format: date-time description: Job creation timestamp started_at: type: string format: date-time description: Processing start timestamp completed_at: type: string format: date-time description: Processing completion timestamp error_message: type: string description: Error details if the job failed 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